Ovaj vodič pruža detalje o tome kako čitati PDF tablicu u Javi i pristupiti tekstu koji pripada svakoj ćeliji unutar željene tablice. Imat ćete potpunu kontrolu pozivanja na određenu tablicu na ciljnoj stranici PDF i analizirati sve retke i ćelije kako biste dohvatili podatke. Za pisanje ovog čitača PDF tablica u Javi nije potreban nikakav drugi alat ili softver treće strane.
Koraci za čitanje PDF tablice u Javi
- Konfigurirajte svoju aplikaciju za čitanje PDF tablica za dodavanje Aspose.PDF iz Maven repozitorija
- Učitajte oglednu PDF datoteku koja sadrži tablicu pomoću objekta klase Document
- Instancirajte i inicijalizirajte objekt TableAbsorber da dohvatite sve PDF tablice s odabrane PDF stranice
- Iterirajte kroz sve retke u željenoj tablici
- Iterirajte kroz sve ćelije u željenom retku i dohvatite sve fragmente teksta iz svake ćelije
- Prikažite tekst dohvaćen iz ćelije
Ovi koraci objašnjavaju kako pomoću Jave izvući tablicu iz PDF-a zajedno s informacijama o potrebnim bibliotekama koje treba dodati u projekt. Također navodi redoslijed operacija za dovršetak zadatka kao što je prvo učitavanje PDF-a, zatim pristup određenoj stranici i dohvaćanje željene tablice. Na kraju, raščlanite sve retke i ćelije da biste dobili informacije.
Kod za čitanje PDF tablice u Javi
import com.aspose.pdf.License; | |
import com.aspose.pdf.AbsorbedCell; | |
import com.aspose.pdf.AbsorbedRow; | |
import com.aspose.pdf.AbsorbedTable; | |
import com.aspose.pdf.Document; | |
import com.aspose.pdf.TableAbsorber; | |
import com.aspose.pdf.TextFragmentCollection; | |
public class ReadPDFTableInJava { | |
public static void main(String[] args) throws Exception { // main function for reading PDF table data in ReadPDFTableInJava | |
// For avoiding the trial version limitation, load the Aspose.PDF license prior to reading table data | |
License licenseForHtmlToPdf = new License(); | |
licenseForHtmlToPdf.setLicense("Aspose.Pdf.lic"); | |
// Load a source PDF document which contains a table in it | |
Document pdfDocument = new Document("PdfWithTable.pdf"); | |
// Instantiate the TableAbsorber object for PDF tables extraction | |
TableAbsorber tableAbsorber = new TableAbsorber(); | |
// visit the table collection in the input PDF | |
tableAbsorber.visit(pdfDocument.getPages().get_Item(1)); | |
// Access the desired table from the tables collection | |
AbsorbedTable absorbedTable = tableAbsorber.getTableList().get(0); | |
// Parse all the rows and get each row using the AbsorbedRow | |
for (AbsorbedRow pdfTableRow : absorbedTable.getRowList()) | |
{ | |
// Access each cell in the cells collection using AbsorbedCell | |
for (AbsorbedCell pdfTableCell : pdfTableRow.getCellList()) | |
{ | |
// Access each text fragment from the cell | |
TextFragmentCollection textFragmentCollection = pdfTableCell.getTextFragments(); | |
// Access each text fragment from the fragments collection | |
for (com.aspose.pdf.TextFragment textFragment : textFragmentCollection) | |
{ | |
// Display the table cell text | |
System.out.println(textFragment.getText()); | |
} | |
} | |
} | |
System.out.println("Done"); | |
} | |
} |
Za izdvajanje tablice iz PDF-a Ovdje se nudi Java kod koji koristi klase TableAbsorber i AbsorbedTable za rukovanje tablicama u PDF-u. Također koristi klase AbsorbedRow i AbsorbedCell za upravljanje redcima i stupcima prije upotrebe klase TextFragment za dohvaćanje podataka ćelije. Također, postoje mnoge druge apsorber klase dostupne za različite elemente u dokumentu kao što su fontovi, odlomci, tekst i fragmenti teksta.
Ovaj članak opisuje da se pomoću Java PDF ekstrakcije tablice može izvesti u nekoliko koraka. Ako želite naučiti čitati tekst i slike iz PDF datoteke, pogledajte članak na kako čitati PDF datoteku u Javi.