MaxHeight vs UseMarginToHeaderAndFooter

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

Quando você renderiza um PDF com cabeçalhos e rodapés, duas propriedades comumente se confundem: MaxHeight e UseMarginToHeaderAndFooter. Eles controlam coisas diferentes, e misturá-los leva a conteúdo cortado ou sobreposições inesperadas. Aqui está o que cada um faz e quando usá-lo.

MaxHeight

Define a altura máxima alocada para a seção de cabeçalho ou rodapé no PDF renderizado. Por padrão, o IronPDF ajusta essa altura dinamicamente para que todo o conteúdo do cabeçalho ou rodapé se encaixe.

Reduzir MaxHeight manualmente corta ou oculta qualquer conteúdo que exceda o valor definido. Indo na outra direção, um valor superdimensionado não aumenta o cabeçalho ou rodapé visível; o IronPDF recorre ao seu dimensionamento padrão para manter o layout estável.

PDF renderizado com MaxHeight 10 onde o texto do cabeçalho está cortado

PDF renderizado com MaxHeight 15 onde o texto do cabeçalho está parcialmente cortado

PDF renderizado com MaxHeight 50 mostrando o cabeçalho completo

PDF renderizado com MaxHeight 100 mostrando tamanho idêntico ao padrão

ObserveMaxHeight não adiciona nenhuma margem entre o cabeçalho ou rodapé e o conteúdo principal do documento. Apenas limita a altura da seção.

UseMarginToHeaderAndFooter

Cabeçalhos e rodapés têm seu próprio manuseio de layout, separados das margens de conteúdo definidas através de ChromePdfRenderOptions. Para espaçamento preciso, defina margens diretamente no HTML do objeto Header ou Footer:

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

Estilizar o cabeçalho dentro de seu próprio HtmlFragment mantém o espaço previsível, já que as margens ficam com o conteúdo a que se aplicam.

A propriedade UseMarginToHeaderAndFooter estende as margens do conteúdo principal (como esquerda e direita) para as seções de cabeçalho e rodapé. Use-a com cuidado: aplicar margens verticais (superior e inferior) dessa forma geralmente produz conteúdo sobreposto e outras surpresas.

  • Recomendado: Aplique-a apenas para alinhamento de margens esquerda e direita quando necessário, ou combine-a com o método AddHtmlHeaderFooter() quando UseMargins.All for necessário.
  • Evite: Usá-la para margens superior e inferior se você não tiver testado o layout resultante.
Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 20,296,129 | Versão: 2026.7 recém-lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronPdf
executar um exemplo Veja seu HTML se transformar em um PDF.