4

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ファイルに書き込む方法がわかりません。

4

2 に答える 2

4

Image.getInstance(importedPage)は、(想定されるように)指定されたページをビットマップとしてレンダリングしませんが、インポートされたページを別のPDFに追加しやすくするためのラッパーオブジェクトを作成するだけです。

iTextはPDFレンダリングツールではなく、特に古いcom.lowagieバリアントではありません。JPedalなどのさまざまな製品を確認することをお勧めします。

于 2012-10-17T13:26:04.673 に答える
3

どうやら(1T3XT BVBAによると)、iText画像はPDFページからのみ保存でき、ラスター画像は保存できません。後で別の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

于 2012-10-17T13:24:42.333 に答える