10-1 PDFドキュメントの作成

概説:

『PDF Tool API』で実施可能な加工例:

空白PDFを新規に作成する

//入力PDFの取得は「PDFを開く」を参照
//ページコンテナ取得は「ページ情報を操作する」を参照

PtlPDFDocument newDoc = new PtlPDFDocument();   //新規ドキュメント用クラスの初期化
PtlPages pages = newDoc.getPages();             //新規ドキュメント用ページコンテナ
PtlPage newPage = new PtlPDFPage();             //新規ドキュメント用ページクラス
newPage.setViewBox(viewBoxRect);                //新規ページの表示矩形を指定

pages.append(newPage);

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

既存PDFの指定ページを抽出し新規PDFを作成する

//入力PDF docの情報取得は「PDFを開く」を参照
PtlPDFDocument doc_ext = new PtlPDFDocument(); //出力PDF用クラス
PtlPages pages_ext = doc_ext.getPages();       //出力PDF用ページコンテナ

pages_ext.append(doc, startPageNum, pagesToExtract, insertOption);

//出力用パラメータクラスoutputFileの取得は「PDFの保存」を参照

doc_ext.save(outputFile);

画像から新規ページを作成する

PtlPDFDocument doc = new PtlPDFDocument();               //出力PDF用クラスの新規作成
//ページコンテナ取得は「ページ情報を操作する」を参照

PtlParamDrawImage
paramDrawImage = new PtlParamDrawImage(); //出力画像描画パラメータ
PtlParamInput
inputImage = new PtlParamInput(imagePath);    //出力画像指定用クラス
PtlParamImagePage
paramImagePage = new PtlParamImagePage(); //画像でページを作るためのパラメータ
paramDrawImage.setImageStream(inputImage);
paramImagePage.setImage(paramDrawImage);
paramImagePage.setPaperType(PtlParamImagePage.PAPER_TYPE.PAPER_IMAGE_SIZE);
paramImagePage.setAlign(PtlParamImagePage.ALIGN.ALIGN_CENTER);
pages.append(paramImagePage);

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

参考:

『PDF Tool API』の解説本『PDF CookBook』では、本項に関連した内容として以下のようなプログラム例を提示しています。

・既存PDFの指定ページを抽出し新規PDFを作成する

『PDF CookBook(第1巻)1.1.3 ページの抽出』

https://www.antenna.co.jp/ptl/cookbook/vol1/i04-0006.html

・PDFを分割してそれぞれを別ファイルとして保存する

『PDF CookBook(第1巻)1.1.5 PDF文書の分割』

https://www.antenna.co.jp/ptl/cookbook/vol1/i04-0007.html

・白紙のページを文書末尾に追加して保存する

『PDF CookBook(第1巻)1.1.6 白紙ページの挿入』

https://www.antenna.co.jp/ptl/cookbook/vol1/i04-0009.html

・画像から新規ページを作成する

『PDF CookBook(第4巻)4.1.1 ページの作成』

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

Please enter alt text.