java - PDFBox convertToImage 无法正确呈现某些 PDF

标签 java pdf pdfbox

我正在使用 PDFBox 的 PDPage.convertToImage() 方法将加载的 PDF 文件的页面转换为图像。它对某些 PDF 工作正常,但它会向控制台显示大量文件的错误,这些文件无法在屏幕上正确呈现 - 图像和文本丢失。

Dec 31, 2013 7:15:34 PM org.apache.pdfbox.util.PDFStreamEngine processOperator
INFO: unsupported/disabled operation: EI
Dec 31, 2013 7:15:34 PM org.apache.pdfbox.pdmodel.font.PDTrueTypeFont getawtFont
INFO: Using font SansSerif.plain instead

Dec 31, 2013 7:02:15 PM org.apache.pdfbox.util.PDFStreamEngine processOperator
INFO: unsupported/disabled operation: i

文件加载只需使用:

PDDocument pdfDoc = PDDocument.load(file);
List<PDPage> pages = pdfDoc.getContent().getDocumentCatalog().getAllPages();
PDPage page = pages.get(pageNo);
page.convertToImage();

我尝试使用 loadNonSeq() 而不是 load() 但这没有帮助。我应该对 PDFStreamEngine 做些什么来让它处理这些 PDF 文件吗?我不确定读者是否真的无法呈现这些内容,或者功能是否需要以某种方式启用。

最佳答案

你的问题在我之前回答的帖子中解决了,通过使用 PDFRender jar 是可能的。

How to increase the resolution of image in PDF renderer? .

发布的问题仅转换 PDF 的第一页,答案将 PDF 的所有页面转换为图像格式。

关于java - PDFBox convertToImage 无法正确呈现某些 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20862335/

相关文章:

java - iText 中的 PdfPageEventHelper

IOS/Iphone : how to open a pdf link without . iphone 浏览器中的 pdf 扩展

java - pdfbox 请求后获取 ava.lang.ClassNotFoundException : org. apache.pdfbox.io.RandomAccessRead 控制台错误

java - J9 JVM (J2ME) 上的数据库

java - 更改 DataFrame.write() 的输出文件名前缀

ios - PDF 在 Iphone 上的 IOS 8 中被压缩并丢失纵横比

java - 为什么pdfbox和pdfrenderer都不支持 "Additional fonts"?

java - 在矩形 pdfbox 内垂直居中

java - 如何让 FileWatcher 告诉我修改的文件是一个文件夹?

java - For-each 循环向后迭代