ページ生成
ページ生成
Aspose.PDF FOSS for .NET は、PDF コンテンツを生成するための段落ベースのレイアウトエンジンを提供します。テーブル、フローティング ボックス、ヘッダー/フッター、スタンプを使用すると、コンテンツ ストリーム演算子を手動で構築することなく、構造化されたページを作成できます。
段落の追加
Page.Paragraphs はコンテンツ要素を追加するためのエントリーポイントです。
using var doc = new Document();
var page = doc.Pages.Add();
page.Paragraphs.Add(new TextFragment("Hello, PDF!"));
doc.Save("hello.pdf");テーブル
Table は行、セル、列幅、罫線、およびテキスト状態をサポートします。
var table = new Table();
table.ColumnWidths = "100 200 100";
var row = table.Rows.Add();
row.Cells.Add("Name");
row.Cells.Add("Description");
row.Cells.Add("Price");
page.Paragraphs.Add(table);セルの書式設定
Cells.Add は、ボーダー、パディング、ネストされたコンテンツを構成できる Cell を返します。
var cell = row.Cells.Add("Styled cell");
cell.Border = new BorderInfo(BorderSide.All, 0.5f);
cell.Margin = new MarginInfo(5, 5, 5, 5);フローティング ボックス
FloatingBox はページ上の絶対座標にコンテンツを配置します。
var box = new FloatingBox(200, 100);
box.Left = 72;
box.Top = 700;
box.Paragraphs.Add(new TextFragment("Positioned text"));
page.Paragraphs.Add(box);ヘッダーとフッター
HeaderFooter はページの上部または下部に繰り返しコンテンツを追加します。
var header = HeaderFooter.FromText("Document Title");
header.ApplyAsHeader(page);
var footer = HeaderFooter.FromText("Page {0}");
footer.ApplyAsFooter(page);ページスタンプ
PdfPageStamp は、1 つの PDF ページのコンテンツを別のページにオーバーレイします。
var stamp = new PdfPageStamp("watermark.pdf");
stamp.Put(page);ヒントとベストプラクティス
Table.ColumnWidthsを、レイアウト制御のためのスペース区切りのポイント値文字列として使用します。FloatingBoxは絶対位置指定に便利です —Tableと組み合わせて構造化コンテンツを作成します。HeaderFooter.FromTextはページ番号プレースホルダーとして{0}をサポートします。Saveを呼び出す前にすべての段落を追加してください — レイアウトエンジンは順番にコンテンツを処理します。BorderInfoを使用してテーブル、セル、フローティングボックスに枠線を追加します。
一般的な問題
| Issue | Cause | Fix |
|---|---|---|
| テーブルがページを超えている | 1ページに対して行が多すぎる | ライブラリが自動で改ページします。必要に応じて余白を調整してください |
| ヘッダーが表示されない | ApplyAsHeader called after Save | 保存する前にヘッダーを適用してください |
| FloatingBox が誤った位置にある | 座標は段落単位で左上から測定されます | 単位が期待通りであることを確認してください |
よくある質問
マルチページテーブルを作成できますか?
はい。テーブルが利用可能なページの高さを超えると、自動的に次のページに続きます。
テーブルセルに画像を追加するにはどうすればよいですか?
Image 段落を作成し、セルの Paragraphs コレクションに追加します。
配列からテーブルにデータをインポートできますか?
はい。Table.ImportArray を使用して、二次元配列からテーブルにデータを入力します。
API リファレンス概要
| クラス / メソッド | 説明 |
|---|---|
Paragraphs | ページ上の順序付けられたコンテンツ要素 |
Paragraphs.Add | 段落要素(テキスト、表、グラフなど)を追加 |
Table | 行、セル、列幅を持つグリッドレイアウト |
Table.ImportArray | 配列からテーブルを埋め込む |
Rows | テーブル内の行コレクション |
Cells | テーブル行内のセルコレクション |
BorderInfo | テーブル、セル、ボックスの境界線スタイル設定 |
FloatingBox | 絶対位置指定コンテンツコンテナ |
HeaderFooter | 繰り返しヘッダーまたはフッターコンテンツ |
HeaderFooter.FromText | テキストテンプレートからヘッダー/フッターを作成 |
PdfPageStamp | PDFページをスタンプとしてオーバーレイ |