extrair texto de pdf java

Neste post, você aprenderá como extrair texto de arquivos PDF perfeitamente usando Java. A extração de texto pode ser útil em vários cenários, como análise de texto, recuperação de informações, análise de documentos e assim por diante. Como o PDF é um dos documentos digitais mais usados, os casos de uso de extração de texto de documentos PDF são mais numerosos. Então, vamos começar e verificar como realizar a extração de texto PDF de dentro de aplicativos Java.

API Java para extrair texto de PDF - Download grátis

Aspose.PDF for Java é uma API de manipulação de arquivos PDF bem conhecida que fornece uma ampla gama de recursos para criar e processar arquivos PDF. A API contém um poderoso extrator de texto que fornece várias maneiras de extrair texto de documentos PDF em poucas linhas de código. Você pode baixar o JAR da API ou instalá-lo em seus aplicativos baseados em Maven usando as seguintes configurações.

<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>

Extrair texto de PDF usando Java

A seguir estão as etapas para extrair texto de um documento PDF usando Aspose.PDF para Java.

O exemplo de código a seguir mostra como extrair texto de PDF usando Java.

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// Abrir documento
Document pdfDocument = new Document("input.pdf");

// Criar objeto TextAbsorber para extrair texto
TextAbsorber textAbsorber = new TextAbsorber();

// Aceite o absorvedor para todas as páginas
pdfDocument.getPages().accept(textAbsorber);

// Obtenha o texto extraído
String extractedText = textAbsorber.getText();

// Crie um gravador e abra o arquivo
java.io.FileWriter writer = new java.io.FileWriter(new java.io.File("Extracted_text.txt"));
writer.write(extractedText);

// Escreva uma linha de texto no arquivo tw.WriteLine(extractedText);
// Fechar o fluxo
writer.close();

Extrair texto de página específica em PDF

Você também pode extrair texto de uma página específica do documento PDF usando as etapas a seguir.

O exemplo de código a seguir mostra como extrair texto de uma página específica em PDF usando Java.

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// documento aberto
Document pdfDocument = new Document("input.pdf");
// criar dispositivo de texto
TextDevice textDevice = new TextDevice();

// definir opções de extração de texto - defina o modo de extração de texto (Raw ou Pure)
TextExtractionOptions textExtOptions = new TextExtractionOptions(TextExtractionOptions.TextFormattingMode.Raw);

textDevice.setExtractionOptions(textExtOptions);

// obtenha o texto da primeira página do PDF e salve-o no formato de arquivo
textDevice.process(pdfDocument.getPages().get_Item(1), "ExtractedText.txt");

Extrair texto de uma região de página em PDF

Você também pode extrair texto de uma região específica da página em PDF. Para isso, você pode definir um retângulo para cobrir a região de onde precisa extrair o texto. A seguir estão as etapas para extrair texto de uma região de página.

O exemplo de código a seguir mostra como extrair texto de uma região de página específica em Java.

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf/Aspose.Pdf-for-Java
// documento aberto
Document doc = new Document("page_0001.pdf");

// criar objeto TextAbsorber para extrair texto
TextAbsorber absorber = new TextAbsorber();
absorber.getTextSearchOptions().setLimitToPageBounds(true);
absorber.getTextSearchOptions().setRectangle(new Rectangle(100, 200, 250, 350));
// aceite o absorvedor para a primeira página
doc.getPages().get_Item(1).accept(absorber);

// obter o texto extraído
String extractedText = absorber.getText();
// crie um escritor e abra o arquivo
BufferedWriter writer = new BufferedWriter(new FileWriter(new java.io.File("ExtractedText.txt")));
// escrever conteúdo extraído
writer.write(extractedText);
// Fechar escritor
writer.close();

Conclusão

Neste artigo, você aprendeu como extrair texto de PDF usando Java. Você viu várias maneiras de extração de texto, como extrair texto de um PDF inteiro, uma página específica ou uma região de página específica. Você pode aprender mais sobre a API Java PDF usando documentação.

Veja também

Informação: A Aspose desenvolveu recentemente um serviço online gratuito Text to GIF que permite animar textos ou gerar GIFs a partir de textos simples.