5

私はスタックオーバーフローと外側でほとんどのことを試しました

問題: 目次と表を含む PDF があります。テーブルとコンテンツも解析する必要があります。

Apis : https://github.com/tabulapdf/tabula-java 私が使用しtabula-javaているものは、一部のコンテンツを無視し、テーブル セル内のコンテンツが適切な方法で分離されていません。

私のPDFはこのようなコンテンツを持っています

 DATE :1/1/2018         ABCD                   SCODE:FFFT
                       --ACCEPTED--
    USER:ADMIN         BATCH:RR               EEE
    CON BATCH
    =======================================================================
    MAIN SNO SUB  VALUE DIS %
    R    12   rr1 0125  24.5
            SLNO  DESC  QTY  TOTAL  CODE   FREE
            1     ABD   12   90     BBNEW  -NILL-
            2     XDF   45   55     GHT55  MRP
            3     QWE   08   77     CAT    -NILL-
    =======================================================================
    MAIN SNO SUB  VALUE DIS %
    QW    14   rr2 0122  24.5
            SLNO  DESC  QTY  TOTAL  CODE   FREE
            1     ABD   12   90     BBNEW  -NILL-
            2     XDF   45   55     GHT55  MRP
            3     QWE   08   77     CAT    -NILL-

変換する表コード:

public static void toCsv() throws ParseException {
        String commandLineOptions[] = { "-p", "1", "-o", "$csv", };
        CommandLineParser parser = new DefaultParser();
        try {
            CommandLine line = parser.parse(TabulaUtil.buildOptions(), commandLineOptions);
            new TabulaUtil(System.out, line).extractFileInto(
                    new File("/home/sample/firstPage.pdf"),
                    new File("/home/sample/onePage.csv"));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

tabula はコマンド ライン インターフェイスもサポート

java -jar TabulaJar/tabula-1.0.2-jar-with-dependencies.jar -p all  -o  $csv -b Pdfs

-c,--columns <COLUMNS>列境界のX座標でセルを取得するタブラを使用してみました

しかし、問題は私のpdfコンテンツが動的であることです。つまり、テーブル サイズが変更されます。

スタックオーバーフローのこれらのリンクと、さらに多くのくぼみが私にとってはうまくいきました。

tabula-pyでPDFをCSVに変換するには?

コマンドラインからPDFからテーブルデータをCSVとして抽出する方法は?

JavaでPDFをExcelに変換

PDFファイルをCSVファイルに変換するには?

itext PDF から csv への変換

PDFテーブルを解析してCSV(Java)で表示

テーブルの内容を正しく読めないフォーマットされていないテキストを提供するpdfボックスを使用しました。

コンテンツやフォーマットを失うことなく、Java を使用してテーブル付きの pdf をcsv/excelに変換できます。

有料ライブラリを使用したくありません。

4

2 に答える 2

0

Apache Foundation にはほとんどプロジェクトがありません

Tikka は、pdf、ppt、xls などの幅広い拡張子をサポートしています。サポートされている形式はhttps://tika.apache.org/1.24.1/formats.htmlに記載されています

https://tika.apache.org/

PDF ボックス - PDF 関連の機能に固有

https://pdfbox.apache.org/

于 2020-09-10T07:18:38.303 に答える