我使用的是Apache PDFBox 1.8.9。我有一页PDF包含文本,我想将此页面转换为图像。 PDF是与Libre Office一起创建的。我使用以下代码:
PDDocument document = PDDocument.loadNonSeq(new File(filename), null);
List<PDPage> pdPages = document.getDocumentCatalog().getAllPages();
int page = 0;
for (PDPage pdPage : pdPages) {
++page;
BufferedImage bim = pdPage.convertToImage(BufferedImage.TYPE_INT_RGB, 300);
ImageIOUtil.writeImage(bim, "png", "/home/file" + "-" + page, 300);
}
document.close();
代码有效,我得到一张PNG图片。问题是有很多奇怪的额外符号使得阅读文本非常困难。如何解决?
我得到的图像是这样的(放大):
,这与PDF查看器中的区域相同:
下载完整的PDF文件