MaxHeightとUseMarginToHeaderAndFooterの比較

This article was translated from English: Does it need improvement?
Translated
View the article in English

ヘッダーとフッターを含むPDFをレンダリングする際に、よく混同される2つのプロパティがあります:UseMarginToHeaderAndFooter。 これらは異なることを制御しており、混同すると内容が切り取られたり予期しない重なりが発生したりします。 それぞれが何をするのか、そしてどのような状況で使用するのかを以下に示します。

最大高さ

MaxHeightは、レンダリングされたPDFのヘッダーまたはフッターセクションに割り当てられた最大高さを設定します。 IronPDFはデフォルトで、この高さを動的に調整して、すべてのヘッダーまたはフッターのコンテンツが収まるようにします。

MaxHeightを手動で低く設定すると、設定値を超えるコンテンツが切り取られるか隠されます。 逆に、オーバーサイズの値は、目に見えるヘッダーやフッターを拡大しません; IronPDFは、レイアウトを安定させるためにデフォルトのサイズに戻ります。

ヘッダーテキストが切り取られたMaxHeight 10のレンダリングされたPDF

ヘッダーテキストが部分的に切り取られたMaxHeight 15のレンダリングされたPDF

MaxHeight 50で完全なヘッダーを表示するレンダリングされたPDF

デフォルトと同じサイズを表示するMaxHeight 100のレンダリングされたPDF

ご注意MaxHeightは、ヘッダーまたはフッターとメインドキュメントコンテンツの間にマージンを追加しません。 それはそのセクションの高さを制限するだけです。

ヘッダーとフッターにマージンを使用する

ヘッダーとフッターは、ChromePdfRenderOptionsを通じて設定されたコンテンツマージンとは別に独自のレイアウト処理を持っています。 正確な間隔を設定するには、FooterオブジェクトのHTML内に直接マージンを定義してください。

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = @"<div style=""margin-top: 20px; margin-right: 40px; margin-bottom: 10px; margin-left: 30px; background-color: lightblue;"">
   This is Header
  </div>",
  DrawDividerLine = true,
  MaxHeight = 30
};
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = @"<div style=""margin-top: 20px; margin-right: 40px; margin-bottom: 10px; margin-left: 30px; background-color: lightblue;"">
   This is Header
  </div>",
  DrawDividerLine = true,
  MaxHeight = 30
};
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
Dim renderer = New ChromePdfRenderer()
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
    .HtmlFragment = "<div style=""margin-top: 20px; margin-right: 40px; margin-bottom: 10px; margin-left: 30px; background-color: lightblue;"">
   This is Header
  </div>",
    .DrawDividerLine = True,
    .MaxHeight = 30
}
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
$vbLabelText   $csharpLabel

ヘッダーを独自のHtmlFragment内でスタイリングすると、マージンが適用されるコンテンツと一緒に存在するため、間隔が予測可能になります。

UseMarginToHeaderAndFooterプロパティは、左と右のようなメインコンテンツのマージンをヘッダーとフッターセクションに拡張します。 慎重に使用してください: this の方法で垂直マージン(上と下)を適用すると、しばしばコンテンツが重なったり、他の驚きを引き起こします。

  • 推奨事項: 必要なときに左と右のマージン調整のみを適用するか、UseMargins.Allが必要な場合に適用してください。
  • 避けるべき: 結果のレイアウトをテストしていない限り、上部と下部のマージンに使用することは避けてください。
Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 20,296,129 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronPdf
サンプルを実行するHTML が PDF に変換されるのを確認します。