USO DE IRONWORD

Cómo extraer texto de Word en C#

Publicado en 23 de octubre, 2024
Compartir:

Introducción

Normalmente, la tarea principal en aplicaciones de procesamiento de documentos, extracción de datos o análisis de texto es la extracción de texto de archivos de documentos de Word. Al desarrollar una aplicación en C#, los desarrolladores utilizan bibliotecas como IronWord, que ayudan a trabajar con archivos en formato .docx y a acceder al texto dentro de la instancia del documento. El uso de estas bibliotecas ayuda a automatizar la forma en que se recupera el contenido de la base de datosDocumentos de Word de informes, minería de datos o incluso un sistema de gestión de documentos.

Con una biblioteca como IronWord se puede extraer texto de cualquier instancia de un documento de Word; basta con cargar el objeto de documento, abrir párrafos o secciones y, a continuación, recuperar el texto deseado, pero manteniendo su diseño original. Esta funcionalidad será de gran utilidad en los ámbitos jurídico, sanitario y financiero, donde el procesamiento de documentos suele formar parte de los flujos de trabajo. No cabe duda de que C# se utiliza para desarrollar aplicaciones extremadamente escalables y eficientes que extraen texto de archivos de Word. Los desarrolladores pueden combinarlo con sistemas o aplicaciones más amplios.

Cómo extraer texto de Word en C#

  1. Instale la biblioteca IronWord a través de NuGet en su proyecto de C#.

  2. Añada utilizando IronWord, en la parte superior de su archivo C# para extraer texto de Word.

  3. Establezca su clave de licencia.

  4. Cargue el documento de Word existente.

  5. Acceda a los párrafos mediante el método de párrafo.

  6. Recorrer párrafos y elementos de texto mediante bucles foreach.

  7. Extraer y mostrar texto con Console.

¿Qué es IronWord?

IronWord es un potente recuperador de texto y garantiza que todo tipo de archivos, como PDF, Word, txt, etc., se recuperen fácilmente. Está diseñada con precisión y rapidez para una rápida extracción en el texto necesario, estructurado o no, conservando el resto del formato original del documento. IronWord también se utiliza para proporcionar análisis de documentos, extracción de datos e indexación automática de contenidos.

Cómo extraer texto de Word en C#: Figura 1 - IronWord

Es compatible con casi todos los tipos de archivo disponibles para garantizar una integración fluida con las aplicaciones, por lo que resulta ideal para la automatización empresarial y el procesamiento de grandes volúmenes de documentos. La escalabilidad de las bibliotecas diseñadas de este modo permitirá manejar fácilmente volúmenes de documentos, lo que resulta ser un activo muy importante, especialmente en el caso de las empresas que trabajan con la extracción de datos en masa.

IronWord también es totalmente compatible con C# y otros lenguajes de programación, por lo que satisface las necesidades de la mayoría de desarrolladores y organizaciones que buscan la forma más sencilla de agilizar sus flujos de trabajo documentales.

Características de IronWord

Compatibilidad con varios formatos de documento

IronWord acepta archivos en una amplia gama de formatos de documento. Entre ellas figuran:

  • PDF: Puede interpretar texto tanto en PDFs con texto ordinario, PDFs con fuentes incrustadas y aquellos basados en vectores.
  • Archivos de Microsoft Word(DOCX): Lee texto de Word con facilidad manteniendo intactas la estructura y el formato del documento.
  • Archivos de texto(Archivo TXT): Además de todos los formatos anteriores, IronWord es capaz incluso de procesar archivos de texto sin formato y extraer y procesar texto a partir de texto simple sin formato.

Extracción de texto preciso

El motor de extracción de IronWord es capaz de extraer el contenido de texto con total seguridad, independientemente de si se trata de documentos complejos con diseños de página igualmente sofisticados, fuentes incrustadas o una mezcla de contenidos como imágenes, tablas, etc. La biblioteca conserva:

  • Formato del texto: Negrita, cursiva, subrayado y cualquier otro aspecto estilístico aplicado al texto.
  • Jerarquía del documento: Encabezados, párrafos y listas para poner las cosas en perspectiva y facilitar la lectura.

Manejo de datos estructurados y no estructurados

IronWord domina el manejo de datos estructurados y no estructurados. Se extraerá:

  • Datos estructurados: Los documentos que contienen patrones predecibles en el formato, como los formularios y contratos.
  • Datos no estructurados: En caso de maquetación impredecible de textos, informes o artículos.

    Ha demostrado ser una de las herramientas más útiles en tareas de minería de datos, recuperación de información y clasificación, ya que puede procesar una gran variedad de contenidos.

Escalabilidad para grandes volúmenes

IronWord está diseñado para procesar volúmenes de documentos sin esfuerzo y con una gran escalabilidad para aplicaciones empresariales. Esto significa que, por ejemplo, se trabajará con un enorme número de documentos de forma eficiente en los siguientes flujos:

  • Procesamiento de documentos: Se trata de procesar muchos documentos a la vez.
  • Archivos pesados: No decae cuando el tamaño de los documentos es enorme.

Integración perfecta con lenguajes de programación

IronWord puede integrarse perfectamente en entornos de desarrollo, especialmente Python, a través de API sencillas que los desarrolladores pueden añadir a sus flujos de trabajo sin problemas. Permite:

  • Importación de IronWord en aplicaciones Python: Los desarrolladores pueden utilizar las funciones dentro de scripts Python directamente, para ejecuciones sin hipo.
  • Interoperabilidad entre lenguajes: Además de ser impresionante para el uso de Python, IronWord es igual de impresionante para otros lenguajes, y por lo tanto es un gran cambio entre lenguajes a través de diferentes pilas de tecnología.

    Esta facilidad de integración reduce el tiempo y el esfuerzo dedicados a las actividades de desarrollo para centrarse más en la funcionalidad que en la infraestructura.

Alto rendimiento y velocidad

En IronWord se ha ajustado el rendimiento y se ha mejorado la velocidad de extracción de texto de documentos de gran tamaño. Esto puede ser muy importante en varias aplicaciones en tiempo real que requieren una ejecución rápida para leer el texto. La biblioteca puede:

  • Maneja multithreading: Esto mejora los procesos de extracción, que son operaciones que se ejecutan concurrentemente.
  • Pequeña huella de memoria: Esto garantiza un uso óptimo de los recursos del sistema en el momento del procesamiento, de modo que pueda ampliarse para conjuntos de datos muy grandes.

Soporte OCR opcional

El documento contiene imágenes. IronWord puede utilizarse junto con tecnologías OCR para poner a disposición del lector lo siguiente:

  • Documentos escaneados: Extraer texto de imágenes, PDF escaneados o cualquier otro formato que incluya imágenes.
  • Soporte multilingüe: Ser capaz de reconocer e imprimir texto en los idiomas OCR soportados.

Conservación de metadatos

El texto no es lo único que IronWord extrae. Además, conserva los metadatos del documento, como:

  • Versiones de documentos y cualquier otra información útil para el cumplimiento de normativas o con fines de archivo.
  • Esto es muy útil en un sistema de gestión de documentos cuyos metadatos son tan importantes como el contenido.

Creación de un nuevo proyecto en Visual Studio

Para iniciar la aplicación Visual Studio, seleccione Archivo en el menú Archivo. Una vez que haya elegido "Nuevo proyecto", seleccione "Aplicación de consola"

Cómo extraer texto de Word en C#: Figura 2 - Aplicación de consola

Ahora introduce el nombre del proyecto .NET en el campo de texto dado después de seleccionar el lugar para y guarda el archivo. A continuación, como puede ver en el siguiente ejemplo, haga clic en el botón Crear y seleccione el .NET Framework necesario.

Cómo extraer texto de Word en C#: Figura 3 - Configuración del proyecto

La estructura del proyecto de Visual Studio variará en función de la aplicación seleccionada. Para implementar o ejecutar la aplicación e introducir el código, visita el archivo Program.cs. Puede utilizar la aplicación de consola, Windows o en línea.

Cómo extraer texto de Word en C#: Figura 4 - Marco de trabajo de destino

A continuación, se puede probar el código y añadir la biblioteca.

Instalar la biblioteca IronWord

Utilización de la herramienta Visual Studio En el menú Herramientas, seleccione Gestor de paquetes NuGet. Para ver la consola del terminal de gestión de paquetes, navegue hasta la interfaz del Gestor de paquetes.

Install-Package Ironword
Install-Package Ironword
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package Ironword
VB   C#

Una vez descargado e instalado, el paquete puede utilizarse para extraer texto en el proyecto en curso.

Cómo extraer texto de Word en C#: Figura 5 - Instalar IronWord

Otra táctica consiste en utilizar el método del gestor de paquetes. La instalación directa en la solución es posible con la opción NuGet Package Manager de Visual Studio. El siguiente gráfico ilustra cómo acceder al gestor de paquetes.

Cómo extraer texto de Word en C#: Figura 6 - Gestor de paquetes NuGet

Para localizar paquetes, utilice el campo de búsqueda del sitio web de NuGet. Todo lo que tiene que hacer es buscar "IronWord" utilizando el gestor de paquetes, como ilustra la siguiente captura de pantalla.

Cómo extraer texto de Word en C#: Figura 7 - Buscar en IronWord

El gráfico adjunto muestra una lista de resultados de búsqueda relacionados. Por favor, realice estos ajustes para que el software pueda instalarse en su ordenador.

Extraer texto de un documento de Word

Para extraer texto de un documento con IronWord, siga estos pasos. El siguiente ejemplo de código se utiliza para describir cómo extraer el texto de un documento de Word(.docx) utilizando la biblioteca IronWord en C#.

using IronWord;
IronWord.License.LicenseKey = "Licence key here";
var docx1 = new WordDocument("D:\\C# Projects\\ConsoleApp\\ConsoleApp\\File\\existing.docx");
var paragrapbobj = docx1.Paragraphs;
for (int i = 0; i < paragrapbobj.Count; i++)
{
    for(int j=0;j< paragrapbobj[i].Texts.Count; j++)
    {
   Console.WriteLine(paragrapbobj[i].Texts[j].Text.ToString());
    }
}
Console.ReadKey();
using IronWord;
IronWord.License.LicenseKey = "Licence key here";
var docx1 = new WordDocument("D:\\C# Projects\\ConsoleApp\\ConsoleApp\\File\\existing.docx");
var paragrapbobj = docx1.Paragraphs;
for (int i = 0; i < paragrapbobj.Count; i++)
{
    for(int j=0;j< paragrapbobj[i].Texts.Count; j++)
    {
   Console.WriteLine(paragrapbobj[i].Texts[j].Text.ToString());
    }
}
Console.ReadKey();
Imports IronWord
IronWord.License.LicenseKey = "Licence key here"
Dim docx1 = New WordDocument("D:\C# Projects\ConsoleApp\ConsoleApp\File\existing.docx")
Dim paragrapbobj = docx1.Paragraphs
For i As Integer = 0 To paragrapbobj.Count - 1
	Dim j As Integer=0
	Do While j< paragrapbobj(i).Texts.Count
   Console.WriteLine(paragrapbobj(i).Texts(j).Text.ToString())
		j += 1
	Loop
Next i
Console.ReadKey()
VB   C#

Inicializa la clave de licencia para IronWord, en este ejemplo estableciéndola como una cadena vacía o posiblemente una versión de prueba. Abre un documento ubicado en esa ruta que ya existe en formato .docx instanciando un objeto de documento Word. Una vez cargado el nuevo documento, el código accede a todos los párrafos contenidos en el archivo mediante la propiedad DOCX o doc.Paragraphs.

Cómo extraer texto de Word en C#: Figura 8 - Ejemplo de documento Word

Utiliza un bucle anidado para el proceso iterativo de estaspárrafos y sus elementos de texto. El bucle externo recorre todos los párrafos y, a continuación, el bucle interno desciende hasta los elementos de texto contenidos en uno de los párrafos. Agarra cada trozo de texto dividiéndolo en trozos más pequeños si el formato difiere y lo convierte en una cadena. A continuación, imprime el texto extraído en la consola.

Cómo extraer texto de Word en C#: Figura 9 - Salida de la consola

Por último, Console.ReadKey() se llama para suspender el programa hasta que se produzca la entrada del usuario mientras se cierra la ventana de la aplicación, permitiendo así que la salida se muestre en la pantalla antes de cerrar la ventana de la consola de la aplicación. Así es como se puede extraer e imprimir ordenadamente el contenido de un documento de Word.

Conclusión

IronWord es una herramienta de extracción de texto muy flexible y eficaz para su uso en prácticamente cualquier formato de documento, aunque muy apta para quienes utilizan documentos de Word. Su sencilla API, además de las capacidades de extracción de texto estructurado, la convierten en una solución fácil de usar para desarrolladores con la que definitivamente se puede contar cuando sea necesario recuperar automáticamente el contenido de los documentos. Por lo tanto, puede mantener el formato mientras trabaja con documentos bastante complejos, lo que lo hace muy útil para varias aplicaciones: procesamiento de documentos legales, gestión de contenidos a nivel empresarial, etc. Por lo tanto, con sólo implementar IronWord en su flujo de trabajo, facilitará considerablemente la mayoría de las tareas relacionadas con el análisis, la extracción y el procesamiento de documentos, y le ayudará a mejorar la productividad y la precisión en el manejo de volúmenes masivos de texto.

IronWord tiene un precio inicial de 599 dólares. Los usuarios también pueden pagar una cuota de suscripción única durante un año a cambio de asistencia técnica y actualizaciones de software. IronWord es de pago, lo que prohíbe su distribución gratuita. Consulte la licenciapágina de IronWord para obtener más información sobre precios. Para obtener más información sobre otros productos de Iron Software, visite la página webpágina de productos.

< ANTERIOR
Cómo añadir una marca de agua a un archivo de Word en C#
SIGUIENTE >
Cómo crear un documento Word a partir de una plantilla utilizando C#

¿Listo para empezar? Versión: 2024.12 acaba de salir

Descarga gratuita de NuGet Descargas totales: 7,878 Ver licencias >