Mengekstrak tabel dari PDF dengan Java

Gunakan TableAbsorber ketika Anda perlu mendeteksi struktur tabel dalam PDF yang ada dan membaca isinya.

Mengekstrak teks dari tabel yang terdeteksi

Gunakan contoh ini ketika Anda perlu menemukan tabel pada setiap halaman dan mengumpulkan teks selnya.

  1. Buka PDF sumber Document.
  2. Kunjungi setiap halaman dengan TableAbsorber.
  3. Iterasikan melalui tabel yang diserap, baris, dan sel, kemudian output teks yang diekstrak.
public static void extract(Path inputFile) {
    try (Document document = new Document(inputFile.toString())) {
        for (Page page : document.getPages()) {
            TableAbsorber absorber = new TableAbsorber();
            absorber.visit(page);
            for (AbsorbedTable table : absorber.getTableList()) {
                System.out.println("Table ----");
                for (AbsorbedRow row : table.getRowList()) {
                    System.out.println("Row:");
                    StringBuilder rowText = new StringBuilder();
                    for (AbsorbedCell cell : row.getCellList()) {
                        StringBuilder cellText = new StringBuilder();
                        for (TextFragment fragment : cell.getTextFragments()) {
                            for (TextSegment segment : fragment.getSegments()) {
                                cellText.append(segment.getText());
                            }
                        }
                        rowText.append(" | ").append(cellText);
                    }
                    System.out.println(rowText);
                }
            }
        }
    }
}