Jak číst tabulku PDF v Javě

Tento tutoriál poskytuje podrobnosti o tom, jak číst tabulku PDF v Javě a získat přístup k textu, který patří do každé buňky v požadované tabulce. Budete mít plnou kontrolu nad odkazem na konkrétní tabulku na cílové stránce PDF a analýzou všech řádků a buněk, abyste získali data. K napsání této čtečky tabulek PDF v Javě není potřeba žádný jiný nástroj nebo software třetí strany.

Kroky ke čtení tabulky PDF v Javě

  1. Nakonfigurujte svou aplikaci pro čtení tabulek PDF tak, aby přidala Aspose.PDF z úložiště Maven
  2. Načtěte ukázkový soubor PDF obsahující tabulku pomocí objektu třídy Document
  3. Vytvořte instanci a inicializujte objekt TableAbsorber, abyste načetli všechny tabulky PDF z vybrané stránky PDF
  4. Iterujte všechny řádky v požadované tabulce
  5. Iterujte všechny buňky v požadovaném řádku a načtěte všechny textové fragmenty z každé buňky
  6. Zobrazí text načtený z buňky

Tyto kroky vysvětlují, jak používat tabulku Java extraktu z PDF spolu s informacemi o požadovaných knihovnách, které mají být přidány do projektu. Uvádí také pořadí operací k dokončení úkolu, jako je první načtení PDF, poté přístup na konkrétní stránku a načtení požadované tabulky. Nakonec analyzujte všechny řádky a buňky, abyste získali informace.

Kód pro čtení tabulky PDF v Javě

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");
}
}

Pro extrahování tabulky z PDF je zde poskytnut Java kód, který používá třídy TableAbsorber a AbsorbedTable pro práci s tabulkami v PDF. Používá také třídy AbsorbedRow a AbsorbedCell pro správu řádků a sloupců před použitím třídy TextFragment pro načítání dat buňky. Existuje také mnoho dalších tříd absorbérů dostupných pro různé prvky v dokumentu, jako jsou písma, odstavce, text a textové fragmenty.

Tento článek popisuje, že pomocí Java PDF lze extrakci tabulky provést v několika krocích. Pokud se chcete naučit číst text a obrázky ze souboru PDF, přečtěte si článek na jak číst soubor PDF v Javě.

 Čeština