PDF datoteka obično se sastoji od teksta, slike, naslova, komentara i drugih elemenata. A kako ovaj format čuva izgled dokumenta na svim platformama (Desktop/Mobile itd.), tako da se široko koristi za dijeljenje informacija putem interneta. Međutim, možda ćemo morati izdvojiti tekstualni sadržaj PDF dokumenta za daljnju obradu. Stoga ćemo u ovom članku raspravljati o pojedinostima o tome kako izdvojiti tekst iz PDF-a pomoću Java Cloud SDK-a. Nakon završetka operacije, izlaz se sprema u formatu TXT.
API za pretvorbu PDF-a u TXT
Aspose.PDF Cloud SDK za Javu naše je nagrađivano REST API rješenje koje nudi mogućnosti stvaranja, uređivanja i pretvaranja PDF-a u JPG, XPS, HTML, DOCX i niz drugih podržanih formata. Sada kako biste implementirali mogućnosti prepoznavanja pdf teksta u Java aplikaciji, dodajte sljedeće detalje u pom.xml projekta maven build type.
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf-cloud</artifactId>
<version>21.11.0</version>
</dependency>
</dependencies>
Nakon instalacije SDK-a, sljedeći važan korak je stvaranje besplatnog računa preko Aspose Cloud. Zato se prijavite pomoću novostvorenog računa i potražite/izradite ID klijenta i tajnu klijenta na Cloud Dashboard. Ovi detalji su potrebni u sljedećim odjeljcima.
PDF u tekst u Javi
Slijedite dolje navedene korake kako biste izvršili konverziju PDF-a u tekst koristeći Java Cloud SDK. Dakle, nakon uspješne konverzije, rezultirajuća TXT datoteka sprema se u pohranu u oblaku.
- Najprije moramo stvoriti PdfApi objekt dok dajemo ClientID i Client secret kao argumente
- Drugo, učitajte ulaznu PDF datoteku pomoću instance datoteke
- Prenesite ulazni PDF u pohranu u oblaku pomoću metode uploadFile(…).
- Stvorite varijablu Integer koja specificira broj stranice PDF-a za izdvajanje teksta i dvostruke instance koje označavaju pravokutno područje stranice iz kojeg trebamo izdvojiti tekstualni sadržaj
- Na kraju pozovite metodu getPageText(…) za dohvaćanje tekstualnog sadržaja iz ulaznog PDF-a
try
{
// Dobijte ClientID i ClientSecret s https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// stvoriti instancu PdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// naziv ulaznog PDF dokumenta
String inputFile = "marketing.pdf";
// pročitati sadržaj ulazne PDF datoteke
File file = new File("//Users//"+inputFile);
// prenesite PDF u pohranu u oblaku
pdfApi.uploadFile("input.pdf", file, null);
// određenu stranicu PDF-a za konverziju
int pageNumber =1;
// X-koordinata donjeg lijevog kuta
Double LLX = 0.0;
// Y - koordinata donjeg lijevog kuta.
Double LLY = 0.0;
// X - koordinata gornjeg desnog kuta.
Double URX = 800.0;
// Y - koordinata gornjeg desnog kuta.
Double URY = 800.0;
// pozovite API za pretvaranje PDF-a u tekst
TextRectsResponse response = pdfApi.getPageText(inputFile, pageNumber, LLX, LLY, URX, URY, null, null, true, null, "default");
// rezultirajuća instanca TXT datoteke
FileWriter myWriter = new FileWriter("filename.txt");
// Sada prijeđite kroz pojedinačnu pojavu teksta i dobijete rezultat ispisa na konzoli
for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
{
// pisanje tekstualnog sadržaja u TXT datoteku
myWriter.write(response.getTextOccurrences().getList().get(counter).getText());
}
// zatvorite TXT rukovatelj
myWriter.close();
System.out.println("Text successfully extracted from PDF !");
}catch(Exception ex)
{
System.out.println(ex);
}
Uzorak PDF datoteke korišten u gornjem primjeru može se preuzeti s marketing.pdf i extracted.txt
Izdvojite tekst iz PDF-a pomoću cURL naredbi
REST API-jima se lako može pristupiti putem cURL naredbi, pa ćemo u ovom odjeljku istražiti opciju kako možemo izdvojiti tekstualni sadržaj iz PDF-a pomoću cURL naredbi. Dakle, kao preduvjet, prvo moramo generirati JWT pristupni token (na temelju vjerodajnica klijenta) dok izvršavamo sljedeću naredbu.
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"
Nakon što imamo JWT token, trebamo izvršiti sljedeću naredbu za izdvajanje svih pojavljivanja teksta unutar PDF dokumenta.
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>"
Zaključak
Ovaj članak objašnjava pojedinosti o tome kako pretvoriti PDF u TXT pomoću Java Cloud SDK-a. Istodobno smo također istražili opcije za izdvajanje teksta iz PDF-a pomoću cURL naredbi. Dakle, uz fleksibilnost kretanja između višestrukih PDF stranica, dobivamo kontrolu nad time gdje izdvojiti sadržaj. Toplo vam preporučujemo da istražite proizvod Documentation kako biste saznali više o drugim uzbudljivim značajkama koje nudi Java Cloud API. Također, budući da su svi naši Cloud SDK-ovi objavljeni pod MIT licencom, razmislite o preuzimanju kompletnog izvornog koda s GitHub i modificirajte ga prema svojim zahtjevima. U slučaju bilo kakvih problema, razmislite o tome da nam se obratite za brzo rješenje putem besplatnog foruma za podršku proizvoda.
povezani članci
Posjetite sljedeće veze kako biste saznali više o: