9-5 ユーザーアプリケーションから実行

PDFユーティリティの各機能は、Java 6に準拠したJavaアプリケーションから、API呼び出しとして実行できます。
パッケージ「jp.co.fit.pdfutilities」に含まれる「PDFUtil」クラスを使用し、そのインスタンスが保持するPDFファイルに対して処理を実行します。

注意

「PDFUtil」クラスで提供するAPIは、プロファイルで指定するメソッド名とは異なります。「PDFUtil」が実装するAPIの詳細は、JavaDoc形式のドキュメントを参照してください。

プログラム例

//本プログラムではmerge2.pdfはすでに暗号化されているPDFファイルであることを前提とします。このプログラムでは全PDFファイルをマージ後、暗号化します。
import jp.co.fit.pdfutilities.PDFUtil;
import java.io.*;

public class Test_UtilityManual {
  public static void main(String[] args) throws Exception {
    // 元となるPDFをインスタンス化(1ページ・表紙)
    PDFUtil origin=new PDFUtil("./Header.pdf");
    // 元となるPDFの右上隅に赤の太文字で「社外秘」と描画
    origin.DrawStringPDF(450,780,"社外秘","MS 明朝",true,false,false,40,100,
        new double[]{1.0,0.0,0.0},true,null);
    // マージするPDF1
    PDFUtil merge1=new PDFUtil("./merge1.pdf");
    // マージするPDF1の全ページ全体にイメージを描画(透明度30%)
    merge1.DrawImagePDF(0,0,100,100,"./image.jpg",true,true,null,
        PDFUtil.DRAWIMAGE_ALWAYS,30);
    // マージするPDF2
    PDFUtil merge2=new PDFUtil("./merge2.pdf");
    // マージするPDF2を復号化
    merge2.DecryptPDF("ownerpassword");
    // PDFをマージする
    origin.MergePDF(new Object[] { merge1, merge2, "./Trailer.pdf" });
    // マージPDFを128bit暗号化(アクセシビリティ無効、コピー無効、変更禁止、印刷禁止)
    origin.EncryptPDF("ownerpassword","userpassword",
        PDFUtil.ACROBAT_VER5_ENCRYPT,
        PDFUtil.Permission(false,false,PDFUtil.PERM_MODIFY_NOT,
            PDFUtil.PERM_PRINT_NOT));
    // PDFをファイル化する
    BufferedOutputStream out=new BufferedOutputStream(new DataOutputStream(
        new FileOutputStream("./output.pdf")));
    origin.GetFileImage(out);
    out.close();
  }
}