Itext-shrinking-the-content
iText-コンテンツの縮小
この章では、iTextライブラリを使用してPDFドキュメントの画像を拡大縮小する方法を説明します。
PDFのコンテンツを縮小する
以下は、iTextライブラリを使用してPDFページのコンテンツを縮小する手順です。
ステップ1:PdfWriterおよびPdfReaderオブジェクトの作成
以下に示すように、文字列値(PDFを作成する必要があるパスを表す)をコンストラクターに渡すことにより、PdfWriterクラスをインスタンス化します。
既存のPDFからデータを読み取るには、以下に示すように PdfReader オブジェクトを作成します。
ステップ2:PdfDocumentオブジェクトの作成
以下に示すように、 PdfWriter および PdfReader オブジェクトをコンストラクターに渡すことにより、ソースおよび宛先PDFドキュメントを作成します。
ステップ3:既存のPDFからページを開く
ステップ4:ソースPDFの内容を縮小する
以下に示すように、 AffineTransform クラスの* getScaleInstance()*メソッドを使用して、ソースドキュメントのページのコンテンツを縮小します。
ステップ5:ページのコピー
以下に示すように、前の手順で作成された* affine変換マトリックス*を、宛先PDFドキュメントの canvas オブジェクトのマトリックスに連結します。
次に、以下に示すように、コピー先PDFの canvas オブジェクトにページコピーをソースドキュメントに追加します。
ステップ6:Documentオブジェクトの作成
パッケージ com.itextpdf.layout の Document クラスは、自給自足のPDFを作成する際のルート要素です。 このクラスのコンストラクターの1つは、クラスPdfDocumentのオブジェクトを受け入れます。
以下に示すように、クラス PdfDocument のオブジェクトを渡すことにより、 Document クラスをインスタンス化します。
ステップ7:ドキュメントを閉じる
以下に示すように、 Document クラスの* close()*メソッドを使用してドキュメントを閉じます。
例
次のJavaプログラムは、iTextライブラリを使用してPDFページのコンテンツを縮小する方法を示しています。 shrinkingPDF.pdf という名前のPDFドキュメントを作成し、pdf内の画像を縮小し、パス C:/itextExamples/ に保存します
このコードを ShrinkingPDF.java という名前のファイルに保存します。
次のコマンドを使用して、コマンドプロンプトから保存したJavaファイルをコンパイルして実行します-
実行時に、上記のプログラムはPDFドキュメントを作成し、次のメッセージを表示します。
指定されたパスを確認すると、以下に示すように作成されたPDFドキュメントを見つけることができます。