10-10 PDF属性の確認・設定

概説:

プロパティの確認・設定

プロパティの基本

//入力PDFの取得は「PDFを開く」を参照
PtlDocProperty docProperty = doc.getDocProperty();  //PDFの文書プロパティ用クラスを取得

文書情報の確認

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
PtlDocInfo docinf = docProperty.getDocInfo();       //PDFの文書情報用クラスを取得
docinf.getTitle();          //「タイトル」の値を取得
docinf.getAuthor();         //「作成者」の値を取得
docinf.getSubject();        //「サブタイトル」の値
docinf.getKeywords();       //「キーワード」の値を取得
docinf.getCreator();        //「アプリケーション」(元ドキュメントの作成ソフト名)の値を取得
docinf.getProducer();       //「PDF変換」(変換ソフト名)の値を取得
PtlDate dateCreate = docinf.getCreationDate();  //作成日時を取得
PtlDate dateMod = docinf.getModDate();          //更新日時を取得

PtlCustomProperties customProperties = docProperty.getCustomProperties();   //カスタムプロパティ情報取得
customProperties.isEmpty(); //カスタムプロパティのコンテナに値が存在するか否か
//インデックス番号を指定してカスタムプロパティを取得
PtlCustomProperty customProperty = customProperties.get(customPropertyNum);
customProperty.getName();   //カスタムプロパティの「名前」の値を取得
customProperty.getValue();  //カスタムプロパティの「値」の値を取得

文書情報の設定

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
PtlDocInfo docinf = docProperty.getDocInfo();       //PDFの文書情報用クラスを取得

docinf.setTitle(title);                     //タイトルを設定
docinf.setAuthor(author);                   //作成者を設定
docinf.setCreationDate(dateCreateNew);      //作成日時を設定
docinf.setModDate(dateModNew);              //更新日時を設定

// 出力PDFの保存は「PDFの保存」を参照

カスタムプロパティの設定

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
//カスタムプロパティ用コンテナクラスを取得
PtlCustomProperties customProperties  = docProperty.getCustomProperties();
//新規カスタムプロパティ用クラス
PtlCustomProperty newCustomProp = new PtlCustomProperty(name, value);
customProperties.append(newCustomProp);             //コンテナクラスにカスタムプロパティを追加

// 出力PDFの保存は「PDFの保存」を参照

カスタムプロパティの削除

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
//カスタムプロパティ用コンテナクラスを取得
PtlCustomProperties customProperties  = docProperty.getCustomProperties();
customProperties.remove(numToRemoveCustomProp); //指定したカスタムプロパティを削除

// 出力PDFの保存は「PDFの保存」を参照

カスタムプロパティは一括削除をすることも可能

customProperties.removeAll();   //コンテナクラス内の全てのカスタムプロパティを削除

文書のフォント情報の確認

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
PtlFontInfos fontoInfos= docProperty.getFontInfos();    //フォント情報コンテナを取得
PtlFontInfo fontInfo = fontInfos.get(fontInfoNum);      //フォント情報を取得

fontInfo.getEncodingName();     //エンコーディング名を取得
fontInfo.getFontName();         //フォント名を取得
fontInfo.isEmbedded();          //埋め込みを許可されているか否かを取得

開き方の確認

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
PtlOpenMode openmode = docProperty.getOpenMode();   //オープンモードの取得
openmode.getOpenAction();        //オープンアクションを取得
openmode.getOpenDest();          //オープン時の宛先を取得

開き方の設定は「開き方」の項を参照

PDFのバージョンを確認

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
PtlDocProperty.PDF_VERSION version = docProperty.getVersion();       //PDFのバージョンを取得

リニアライズの有無の確認

//入力PDFの取得は「PDFを開く」を参照
//プロパティ用クラスの取得は「プロパティの基本」を参照
docProperty.isLinearized();     //リニアライズされているか否かを取得

PDF/Xかどうかの確認

//入力PDFの取得は「PDFを開く」を参照
doc.isPDFX();       //PDF/Xか否かの取得

PDF/Aかどうかの確認

「PDFA」の項の「PDF/Aの種類の取得」を参照してください。

電子署名の有無の確認

//入力PDFの取得は「PDFを開く」を参照
doc.isSignatured(); //電子署名をされているか否かの取得

参考:

・プロパティの確認・設定

・文書情報の確認

『PDF CookBook(第4巻)7.1.1 文書情報の取得』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0049.html

・文書情報の設定

『PDF CookBook(第4巻)7.1.2 文書情報の設定』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0050.html

・カスタムプロパティの設定

『PDF CookBook(第4巻)7.2.1 独自の項目名を持つカスタムプロパティの設定』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0052.html

・カスタムプロパティの削除

『PDF CookBook(第4巻)7.2.2 カスタムプロパティの削除』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0053.html

・PDFのバージョンを確認

『PDF CookBook(第5巻)1.1.1 PDF 2.0ファイルの読み込み』

https://www.antenna.co.jp/ptl/cookbook/vol5/i03-0004.html

・リニアライズの有無の確認

『PDF CookBook(第4巻)7.3.5 Web表示用に最適化されているか否かを判定する』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0059.html

・PDF/Xかどうかの確認

『PDF CookBook(第4巻)7.3.2 PDF/Xかどうかを取得』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0057.html

・PDF/Aかどうかの確認

『PDF CookBook(第4巻)7.3.2 PDF/Aかどうかを取得』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0056.html

・電子署名の有無の確認

『PDF CookBook(第4巻)7.3.1 署名付きPDFかどうかを取得』

https://www.antenna.co.jp/ptl/cookbook/vol4/i02-0055.html

Please enter alt text.