Учебники

PDFBox — чтение текста

В предыдущей главе мы видели, как добавить текст в существующий документ PDF. В этой главе мы обсудим, как читать текст из существующего документа PDF.

Извлечение текста из существующего документа PDF

Извлечение текста — одна из основных функций библиотеки PDF-боксов. Вы можете извлечь текст, используя метод getText () класса PDFTextStripper . Этот класс извлекает весь текст из данного документа PDF.

Ниже приведены шаги для извлечения текста из существующего документа PDF.

Шаг 1. Загрузка существующего PDF-документа

Загрузите существующий документ PDF, используя статический метод load () класса PDDocument . Этот метод принимает объект файла в качестве параметра, поскольку это статический метод, который можно вызвать, используя имя класса, как показано ниже.

File file = new File("path of the document") 
PDDocument document = PDDocument.load(file);

Шаг 2. Создание экземпляра класса PDFTextStripper

Класс PDFTextStripper предоставляет методы для извлечения текста из документа PDF, поэтому создайте экземпляр этого класса, как показано ниже.

PDFTextStripper pdfStripper = new PDFTextStripper();

Шаг 3: Получение текста

Вы можете прочитать / получить содержимое страницы из документа PDF, используя метод getText () класса PDFTextStripper . Для этого метода вам нужно передать объект документа в качестве параметра. Этот метод извлекает текст в заданном документе и возвращает его в форме объекта String.

String text = pdfStripper.getText(document);

Шаг 4: Закрытие документа

Наконец, закройте документ с помощью метода close () класса PDDocument, как показано ниже.

document.close();

пример

Предположим, у нас есть документ PDF с текстом, как показано ниже.

Пример PDF

Этот пример демонстрирует, как читать текст из вышеупомянутого документа PDF. Здесь мы создадим программу на Java и загрузим PDF-документ с именем new.pdf , который сохраняется по пути C: / PdfBox_Examples / . Сохраните этот код в файле с именем ReadingText.java .

import java.io.File;
import java.io.IOException;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;
public class ReadingText {

   public static void main(String args[]) throws IOException {

      //Loading an existing document
      File file = new File("C:/PdfBox_Examples/new.pdf");
      PDDocument document = PDDocument.load(file);

      //Instantiate PDFTextStripper class
      PDFTextStripper pdfStripper = new PDFTextStripper();

      //Retrieving text from PDF document
      String text = pdfStripper.getText(document);
      System.out.println(text);

      //Closing the document
      document.close();

   }
}

Скомпилируйте и выполните сохраненный файл Java из командной строки, используя следующие команды.

javac ReadingText.java 
java ReadingText

После выполнения вышеуказанная программа извлекает текст из данного документа PDF и отображает его, как показано ниже.