Text aus PDF extrahieren

Text aus PDF in Java extrahieren

Wir alle wissen, dass PDF-Dateien eines der wichtigsten und am weitesten verbreiteten digitalen Formate sind, um Dokumente unabhängig von Software, Hardware oder Betriebssystem zuverlässig zu präsentieren und auszutauschen. In einigen Szenarien könnten wir jedoch daran interessiert sein, einen Auszug aus großen PDF-Dateien zu erhalten. Oder wir müssen möglicherweise das PDF online als Text speichern. In diesem Artikel werden wir uns also mit den Details befassen, wie man einen PDF-zu-Text-Konverter mit der Java-REST-API entwickelt.

PDF-Generator-API

Nutzen Sie die Hebelwirkung, um PDF-Dokumente mithilfe von Vorlagen oder von Grund auf neu mit unserer REST-API zu generieren. Gleichzeitig ermöglicht Ihnen die API auch, die PDF-Dateien zu bearbeiten und in andere unterstützte Formate umzuwandeln. Sie können auch die Vorteile des Extrahierens von Text aus PDFs sowie des Entschlüsselns und Zusammenführens von PDF-Dateien mit Java Cloud SDK nutzen. Um nun das Aspose.PDF Cloud SDK for Java zu verwenden, müssen wir seine Referenz in unserer Java-Anwendung hinzufügen, indem wir die folgenden Details in pom.xml (Maven-Build-Typ-Projekt) einfügen.

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-cloud-pdf</artifactId>
        <version>21.11.0</version>
        <scope>compile</scope>
    </dependency>
</dependencies>

Nach der Installation müssen wir ein kostenloses Konto über Cloud Dashboard erstellen und personalisierte Client-Anmeldeinformationen erhalten.

Extrahieren Sie Text aus PDF mit Java

Sehen wir uns die Details zum Extrahieren von Text aus PDF mit dem Java Cloud SDK an. In diesem Beispiel verwenden wir die folgende Eingabe PdfWithTable.pdf Datei.

pdf zu text ocr

Bild 1:- Eingabedatei für die PDF-zu-Text-Extraktion.

pdf zu text ocr

Bild 2:- Extrahieren Sie Text aus der PDF-Vorschau

// Weitere Beispiele finden Sie unter https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-java/tree/master/Examples/src/main/java/com/aspose/asposecloudpdf/examples

try
    {
    // Holen Sie sich ClientID und ClientSecret von https://dashboard.aspose.cloud/
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
		    
    // Erstellen Sie eine Instanz von PdfApi
    PdfApi pdfApi = new PdfApi(clientSecret,clientId);
    // Name des eingegebenen PDF-Dokuments
    String name = "PdfWithTable.pdf";
		        
    // Lesen Sie den Inhalt der eingegebenen PDF-Datei
    File file = new File(name); 
    // PDF in den Cloud-Speicher hochladen
    pdfApi.uploadFile("input.pdf", file, null);
		        
    // X-Koordinate der unteren linken Ecke
    Double LLX = 500.0;
    // Y - Koordinate der unteren linken Ecke.
    Double LLY = 500.0;
    // X - Koordinate der oberen rechten Ecke.
    Double URX = 800.0;
    // Y - Koordinate der oberen rechten Ecke.
    Double URY = 800.0;
			       
    // Rufen Sie die API auf, um PDF in Text zu konvertieren
    TextRectsResponse response = pdfApi.getText("input.pdf", LLX, LLY, URX, URY, null, null, null, null, null);    
		    
    // Durchlaufen Sie einzelne Textvorkommen
    for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
    {
        // Textinhalt in Konsole schreiben
        System.out.println(response.getTextOccurrences().getList().get(counter).getText());
    }
		  
    System.out.println("Extract Text from PDF successful !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }

Versuchen wir nun, das oben angegebene Code-Snippet zu verstehen:

PdfApi pdfApi = new PdfApi(clientSecret,clientId);

Erstellen Sie eine Instanz von PdfApi, während Sie die personalisierten Anmeldeinformationen als Argumente übergeben.

File file = new File(name); 
pdfApi.uploadFile("input.pdf", file, null);

Lesen Sie die Eingabe-PDF mit dem File-Objekt und laden Sie sie mit der uploadFile(…)-Methode der PdfAPi-Klasse in den Cloud-Speicher hoch. Bitte beachten Sie, dass die Datei mit dem Namen hochgeladen wird, der in der uploadFile-Methode verwendet wird.

TextRectsResponse response = pdfApi.getText("input.pdf", LLX, LLY, URX, URY, null, null, null, null, null);    

Rufen Sie nun die Methode getText(..) auf, in der wir den Namen der PDF-Eingabedatei und die rechteckigen Abmessungen auf der Seite angeben, aus der wir den Textinhalt extrahieren müssen, und geben den extrahierten Inhalt an das TextRectsResponse-Objekt zurück.

response.getTextOccurrences().getList().get(counter).getText()

Um schließlich den extrahierten Textinhalt zu drucken, werden wir alle TextOccurances durchlaufen und in der Konsole anzeigen.

PDF zu Text mit cURL-Befehlen

Neben dem Java-Code-Snippet können wir auch pdftotext-Operationen mit cURL-Befehlen ausführen. Nun ist eine der Voraussetzungen für diesen Ansatz das Generieren eines JWT-Zugriffstokens (basierend auf Client-Anmeldeinformationen) mit dem folgenden Befehl.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Sobald das JWT generiert ist, führen Sie bitte den folgenden Befehl aus, um Text aus der bereits im Cloud-Speicher verfügbaren PDF-Datei zu extrahieren.

curl -v -X GET "https://api.aspose.cloud/v3.0/pdf/input.pdf/text?splitRects=true&LLX=0&LLY=0&URX=800&URY=800" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Kurzer Tipp

Auf der Suche nach einer kostenlosen PDF-to-Text-App! Bitte versuchen Sie es mit unserem PDF-Parser.

Abschließende Bemerkungen

Zusammenfassend lässt sich sagen, dass das Extrahieren von Text aus PDF-Dateien mit Java eine leistungsstarke Lösung für diejenigen sein kann, die ihre Datenverarbeitungs- und Analyseanforderungen automatisieren möchten. Mit Hilfe dieses Leitfadens haben Sie nun eine solide Grundlage, auf der Sie aufbauen können, und können ganz einfach Ihre eigene Java-basierte Lösung für die Textextraktion aus PDF-Dokumenten implementieren. Ganz gleich, ob Sie Text für die Datenanalyse, maschinelles Lernen oder andere Zwecke extrahieren möchten, Java bietet eine flexible und zuverlässige Plattform für Ihre Anforderungen. Also legen Sie los und stellen Sie Ihre neu erworbenen Fähigkeiten auf die Probe!

Wenn Sie daran interessiert sind, andere aufregende Funktionen zu entdecken, die von der API angeboten werden, sehen Sie sich bitte die Produktdokumentation an. Wenn Sie bei der Verwendung der API auf ein Problem stoßen oder eine diesbezügliche Frage haben, wenden Sie sich bitte über das kostenlose Produkt-Support-Forum an uns.

Verwandte Artikel

Bitte besuchen Sie die folgenden Links, um mehr darüber zu erfahren: