PDFBox - Text lesen
Im vorherigen Kapitel haben wir gesehen, wie Sie einem vorhandenen PDF-Dokument Text hinzufügen. In diesem Kapitel wird erläutert, wie Sie Text aus einem vorhandenen PDF-Dokument lesen.
Extrahieren von Text aus einem vorhandenen PDF-Dokument
Das Extrahieren von Text ist eine der Hauptfunktionen der PDF-Box-Bibliothek. Sie können Text mit der extrahierengetText() Methode der PDFTextStripperKlasse. Diese Klasse extrahiert den gesamten Text aus dem angegebenen PDF-Dokument.
Im Folgenden finden Sie die Schritte zum Extrahieren von Text aus einem vorhandenen PDF-Dokument.
Schritt 1: Laden eines vorhandenen PDF-Dokuments
Laden Sie ein vorhandenes PDF-Dokument mit der statischen Methode load() des PDDocumentKlasse. Diese Methode akzeptiert ein Dateiobjekt als Parameter, da dies eine statische Methode ist, die Sie unter Verwendung des Klassennamens wie unten gezeigt aufrufen können.
File file = new File("path of the document")
PDDocument document = PDDocument.load(file);
Schritt 2: Instanziieren Sie die PDFTextStripper-Klasse
Das PDFTextStripper class bietet Methoden zum Abrufen von Text aus einem PDF-Dokument. Instanziieren Sie diese Klasse daher wie unten gezeigt.
PDFTextStripper pdfStripper = new PDFTextStripper();
Schritt 3: Abrufen des Textes
Sie können den Inhalt einer Seite aus dem PDF-Dokument mit dem lesen / abrufen getText() Methode der PDFTextStripperKlasse. An diese Methode müssen Sie das Dokumentobjekt als Parameter übergeben. Diese Methode ruft den Text in einem bestimmten Dokument ab und gibt ihn in Form eines String-Objekts zurück.
String text = pdfStripper.getText(document);
Schritt 4: Schließen des Dokuments
Schließen Sie das Dokument abschließend mit close() Methode der PDDocument-Klasse wie unten gezeigt.
document.close();
Beispiel
Angenommen, wir haben ein PDF-Dokument mit Text, wie unten gezeigt.
Dieses Beispiel zeigt, wie Sie Text aus dem oben genannten PDF-Dokument lesen. Hier erstellen wir ein Java-Programm und laden ein PDF-Dokument mit dem Namennew.pdf, die im Pfad gespeichert ist C:/PdfBox_Examples/. Speichern Sie diesen Code in einer Datei mit NamenReadingText.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();
}
}
Kompilieren Sie die gespeicherte Java-Datei und führen Sie sie mit den folgenden Befehlen an der Eingabeaufforderung aus.
javac ReadingText.java
java ReadingText
Bei der Ausführung ruft das obige Programm den Text aus dem angegebenen PDF-Dokument ab und zeigt ihn wie unten gezeigt an.
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.