phase1 : 基本なPDF出力の流れ

シンプルなPDF出力を通してPDF Generator Net Freeの使い方を説明します。


実行結果:tutorial_1.pdf

//ドキュメントオブジェクトを作成する
var doc = new PdfDocument();
//ページを追加する
doc.AddPage("page1");
//コンテンツ(線)を作成する
var content = new AbstractPdfContentItem[1];
content[0] = new Line(20, 400, 200, 500);
//ページにコンテンツを追加する
doc.AddContent("page1", content);
//ファイルを出力する
File.WriteAllBytes("tutorial_1.pdf", doc.GetBinary());

PDF Generator Net Free関連クラスの名前空間

PDF Generator Net Freeで使用するクラスのために、次のusing句を追加しておきます。 なお、System.IO名前空間は、PDFのファイル出力時に使用します。
//PDF Generator Net Free関連の名前空間
using PdfGeneratorNetFree;
using PdfGeneratorNetFree.PdfContentItem;
using PdfGeneratorNetFree.PgnEnum;
using PdfGeneratorNetFree.PgnStyle;
//ファイルIO関連の名前空間
using System.IO;

ドキュメントオブジェクトを作成する

まずPdfDocumentクラスのインスタンスを作成します。Documentクラスは生成するPDFドキュメントそのものを表します。
//ドキュメントオブジェクトを作成する
var doc = new PdfDocument();

ページを追加する

続けて、PdfDocumentのAddPageメソッドを呼び出し、PdfDocumentにページを追加します。 引数には任意のページ名を指定します。コンテンツを追加する際にこのページ名を使用します。
//ページを追加する
doc.AddPage("page1");

コンテンツ(線)を作成する

そして、表示したい文字や図といったコンテンツアイテムを作成します。 文字や図といったコンテンツは、AbstractPdfContentItemを派生したクラスで用意されています。 1ページ内のこれらのクラスを配列にしたものが、コンテンツとなります。

ここでは、線1本のみのコンテンツとします。始点と終点の2つの点を指定することにより、線を定義します。そのため、引数には次の4つの値が必要になります。
始点のX方向の値(pt), 始点のY方向の値(pt), 終点のX方向の値(pt), 終点のY方向の値(pt)

//コンテンツ(線)を作成する
var content = new AbstractPdfContentItem[1];
content[0] = new Line(20, 400, 200, 500);

ページにコンテンツを追加する

PdfDocumentのAddContentメソッドを呼び出し、先ほど作成したページにコンテンツを追加します。 引数の"page1"はページを追加したときに指定したページ名です。 また、同一ページに対して複数のコンテンツを追加することができます。
//ページにコンテンツを追加する
doc.AddContent("page1", content);

ファイルを出力する

最後にPdfDocumentのAddPageメソッドを呼び出し、PDFファイルのバイナリデータを取得します。 ここでは、取得したバイナリデータを"tutorial_1.pdf"というファイルに出力しています。
//ファイルを出力する
File.WriteAllBytes("tutorial_1.pdf", doc.GetBinary());
※ソースコードの色付けにgoogle-code-prettifyを使用しています。
inserted by FC2 system