MaxHeight vs UseMarginToHeaderAndFooter
當您生成帶有頁首和頁尾的PDF時,兩個屬性通常會被混淆:UseMarginToHeaderAndFooter。 它們控制不同的事物,將它們混合會導致內容被剪切或意外重疊。 以下是每個屬性的功能及其適用時機。
MaxHeight
MaxHeight設置渲染PDF時頁首或頁尾區域的最大高度。 預設情況下,IronPDF會動態調整此高度,以適應所有頁首或頁尾內容。
手動降低MaxHeight會剪切或隱藏超出您設定值的內容。 反之,過大的值不會增大可見的頁首或頁尾; IronPDF會回退到其預設尺寸,以保持版面穩定。




UseMarginToHeaderAndFooter
頁首和頁尾有其自己的佈局處理,與通過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>")
在其自己的HtmlFragment中設計頁首可保持間距可預測,因為邊距與其所適用的內容共存。
UseMarginToHeaderAndFooter屬性將主要內容的邊距(例如左右)延伸至頁首和頁尾區域。 謹慎使用:以這種方式應用垂直邊距(上下)通常會導致內容重疊及其他意外情況。
- 建議: 僅在需要時應用於左右邊距對齊,或者當需要
AddHtmlHeaderFooter()方法搭配使用。 - 避免: 在未測試結果佈局的情況下使用於上下邊距。

