【发布时间】:2013-12-23 20:34:27
【问题描述】:
让我先概述一下我的项目。我有一个 pdf,我需要使用 PDFBox API 将其转换为图像(一页一张图像),并使用 PDFBox API 本身将所有这些图像写入新的 pdf。基本上就是将pdf转成pdf,我们称之为PDF转码。
对于某些包含 JBIG2 图像的 pdf,convertToImage() 方法的 PDFbox 实现无声无息地失败,没有任何异常或错误,最后生成一个 PDF,但这一次,只有空白内容(白色)。我在控制台上收到的消息是:
Dec 06, 2013 5:15:42 PM org.apache.pdfbox.filter.JBIG2Filter decode
SEVERE: Can't find an ImageIO plugin to decode the JBIG2 encoded datastream.
Dec 06, 2013 5:15:42 PM org.apache.pdfbox.pdmodel.graphics.xobject.PDPixelMap getRGBImage
SEVERE: Something went wrong ... the pixelmap doesn't contain any data.
Dec 06, 2013 5:15:42 PM org.apache.pdfbox.util.operator.pagedrawer.Invoke process
WARNING: getRGBImage returned NULL
我需要知道如何解决这个问题?我们有类似的东西:
import org.apache.pdfbox.filter.JBIG2Filter;
我不知道如何实现。
我正在搜索,但无济于事。有人可以建议吗?
【问题讨论】:
-
啊,异常提示:“找不到ImageIO插件来解码JBIG2编码的数据流”; PDFBox 在渲染图像时使用 Java 标准类,它们需要外部 JBIG2 支持。
-
那么import org.apache.pdfbox.filter.JBIG2Filter有什么用
-
JBIG2Filter有什么用处 - 正如该类的 Javadoc 所说,它以 JBIG2Decode 过滤器为模型。 根据 @987654321 @ 第 7.4.7 节“JBIG2Decode 过滤器”:JBIG2Decode 过滤器 (PDF 1.4) 对使用 JBIG2 编码的单色(每像素 1 位)图像数据进行解码。
标签: pdf-generation pdfbox jbig2