如何将 PDF 转换为 JSON/EXCEL/WORD 文件?

How to convert a PDF to a JSON/EXCEL/WORD file?

我需要从 pdf 文件中获取数据 header 以进一步与数据库数据进行比较

我尝试使用 pdfbox、google vision ocr、itext,但所有图书馆都给了我一个没有结构的行和 headers。

示例:Date\nNumber\nStatus\n1220\n442334\delivered

我会尝试将 pdf 转换为 excel/word 并从中获取数据,但为了实现这一点,我需要读取 pdf 并将数据写入 excel/word

如何使用 header 获取数据?

"Date\nNumber\nStatus\n12/12/2020\n442334\ndelivered" 对我来说看起来足够结构化。您可以将它拆分为“\n”。不过,这需要对 table 结构有一些了解。

我对 Google Vision OCR 有很好的体验。你怎么称呼它?

我的问题没有找到答案。

我将此代码用于我的任务:

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.text.PDFTextStripperByArea;
import java.awt.*;
import java.io.File;
import java.io.IOException;

public class ExtractTextByArea {

    public String getTextFromCoordinate(String filepath,int x,int y,int width,int height) {
        String result = "";
        try (PDDocument document = PDDocument.load(new File(filepath))) {

            if (!document.isEncrypted()) {

                PDFTextStripperByArea stripper = new PDFTextStripperByArea();
                stripper.setSortByPosition(true);
               // Rectangle rect = new Rectangle(260, 35, 70, 10);
                Rectangle rect = new Rectangle(x,y,width,height);
                stripper.addRegion("class1", rect);
                PDPage firstPage = document.getPage(0);
                stripper.extractRegions( firstPage );
               // System.out.println("Text in the area:" + rect);
                result = stripper.getTextForRegion("class1");

            }
        } catch (IOException e){
            System.err.println("Exception while trying to read pdf document - " + e);
        }
        return result;
    }

}