我正在使用 Apache PDFBox 读取 PDF 文件并将其转换为 JPEG 图像。
import java.io.ByteArrayInputStream;
import java.awt.image.BufferedImage;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.PDFRenderer;
...
byte[] fileBytes;
...
PDDocument pdDocument = PDDocument.load(new ByteArrayInputStream(fileBytes));
BufferedImage image = new PDFRenderer(pdDocument).renderImage(0);
pdDocument.close();
有时 PDF 文档包含 JBIG2 图像。我正在使用 PDFBox 的JBIG2 ImageIO 插件来正确处理此类 PDF 文档。这工作正常。但我想知道转换后的原始 PDF 文档是否包含 JBIG2 图像。
我检查了PDDocument Javadoc,但我想不出办法来回答这个看似简单的问题:给定的 PDF 文档是否至少包含一个 JBIG2 图像?
由于我已经在使用 PDFBox,因此首选使用 PDFBox 的解决方案,但其他建议也将受到高度赞赏。