Šioje trumpoje pamokoje sužinosite, kaip skaityti PDF failą Java**. Jame yra Java kodas, skirtas skaityti PDF failą, todėl pirmiausia turite perskaityti tekstą iš PDF Java į eilutę, o tada gauti visus vaizdus iš PDF failo, kad išsaugotumėte juos diske kaip JPG. Nereikia įdiegti jokio trečiosios šalies įrankio, kad galėtumėte skaityti PDF Java.
Veiksmai, kaip skaityti PDF failą Java
- Sukonfigūruokite Aspose.PDF savo projekte naudodami Maven saugyklą PDF failui skaityti
- Įkelkite pavyzdinį PDF failą į Document klasės objektą
- Sukurkite TextAbsorber klasės objektą, kuris gali nuskaityti visą tekstą iš PDF failo
- Skaitykite PDF tekstą iš įkelto failo naudodami klasės objektą TextAbsorber
- Rodyti visą tekstą, nuskaitytą iš PDF failo konsolėje
- Norėdami pasiekti vaizdus, peržiūrėkite visus PDF failo puslapius
- Išnagrinėkite visus kiekvieno puslapio vaizdų kolekcijos vaizdus ir išsaugokite juos diske
Šioje trumpoje nuoseklioje pamokoje pirmiausia įkeliame tikslinį PDF failą, o tada inicijuojame TextAbsorber klasės objektą, galintį ieškoti teksto visuose PDF puslapiuose. Visas šis tekstas grąžinamas į eilutę, kurią galima rodyti arba apdoroti pagal reikalavimą. Panašiai galime išanalizuoti visus vaizdų kolekcijoje esančius vaizdus ir išsaugoti juos diske bet kokiu formatu, kaip šioje pamokoje išsaugojome JPG formatu.
Kodas skaityti PDF naudojant Java
import com.aspose.pdf.License; | |
import com.aspose.pdf.Document; | |
import com.aspose.pdf.Page; | |
import com.aspose.pdf.TextAbsorber; | |
import com.aspose.pdf.XImage; | |
public class HowToReadPDFFileInJava { | |
public static void main(String[] args) throws Exception {//main() function for HowToReadPDFFileInJava | |
// Instantiate the license to remove trial version restrictions while reading the PDF file | |
License license = new License(); | |
license.setLicense("Aspose.PDF.lic"); | |
// Load the PDF file from which text and images are to be read | |
Document pdf = new Document("Input.pdf"); | |
// 1. Read entire text from the PDF file | |
// Instantiate a TextAbsorber Class object to read Text from PDF file | |
TextAbsorber textAbsorberObject = new TextAbsorber(); | |
// Call PageCollection.accept() method to let TextAbsorber find text in PDF Pages | |
pdf.getPages().accept(textAbsorberObject); | |
// Write the extracted text from the sample PDF to console | |
System.out.println(textAbsorberObject.getText()); | |
// 2. Extract images from PDF file | |
int imageCount = 1; | |
// Iterate through all the PDF pages to access images collection and save them on the disc | |
for (Page pdfPage : pdf.getPages()) | |
{ | |
// Iterate through images collection in the PDF file | |
for (XImage image : pdfPage.getResources().getImages()) | |
{ | |
java.io.FileOutputStream outputImageFromPdfFile = new java.io.FileOutputStream(pdfPage.getNumber() + "-"+ imageCount+"-output.jpg"); | |
// Save each image in the PDF file images collection to a JPG file | |
image.save(outputImageFromPdfFile); | |
outputImageFromPdfFile.close(); | |
imageCount++; | |
} | |
// Reset image index | |
imageCount = 1; | |
} | |
} | |
} |
Šiame pavyzdiniame kode naudojome klasę TextAbsorber ir Page.getResources() funkciją getImages() norėdami skaityti PDF naudodami Java. TextAbsorber objektas naudojamas tekstui skaityti naudojant PDF PageCollection funkciją priimant. Tuo tarpu getImages() kolekcijos getResources() funkcija grąžina visus puslapio vaizdus.
Atminkite, kad šiuos PDF skaitymo Java veiksmus galima atlikti bet kurioje operacinėje sistemoje, pvz., Windows, Linux ar MacOS. Jei norite sužinoti daugiau apie darbą su PDF failais, žr. straipsnį kaip skaityti žymes PDF naudojant Java.