从PDF文件申请页面,并将其保存到与iText的图像文件(Get a page from pdf a

2019-09-24 05:36发布

有一个pdf文件,我想导入的第2页为图像并将其保存到一个JPEG文件。 是否可能,怎么办呢?

这就是我如何导入页面的代码:

Document document = new Document();
File file = File.createTempFile("", "");
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
document.open();

final int backPage = 2;
PdfReader reader = new PdfReader(pdf.getAbsolutePath());
PdfImportedPage importedPage = writer.getImportedPage(reader, backPage);
com.lowagie.text.Image image = com.lowagie.text.Image.getInstance(importedPage);

现在,我得到一个image实例,但我不知道如何将其写入到一个JPEG文件。

Answer 1:

Appearently(根据1T3XT BVBA ),你只能从PDF页面,而不是一个光栅图像保存iText的图像。 你可以存储它无处不在,如果您稍后将使用将它放入另一个PDF页面...否则,你将不得不使用像JPedal的工具:

http://www.idrsolutions.com/convert-pdf-to-images/

===================================

编辑:也许PDFBox的能为你做到这一点!:

http://pdfbox.apache.org/commandlineutilities/PDFToImage.html

http://gal-levinsky.blogspot.it/2011/11/convert-pdf-to-image-via-pdfbox.html



Answer 2:

Image.getInstance(importedPage)不会(因为有人可能认为)渲染表示为页面的一些位,但仅仅是创建一个包装对象,使导入的页面更容易添加到另一个PDF。

iText的是不是一个PDF渲染工具,特别是不老的com.lowagie变种。 你可能想看看不同的产品,如JPedal 。



文章来源: Get a page from pdf and save it to an image file with itext