Wyodrębnij tabele z pliku PDF przez Java

Wyodrębnij tabelę z dokumentu PDF. Użyj pliku Aspose.PDF dla Java, aby programowo modyfikować pliki PDF

Jak wyodrębnić tabele z dokumentu PDF przy użyciu biblioteki Java

Aby wyodrębnić tabelę, użyjemy interfejsu API Aspose.PDF for Java, który jest bogatym w funkcje, wydajnym i łatwym w użyciu interfejsem API konwersji dla platformy Java. Możesz pobrać jego najnowszą wersję bezpośrednio z Maven i zainstalować ją w ramach projektu opartego na Maven, dodając następujące konfiguracje do pom.xml.

Repository

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java AP</name>
    <url>https://releases.aspose.com/java/repo/</url>
</repository>

Dependency

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>version of aspose-pdf API</version>
</dependency>

Wyodrębnij tabele z pliku PDF za pośrednictwem Java


Potrzebujesz Aspose.PDF for Java, aby wypróbować kod w swoim środowisku.

  1. Załaduj plik PDF z wystąpieniem dokumentu.
  2. Tworzenie obiektu TableAbsorber znaleźć tabele.
  3. Odwiedź pierwszą stronę z absorberem.
  4. Zdobądź pierwszą tabelę na stronie.
  5. Usuń tabelę. Zapisz plik.

Wyodrębnij tabele z PDF - Java


    Document pdfDocument = new Document(_dataDir + "the_worlds_cities_in_2018_data_booklet 7.pdf");
    for(Page page : pdfDocument.getPages())
    {
        TableAbsorber absorber = new TableAbsorber();
        absorber.visit(page);
        for (AbsorbedTable table : absorber.getTableList())
        {
            for (AbsorbedRow row : table.getRowList())
            {
                for (AbsorbedCell cell : row.getCellList())
                {
                    TextFragmentCollection textFragmentCollection = cell.getTextFragments();
                    for (TextFragment fragment : textFragmentCollection)
                    {
                        String txt = "";
                        for (TextSegment seg : fragment.getSegments())
                            txt += seg.getText();
                        System.out.println(txt);
                    }
                }
            }
        }
    }