extrahovat text z PDF

Extrahujte text z PDF v Javě

Všichni víme, že soubory PDF jsou jedním z nejdůležitějších a nejrozšířenějších digitálních formátů používaných ke spolehlivé prezentaci a výměně dokumentů, nezávisle na softwaru, hardwaru nebo operačním systému. V některých scénářích by nás však mohlo zajímat získat úryvek z velkých souborů PDF. Nebo můžeme mít požadavek uložit PDF do textu online. V tomto článku tedy prozkoumáme podrobnosti o tom, jak vyvinout převodník PDF na text pomocí Java REST API.

API generátoru PDF

Získejte možnost generovat dokumenty PDF pomocí šablon nebo od začátku pomocí našeho REST API. Zároveň vám API také umožňuje upravovat a transformovat soubory PDF do jiných podporovaných formátů. Můžete také využít výhod extrahování textu z PDF, dešifrování a slučování souborů PDF pomocí Java Cloud SDK. Nyní, abychom mohli používat Aspose.PDF Cloud SDK for Java, musíme přidat jeho odkaz do naší Java aplikace tím, že do pom.xml (projekt typu sestavení maven) zahrneme následující podrobnosti.

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

Po instalaci si musíme vytvořit bezplatný účet přes Cloud Dashboard a získat personalizované přihlašovací údaje klienta.

Extrahujte text z PDF pomocí Java

Pojďme prozkoumat podrobnosti k extrahování textu z PDF pomocí Java cloud SDK. V tomto příkladu použijeme následující vstup PdfWithTable.pdf soubor.

pdf do textu ocr

Obrázek 1:- Vstupní soubor pro extrakci PDF do textu.

pdf do textu ocr

Obrázek 2: - Extrahujte text z náhledu PDF

// pro více příkladů prosím navštivte https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-java/tree/master/Examples/src/main/java/com/aspose/asposecloudpdf/examples

try
    {
    // Získejte ClientID a ClientSecret z https://dashboard.aspose.cloud/
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
		    
    // vytvořit instanci PdfApi
    PdfApi pdfApi = new PdfApi(clientSecret,clientId);
    // název vstupního PDF dokumentu
    String name = "PdfWithTable.pdf";
		        
    // přečíst obsah vstupního souboru PDF
    File file = new File(name); 
    // nahrát PDF do cloudového úložiště
    pdfApi.uploadFile("input.pdf", file, null);
		        
    // X-ová souřadnice levého dolního rohu
    Double LLX = 500.0;
    // Y - souřadnice levého dolního rohu.
    Double LLY = 500.0;
    // X - souřadnice pravého horního rohu.
    Double URX = 800.0;
    // Y - souřadnice pravého horního rohu.
    Double URY = 800.0;
			       
    // volání API pro převod PDF na text
    TextRectsResponse response = pdfApi.getText("input.pdf", LLX, LLY, URX, URY, null, null, null, null, null);    
		    
    // Procházet jednotlivými výskyty textu
    for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
    {
        // psát textový obsah v konzoli
        System.out.println(response.getTextOccurrences().getList().get(counter).getText());
    }
		  
    System.out.println("Extract Text from PDF successful !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }

Nyní se pokusme porozumět výše uvedenému fragmentu kódu:

PdfApi pdfApi = new PdfApi(clientSecret,clientId);

Vytvořte instanci PdfApi a přitom předejte personalizovaná pověření jako argumenty.

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

Přečtěte si vstupní PDF pomocí objektu File a nahrajte jej do cloudového úložiště pomocí metody uploadFile(…) třídy PdfAPi. Vezměte prosím na vědomí, že soubor je nahrán s názvem použitým v metodě uploadFile.

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

Nyní zavoláme metodu getText(..), kde zadáme jméno vstupního PDF souboru, obdélníkové rozměry stránky, ze které potřebujeme extrahovat textový obsah a extrahovaný obsah vrátíme do objektu TextRectsResponse.

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

Nakonec, abychom mohli vytisknout extrahovaný textový obsah, budeme iterovat všechny TextOccurances a zobrazit je v konzole.

PDF na text pomocí příkazů cURL

Kromě fragmentu kódu Java můžeme také provádět operace pdftotext pomocí příkazů cURL. Nyní je jedním z předpokladů tohoto přístupu vygenerování přístupového tokenu JWT (na základě přihlašovacích údajů klienta) pomocí následujícího příkazu.

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"

Jakmile je JWT vygenerován, spusťte prosím následující příkaz a extrahujte text ze souboru PDF, který je již dostupný v cloudovém úložišti.

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

Rychlý tip

Hledáte bezplatnou aplikaci PDF na text! Zkuste prosím použít náš PDF Parser.

Závěrečné poznámky

Závěrem lze říci, že extrahování textu ze souborů PDF pomocí Java může být výkonným řešením pro ty, kteří chtějí automatizovat své potřeby zpracování dat a analýzy. S pomocí této příručky máte nyní pevný základ, na kterém můžete stavět, a můžete snadno implementovat své vlastní řešení založené na Javě pro extrakci textu z dokumentů PDF. Ať už chcete extrahovat text pro analýzu dat, strojové učení nebo jakýkoli jiný účel, Java poskytuje flexibilní a spolehlivou platformu pro vaše potřeby. Tak směle do toho a vyzkoušejte své nově nabyté dovednosti!

Máte-li zájem prozkoumat další vzrušující funkce nabízené rozhraním API, prozkoumejte dokumentaci k produktu. A konečně, pokud při používání API narazíte na jakýkoli problém nebo máte jakýkoli související dotaz, neváhejte nás kontaktovat prostřednictvím bezplatného Fóra podpory produktů.

Související články

Další informace naleznete na následujících odkazech: