PDFBox - czytanie tekstu
W poprzednim rozdziale widzieliśmy, jak dodać tekst do istniejącego dokumentu PDF. W tym rozdziale omówimy, jak czytać tekst z istniejącego dokumentu PDF.
Wyodrębnianie tekstu z istniejącego dokumentu PDF
Wyodrębnianie tekstu jest jedną z głównych funkcji biblioteki skrzynek PDF. Możesz wyodrębnić tekst za pomocągetText() metoda PDFTextStripperklasa. Ta klasa wyodrębnia cały tekst z danego dokumentu PDF.
Poniżej przedstawiono kroki, aby wyodrębnić tekst z istniejącego dokumentu PDF.
Krok 1: Ładowanie istniejącego dokumentu PDF
Załaduj istniejący dokument PDF metodą statyczną load() z PDDocumentklasa. Ta metoda akceptuje obiekt pliku jako parametr, ponieważ jest to metoda statyczna, którą można wywołać za pomocą nazwy klasy, jak pokazano poniżej.
File file = new File("path of the document")
PDDocument document = PDDocument.load(file);
Krok 2: Utwórz wystąpienie klasy PDFTextStripper
Plik PDFTextStripper zapewnia metody pobierania tekstu z dokumentu PDF, dlatego należy utworzyć wystąpienie tej klasy, jak pokazano poniżej.
PDFTextStripper pdfStripper = new PDFTextStripper();
Krok 3: Pobieranie tekstu
Możesz przeczytać / pobrać zawartość strony z dokumentu PDF za pomocą rozszerzenia getText() metoda PDFTextStripperklasa. W tej metodzie musisz przekazać obiekt dokumentu jako parametr. Ta metoda pobiera tekst z danego dokumentu i zwraca go w postaci obiektu String.
String text = pdfStripper.getText(document);
Krok 4: Zamknięcie dokumentu
Na koniec zamknij dokument przy użyciu rozszerzenia close() metoda klasy PDDocument, jak pokazano poniżej.
document.close();
Przykład
Załóżmy, że mamy dokument PDF z pewnym tekstem, jak pokazano poniżej.
Ten przykład pokazuje, jak czytać tekst z wyżej wymienionego dokumentu PDF. Tutaj utworzymy program Java i załadujemy dokument PDF o nazwienew.pdf, który jest zapisywany w ścieżce C:/PdfBox_Examples/. Zapisz ten kod w pliku o nazwieReadingText.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();
}
}
Skompiluj i uruchom zapisany plik Java z wiersza poleceń, używając następujących poleceń.
javac ReadingText.java
java ReadingText
Po uruchomieniu powyższy program pobiera tekst z podanego dokumentu PDF i wyświetla go jak pokazano poniżej.
This is an example of adding text to a page in the pdf document. we can add as many lines
as we want like this using the ShowText() method of the ContentStream class.