ヘッダーとフッターの追加方法
PDFドキュメントのすべてのページの上部または下部にページ番号、会社のロゴ、または日付を含める必要がありますか? ヘッダーとフッターを使用すれば可能です! IronPDFを使用すると、C#プロジェクトでPDFにヘッダーとフッターを追加するのは非常に簡単です。
IronPDFを始めましょう
今日から無料トライアルでIronPDFをあなたのプロジェクトで使い始めましょう。
ヘッダーとフッターの追加方法
- C# ライブラリをダウンロードしてヘッダーとフッターを追加
- 既存のPDFを読み込むか、新しいPDFをレンダリングする
AddTextHeaders
メソッドとAddTextFooters
メソッドを使用して、テキストのヘッダーとフッターを追加します- HTML ヘッダーとフッターを追加するには
AddHtmlHeaders
およびAddHtmlFooters
メソッドを使用します - レンダリングオプションを設定して、レンダリング時にヘッダーとフッターを追加します。
テキストヘッダー/フッターの追加例
ヘッダー/フッターをテキストのみで作成するには、TextHeaderFooter オブジェクトをインスタンス化し、希望するテキストを追加してオブジェクトをPDFに追加します。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-add-textheaderfooter.cs
using IronPdf;
// Instantiate renderer and create PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
// Create text header
TextHeaderFooter textHeader = new TextHeaderFooter
{
CenterText = "This is the header!",
};
// Create text footer
TextHeaderFooter textFooter = new TextHeaderFooter
{
CenterText = "This is the footer!",
};
// Add text header and footer to the PDF
pdf.AddTextHeaders(textHeader);
pdf.AddTextFooters(textFooter);
pdf.SaveAs("addTextHeaderFooter.pdf");
または、レンダラーのレンダリングオプションを使用してヘッダー/フッターを直接追加することもできます。 これは、レンダリング処理中にテキストのヘッダーとフッターを追加します。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-render-with-textheaderfooter.cs
using IronPdf;
// Instantiate renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Create header and add to rendering options
renderer.RenderingOptions.TextHeader = new TextHeaderFooter
{
CenterText = "This is the header!",
};
// Create footer and add to rendering options
renderer.RenderingOptions.TextFooter = new TextHeaderFooter
{
CenterText = "This is the footer!",
};
// Render PDF with header and footer
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
pdf.SaveAs("renderWithTextHeaderFooter.pdf");
テキストと区切りプロパティをカスタマイズする
TextHeaderFooter クラスでは、左、中央、右の位置にテキストを設定することができます。 さらに、関連するプロパティを設定することで、テキストのフォントタイプおよびサイズをカスタマイズし、カスタムカラーの区切り線を追加することができます。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-textheaderfooter-options.cs
using IronPdf;
using IronPdf.Font;
using IronSoftware.Drawing;
// Create text header
TextHeaderFooter textHeader = new TextHeaderFooter
{
CenterText = "Center text", // Set the text in the center
LeftText = "Left text", // Set left-hand side text
RightText = "Right text", // Set right-hand side text
Font = IronSoftware.Drawing.FontTypes.ArialBoldItalic, // Set font
FontSize = 16, // Set font size
DrawDividerLine = true, // Draw Divider Line
DrawDividerLineColor = Color.Red, // Set color of divider line
};
出力テキストヘッダー

利用可能なフォントタイプは、IronPDF APIリファレンスでデフォルトで確認できます。
ヘッダー/フッターのテキストの余白を設定
デフォルトでは、IronPDFのテキストのヘッダーとフッターには事前定義された余白が設定されています。 PDFドキュメントの全幅にテキストヘッダーを広げたい場合、マージン値を0に指定できます。これは、AddTextHeaders
およびAddTextFooters
関数で直接マージンを設定するか、ChromePdfRendererのRenderingOptionsを使用して達成できます。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-textheaderfooter-margins.cs
using IronPdf;
// Instantiate renderer and create PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
TextHeaderFooter header = new TextHeaderFooter
{
CenterText = "This is the header!",
};
TextHeaderFooter footer = new TextHeaderFooter
{
CenterText = "This is the footer!",
};
pdf.AddTextHeaders(header, 35, 30, 25); // Left Margin = 35, Right Margin = 30, Top Margin = 25
pdf.AddTextFooters(footer, 35, 30, 25); // Margin values are in mm
ChromePdfRenderer
のRenderingOptions
にマージン値を追加すると、ヘッダーとフッターにもこれらのマージンが適用されます。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-rendering-options-margins.cs
using IronPdf;
// Instantiate renderer and create PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
TextHeaderFooter header = new TextHeaderFooter
{
CenterText = "This is the header!",
};
TextHeaderFooter footer = new TextHeaderFooter
{
CenterText = "This is the footer!",
};
// Margin values are in mm
renderer.RenderingOptions.MarginRight = 30;
renderer.RenderingOptions.MarginLeft = 30;
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.All;
// Add header and footer to renderer
renderer.RenderingOptions.TextHeader = header;
renderer.RenderingOptions.TextFooter = footer;
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
動的マージンサイズ設定
ヘッダーの内容がドキュメントごとに異なると、静的なマージンが問題を引き起こしました。 ヘッダーとフッターマージンの調整だけでなく、異なるヘッダーとフッターのサイズに対応するためにメインHTMLマージンの調整も必要でした。 したがって、コンテンツに基づいてヘッダーとフッターの高さが動的に調整される「動的マージンサイズ」機能を実装しました。これにより、メインHTMLもそれに応じて再配置されます。 以下のコードを使用して機能を確認してください:
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-dynamic-marigns.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
HtmlFragment = @"<div style='background-color: #4285f4; color: white; padding: 15px; text-align: center;'>
<h1>Example header</h1> <br>
<p>Header content</p>
</div>",
// Enable the dynamic height feature
MaxHeight = HtmlHeaderFooter.FragmentHeight,
};
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>");
pdf.SaveAs("dynamicHeaderSize.pdf");
テキスト ヘッダー/フッターへのメタデータ
テキストにプレースホルダ文字列を組み込むことで、ページ番号、日付、PDFのタイトルなどのメタデータを簡単に追加できます。 以下は、利用可能なすべてのメタデータオプションです:
- {page}: 現在のページ番号。
- {total-pages}: 総ページ数。
- {url}:PDFドキュメントがレンダリングされたWeb URL。
- {date}: 現在の日付。
- {time}: 現在の時刻。
- {html-title}: HTMLでtitleタグに指定されたHTMLタイトル。
-
{pdf-title}: PDFメタデータで指定されたPDFタイトル。
{page}と{total-pages}について詳しく知るには、IronPDF Page Numbers Guideのハウツーガイドをご覧ください。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-mail-merge.cs
using IronPdf;
// Create header and footer
TextHeaderFooter textHeader = new TextHeaderFooter
{
CenterText = "{page} of {total-pages}",
LeftText = "Today's date: {date}",
RightText = "The time: {time}",
};
TextHeaderFooter textFooter = new TextHeaderFooter
{
CenterText = "Current URL: {url}",
LeftText = "Title of the HTML: {html-title}",
RightText = "Title of the PDF: {pdf-title}",
};
HTMLヘッダー/フッター追加の例
HTMLとCSSを利用してヘッダー/フッターをさらにカスタマイズできます。 HTMLヘッダー/フッターを作成するには、HtmlHeaderFooterクラスを使用します。 CSSスタイルシートからCSSスタイルを保持したい場合は、クラスプロパティでLoadStylesAndCSSFromMainHtmlDocument = true
を設定してください。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-htmlheaderfooter.cs
using IronPdf;
string headerHtml = @"
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a header!</h1>
</body>
</html>";
string footerHtml = @"
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a footer!</h1>
</body>
</html>";
// Instantiate renderer and create PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
// Create header and footer
HtmlHeaderFooter htmlHeader = new HtmlHeaderFooter
{
HtmlFragment = headerHtml,
LoadStylesAndCSSFromMainHtmlDocument = true,
};
HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter
{
HtmlFragment = footerHtml,
LoadStylesAndCSSFromMainHtmlDocument = true,
};
// Add to PDF
pdf.AddHtmlHeaders(htmlHeader);
pdf.AddHtmlFooters(htmlFooter);
テキストのヘッダーやフッターと同様に、上記に示されたAddHtmlHeaders
およびAddHtmlFooters
メソッドには、事前定義されたマージンが適用されています。 カスタムマージンを適用するには、指定されたマージン値を持つ関数のオーバーロードを使用します。 コンテンツ全体にマージンなしで広げるには、オーバーロード関数のマージンを0に設定します。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-htmlheaderfooter-margins.cs
// Add to PDF
pdf.AddHtmlHeaders(header, 0, 0, 0);
pdf.AddHtmlFooters(footer, 0, 0, 0);
ヘッダーとフッターの追加は、レンダラーのレンダリングオプションを通じて直接行うこともできます。 レンダリングプロセス中にHTMLヘッダーとフッターを追加します。
:path=/static-assets/pdf/content-code-examples/how-to/headers-and-footers-render-with-htmlheaderfooter.cs
using IronPdf;
string headerHtml = @"
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a header!</h1>
</body>
</html>";
string footerHtml = @"
<html>
<head>
<link rel='stylesheet' href='style.css'>
</head>
<body>
<h1>This is a footer!</h1>
</body>
</html>";
// Instantiate renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Create header and footer and add to rendering options
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
HtmlFragment = headerHtml,
LoadStylesAndCSSFromMainHtmlDocument = true,
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
HtmlFragment = footerHtml,
LoadStylesAndCSSFromMainHtmlDocument = true,
};
// Render PDF with header and footer
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");
テキストとHTMLヘッダー/フッターの選択
テキストヘッダー/フッターとHTMLヘッダー/フッターの選択においては、トレードオフを考慮してください。 より速いPDFレンダリングを優先する場合は、テキストヘッダー/フッターを選択してください。 一方、カスタマイズ可能性やスタイリングが重要であれば、HTMLヘッダー/フッターを選択してください。 HTMLヘッダー/フッターがあまりコンテンツを含まない場合、テキストとHTMLヘッダー/フッターのレンダリング時間の違いはそれほど重要ではありません。 しかし、HTMLヘッダー/フッター内のアセットのサイズと数が増加すると、それに伴って増加します。