En PDF-fil består normalt af tekst, billede, overskrift, anmærkninger og andre elementer. Og da dette format bevarer dokumentlayoutet på tværs af platforme (Desktop / Mobil osv.), så det er meget brugt til at dele information over internettet. Vi kan dog have et krav om at udtrække tekstindhold af PDF-dokument til videre behandling. Så i denne artikel vil vi diskutere detaljerne om, hvordan man udtrækker tekst fra PDF ved hjælp af Java Cloud SDK. Når handlingen er fuldført, gemmes outputtet i TXT-format.
PDF til TXT konvertering API
Aspose.PDF Cloud SDK for Java er vores prisvindende REST API-løsning, der tilbyder mulighederne for at oprette, redigere og konvertere PDF til JPG, XPS, HTML, DOCX og en række andre understøttede formater. For nu at implementere pdf-tekstgenkendelsesfunktionerne i Java-applikationen, skal du tilføje følgende detaljer i pom.xml af maven build-projektet.
<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>
Efter SDK-installationen er det næste vigtige skridt oprettelsen af en gratis konto over Aspose Cloud. Så log venligst ind med den nyoprettede konto og søg/opret klient-id og klienthemmelighed på Cloud Dashboard. Disse detaljer er påkrævet i de efterfølgende afsnit.
PDF til tekst i Java
Følg venligst trinene nedenfor for at udføre PDF til tekst-konvertering ved hjælp af Java Cloud SDK. Så efter vellykket konvertering gemmes den resulterende TXT-fil i skylageret.
- Først skal vi oprette et PdfApi-objekt, mens vi giver ClientID og Client Secret som argumenter
- For det andet skal du indlæse input-PDF-filen ved hjælp af filforekomst
- Upload input-PDF’en til skylageret ved hjælp af uploadFile(…)-metoden
- Opret heltalsvariabel, der angiver sidenummer i PDF til tekstudtrækning og dobbelte forekomster, der angiver det rektangulære område på siden, hvorfra vi skal udtrække tekstindholdet
- Kald endelig getPageText(…)-metoden for at hente tekstindhold fra input-PDF
try
{
// Hent ClientID og ClientSecret fra https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// oprette en instans af PdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// navn på input PDF-dokument
String inputFile = "marketing.pdf";
// læse indholdet af input PDF-fil
File file = new File("//Users//"+inputFile);
// upload PDF til cloud storage
pdfApi.uploadFile("input.pdf", file, null);
// specifik side af PDF til konvertering
int pageNumber =1;
// X-koordinat af nederste - venstre hjørne
Double LLX = 0.0;
// Y - koordinat for nederste venstre hjørne.
Double LLY = 0.0;
// X - koordinat for øverste højre hjørne.
Double URX = 800.0;
// Y - koordinat for øverste højre hjørne.
Double URY = 800.0;
// kald API for at konvertere PDF til tekst
TextRectsResponse response = pdfApi.getPageText(inputFile, pageNumber, LLX, LLY, URX, URY, null, null, true, null, "default");
// resulterende TXT-filforekomst
FileWriter myWriter = new FileWriter("filename.txt");
// Gå nu gennem individuel tekstforekomst og få printresultat i konsollen
for(int counter=0; counter <=response.getTextOccurrences().getList().size()-1; counter++)
{
// skrive tekstindhold til TXT-fil
myWriter.write(response.getTextOccurrences().getList().get(counter).getText());
}
// luk TXT-handleren
myWriter.close();
System.out.println("Text successfully extracted from PDF !");
}catch(Exception ex)
{
System.out.println(ex);
}
Eksempel PDF-filen brugt i ovenstående eksempel kan downloades fra marketing.pdf og extracted.txt
Uddrag tekst fra PDF ved hjælp af cURL-kommandoer
REST API’erne kan nemt tilgås via cURL-kommandoer, så i dette afsnit vil vi undersøge muligheden for, hvordan vi kan udtrække tekstindhold fra PDF ved hjælp af cURL-kommandoer. Så som en forudsætning skal vi først generere et JWT-adgangstoken (baseret på klientlegitimationsoplysninger), mens vi udfører følgende kommando.
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"
Når vi har JWT-tokenet, skal vi udføre følgende kommando for at udtrække alle tekstforekomster i PDF-dokumentet.
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>"
Konklusion
Denne artikel har forklaret detaljerne om, hvordan man konverterer PDF til TXT ved hjælp af Java Cloud SDK. Samtidig har vi også undersøgt mulighederne for at udtrække tekst fra PDF ved hjælp af cURL-kommandoer. Så med fleksibiliteten ved at krydse mellem flere PDF-sider, får vi kontrol over, hvor indholdet skal udpakkes. Vi anbefaler dig stærkt at udforske produktet Dokumentation for at lære mere om de andre spændende funktioner, der tilbydes af Java Cloud API. Da alle vores Cloud SDK’er er udgivet under MIT-licens, kan du overveje at downloade den komplette kildekode fra GitHub og ændre den i henhold til dine krav. I tilfælde af problemer, kan du overveje at kontakte os for en hurtig løsning via gratis produktsupportforum.
relaterede artikler
Besøg venligst følgende links for at lære mere om: