Datoteka PDF se obično sastoji od teksta, slike, naslova, napomena i drugih elemenata. I kako ovaj format čuva izgled dokumenta na različitim platformama (Desktop / Mobile itd.), tako se naširoko koristi za dijeljenje informacija putem interneta. Međutim, možda ćemo imati zahtjev da izdvojimo tekstualni sadržaj PDF dokumenta za dalju obradu. Dakle, u ovom članku ćemo razgovarati o detaljima o tome kako izdvojiti tekst iz PDF-a pomoću Java Cloud SDK. Kada se operacija završi, izlaz se pohranjuje u TXT formatu.
API za konverziju PDF u TXT
Aspose.PDF Cloud SDK za Javu je naše nagrađivano REST API rješenje koje nudi mogućnosti za kreiranje, uređivanje i konverziju PDF-a u JPG, XPS, HTML, DOCX i niz drugih podržanih formata. Sada da biste implementirali mogućnosti prepoznavanja pdf teksta u Java aplikaciji, dodajte sljedeće detalje u pom.xml projekta tipa maven build.
<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-pdf-cloud</artifactId>
<version>21.11.0</version>
</dependency>
</dependencies>
Nakon instalacije SDK-a, sljedeći važan korak je kreiranje besplatnog naloga preko Aspose Cloud. Zato se prijavite koristeći novokreirani nalog i potražite/kreirajte ID klijenta i Tajnu klijenta na Cloud Dashboard. Ovi detalji su potrebni u narednim odjeljcima.
PDF u tekst u Javi
Slijedite dolje navedene korake da izvršite konverziju PDF-a u tekst koristeći Java Cloud SDK. Dakle, nakon uspješne konverzije, rezultirajuća TXT datoteka se pohranjuje u pohranu u oblaku.
- Prvo trebamo kreirati PdfApi objekat dok pružamo ClientID i Client secret kao argumente
- Drugo, učitajte ulaznu PDF datoteku koristeći instancu datoteke
- Prenesite ulazni PDF u pohranu u oblaku koristeći metodu uploadFile(…).
- Kreirajte varijablu Integer koja specificira broj stranice PDF-a za ekstrakciju teksta i Double instance koje ukazuju na pravokutni dio stranice iz kojeg trebamo izdvojiti tekstualni sadržaj
- Konačno pozovite metodu getPageText(…) da dohvatite tekstualni sadržaj iz ulaznog PDF-a
try
{
// Preuzmite ClientID i ClientSecret sa https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// kreirajte instancu PdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// naziv ulaznog PDF dokumenta
String inputFile = "marketing.pdf";
// pročitajte sadržaj ulazne PDF datoteke
File file = new File("//Users//"+inputFile);
// otpremite 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 ugla
Double LLX = 0.0;
// Y - koordinata donjeg lijevog ugla.
Double LLY = 0.0;
// X - koordinata gornjeg desnog ugla.
Double URX = 800.0;
// Y - koordinata gornjeg desnog ugla.
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");
// rezultujuća instanca TXT datoteke
FileWriter myWriter = new FileWriter("filename.txt");
// Sada prelazite kroz pojedinačnu pojavu teksta i dobijete rezultat ispisa u konzoli
for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
{
// upisati tekstualni sadržaj u TXT datoteku
myWriter.write(response.getTextOccurrences().getList().get(counter).getText());
}
// zatvorite TXT rukovalac
myWriter.close();
System.out.println("Text successfully extracted from PDF !");
}catch(Exception ex)
{
System.out.println(ex);
}
Primjer PDF datoteke korišten u gornjem primjeru može se preuzeti sa marketing.pdf i extracted.txt
Izvucite tekst iz PDF-a pomoću cURL naredbi
REST API-jima se lako može pristupiti putem cURL komandi, tako da ćemo u ovom odeljku istražiti opciju kako možemo izdvojiti tekstualni sadržaj iz PDF-a pomoću cURL komandi. Dakle, kao preduvjet, prvo moramo generirati JWT pristupni token (na osnovu akreditiva 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, moramo izvršiti sljedeću naredbu da izdvojimo sva 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 detalje o tome kako pretvoriti PDF u TXT koristeći Java Cloud SDK. Istovremeno, istražili smo i opcije za izdvajanje teksta iz PDF-a pomoću cURL komandi. Dakle, uz fleksibilnost prelaska između više PDF stranica, dobijamo kontrolu o tome gdje izdvojiti sadržaj. Toplo vam preporučujemo da istražite proizvod Dokumentaciju kako biste saznali više o drugim uzbudljivim funkcijama koje nudi Java Cloud API. Također, kako su svi naši Cloud SDK-ovi objavljeni pod MIT licencom, možete razmotriti preuzimanje kompletnog izvornog koda sa GitHub i modificirati ga prema vašim zahtjevima. U slučaju bilo kakvih problema, možete razmisliti da nam se obratite za brzo rješenje putem besplatnog foruma za podršku proizvoda.
povezani članci
Posjetite sljedeće linkove da saznate više o: