extraer texto de pdf java

En esta publicación, aprenderá cómo extraer texto de archivos PDF sin problemas usando Java. La extracción de texto podría ser útil en varios escenarios, como el análisis de texto, la recuperación de información, el análisis de documentos, etc. Dado que PDF es uno de los documentos digitales más utilizados, los casos de uso de extracción de texto de documentos PDF son más numerosos. Entonces, comencemos y veamos cómo realizar la extracción de texto PDF desde aplicaciones Java.

API de Java para extraer texto de PDF - Descarga gratuita

Aspose.PDF for Java es una conocida API de manipulación de archivos PDF que proporciona una amplia gama de funciones para crear y procesar archivos PDF. La API contiene un poderoso extractor de texto que proporciona varias formas de extraer texto de documentos PDF dentro de unas pocas líneas de código. Puede descargar el JAR de la API o instalarlo dentro de sus aplicaciones basadas en Maven usando las siguientes configuraciones.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.11</version>
</dependency>

Extraer texto de PDF usando Java

Los siguientes son los pasos para extraer texto de un documento PDF utilizando Aspose.PDF for Java.

El siguiente ejemplo de código muestra cómo extraer texto de PDF usando Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// Abrir documento
Document pdfDocument = new Document("input.pdf");

// Crear objeto TextAbsorber para extraer texto
TextAbsorber textAbsorber = new TextAbsorber();

// Aceptar el absorbedor para todas las páginas.
pdfDocument.getPages().accept(textAbsorber);

// Obtener el texto extraído
String extractedText = textAbsorber.getText();

// Crea un escritor y abre el archivo.
java.io.FileWriter writer = new java.io.FileWriter(new java.io.File("Extracted_text.txt"));
writer.write(extractedText);

// Escriba una línea de texto en el archivo tw.WriteLine(extractedText);
// Cierra la corriente
writer.close();

Extraer texto de una página específica en PDF

También puede extraer texto de una página específica del documento PDF siguiendo los siguientes pasos.

El siguiente ejemplo de código muestra cómo extraer texto de una página específica en PDF usando Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// documento abierto
Document pdfDocument = new Document("input.pdf");
// crear dispositivo de texto
TextDevice textDevice = new TextDevice();

// establecer opciones de extracción de texto - establecer el modo de extracción de texto (Raw o Pure)
TextExtractionOptions textExtOptions = new TextExtractionOptions(TextExtractionOptions.TextFormattingMode.Raw);

textDevice.setExtractionOptions(textExtOptions);

// obtenga el texto de la primera página del PDF y guárdelo en formato de archivo
textDevice.process(pdfDocument.getPages().get_Item(1), "ExtractedText.txt");

Extraer texto de una región de página en PDF

También puede extraer texto de una región particular de la página en PDF. Para esto, puede definir un rectángulo para cubrir la región de donde necesita extraer el texto. Los siguientes son los pasos para extraer texto de una región de página.

El siguiente ejemplo de código muestra cómo extraer texto de una región de página particular en Java.

// Para obtener ejemplos completos y archivos de datos, vaya a https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// documento abierto
Document doc = new Document("page_0001.pdf");

// crear objeto TextAbsorber para extraer texto
TextAbsorber absorber = new TextAbsorber();
absorber.getTextSearchOptions().setLimitToPageBounds(true);
absorber.getTextSearchOptions().setRectangle(new Rectangle(100, 200, 250, 350));
// aceptar el absorbedor para la primera página
doc.getPages().get_Item(1).accept(absorber);

// obtener el texto extraído
String extractedText = absorber.getText();
// crear un escritor y abrir el archivo
BufferedWriter writer = new BufferedWriter(new FileWriter(new java.io.File("ExtractedText.txt")));
// escribir contenidos extraídos
writer.write(extractedText);
// Cerrar escritor
writer.close();

Conclusión

En este artículo, aprendió cómo extraer texto de PDF usando Java. Ha visto varias formas de extracción de texto, como extraer texto de un PDF completo, una página específica o una región de página específica. Puede obtener más información sobre la API PDF de Java utilizando documentación.

Ver también

Información: Aspose desarrolló recientemente un servicio gratuito en línea Text to GIF que le permite animar textos o generar GIF a partir de textos simples.