PDFBOX 读取 Skia 创建的 PDF 文件

问题描述 投票:0回答:1

我使用 PDFBOX 读取 PDF 文件(Skia/PDF m118 Google Docs Renderer),但它什么也没读。该文档只有一页且不包含图像。我尝试使用 PDFTextStripper 阅读内容。

知道如何使用 PDFBOX 阅读 Skia/PDF m118 Google 文档吗?

我可以用 Acrobat Reader 打开它。

代码片段

    Document dataDocument = new Document();
    try {
        PDFTextStripper pdfTextStripper = new PDFTextStripper();

        pdfTextStripper.setParagraphStart("/t");
        pdfTextStripper.setSortByPosition(true);

        for (int i = 0; i < document.getNumberOfPages(); i++) {
            pdfTextStripper.setStartPage(i);
            pdfTextStripper.setEndPage(i);
            for (String line : pdfTextStripper.getText(document).split(pdfTextStripper.getParagraphStart())) {
                if (!line.isBlank() && line.length() > 3) {
                    dataDocument.getText().add(line);
                }
            }
            dataDocument.getText().add(":page=" + i);
        }

...

PdfBox版本

 implementation 'org.apache.pdfbox:pdfbox:2.0.30'

PDF文件

这是文档的链接,https://jmp.sh/s/vTpGFHq6nLjzWXzBfxIA 兹拉贾

java pdf pdfbox
1个回答
0
投票

setStartPage()
setEndPage()
都要求参数从1开始(参见javadoc)。因此将您的代码更改为:

pdfTextStripper.setStartPage(i + 1);
pdfTextStripper.setEndPage(i + 1);
© www.soinside.com 2019 - 2024. All rights reserved.