Añadir encabezados/pies de página en páginas específicas
utilizando IronPdf;
using System.Collections.Generic;
using System.Linq;
// Instanciar Renderer
var renderer = new IronPdf.ChromePdfRenderer();
var multi_page_html = @"
<p>Esta es la 1ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 2ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 3ra página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 4ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 5ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la página 6</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la séptima página</p>";
// Crear un PDF o cargar un PDF existente usando IronPdf.PdfDocument.Load()
var pdfdoc = renderer.RenderHtmlAsPdf(multi_page_html);
// Crear un encabezado
var encabezado = new HtmlHeaderFooter();
header.HtmlFragment = "ESTE ES EL ENCABEZADO {page} de {total-pages}";
// Crear un rango de página 0 .. 7
var todosLosÍndicesDePágina = Enumerable.Range(0, pdfdoc.PageCount);
// Ejemplo 1
// Aplicar encabezado solo a las páginas de índice par. (el número de página será impar porque el índice comienza en 0 pero el número de página comienza en 1)
var evenPageIndexes = allPageIndexes.Where(i => i % 2 == 0);
pdfdoc.AddHtmlHeaders(header, 1, evenPageIndexes);
pdfdoc.SaveAs("EvenPages.pdf");
Ejemplo 2
//Aplicar encabezado solo a los índices de página impares. (el número de página será un número par porque el índice comienza en 0 pero el número de página comienza en 1)
var índicesDePáginaImpar = todosLosÍndicesDePágina.Where(i => i % 2 != 0);
pdfdoc.AddHtmlHeaders(header, 1, oddPageIndexes);
pdfdoc.SaveAs("OddPages.pdf");
// Ejemplo 3
// Aplicar encabezado solo a la última página.
var lastPageIndex = new List<int>() { pdfdoc.PageCount - 1 };
pdfdoc.AddHtmlHeaders(header, 1, lastPageIndex);
pdfdoc.SaveAs("LastPageOnly.pdf");
Ejemplo 4
// Aplicar encabezado solo a la primera página.
var firstPageIndex = new List<int>() { 0 };
pdfdoc.AgregarEncabezadosHtml(header, 1, firstPageIndex);
pdfdoc.SaveAs("FirstPageOnly.pdf");
Ejemplo 5
// Omitir la primera página.
var omitirPrimeras5Paginas = allPageIndexes.Skip(1);
pdfdoc.AgregarEncabezadosHtml(header, 1, omitirPrimerosÍndicesDePágina5);
pdfdoc.SaveAs("SkipFirstPage.pdf");
// Example 6
// Omite la primera página y marca la segunda página como 1.
var saltarPrimerosÍndicesDePágina6 = allPageIndexes.Skip(1);
pdfdoc.AddHtmlHeaders(header, 0, skipFirstPageIndexes6);
pdfdoc.SaveAs("SkipFirstPageAndDontCountIt.pdf");
Private IronPdf As utilizando
Imports System.Collections.Generic
Imports System.Linq
' Instanciar Renderer
Private renderer = New IronPdf.ChromePdfRenderer()
Private multi_page_html = "
<p>Esta es la 1ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 2ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 3ra página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 4ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la 5ª página</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la página 6</p>
<div style = 'page-break-after: always;' ></div>
<p>Esta es la séptima página</p>"
' Crear un PDF o cargar un PDF existente usando IronPdf.PdfDocument.Load()
Private pdfdoc = renderer.RenderHtmlAsPdf(multi_page_html)
' Crear un encabezado
Private encabezado = New HtmlHeaderFooter()
header.HtmlFragment = "ESTE ES EL ENCABEZADO {page} de {total-pages}"
' Crear un rango de página 0 .. 7
Dim todosLosÍndicesDePágina = Enumerable.Range(0, pdfdoc.PageCount)
' Ejemplo 1
' Aplicar encabezado solo a las páginas de índice par. (el número de página será impar porque el índice comienza en 0 pero el número de página comienza en 1)
Dim evenPageIndexes = allPageIndexes.Where(Function(i) i Mod 2 = 0)
pdfdoc.AddHtmlHeaders(header, 1, evenPageIndexes)
pdfdoc.SaveAs("EvenPages.pdf")
Ejemplo 2 var índicesDePáginaImpar = todosLosÍndicesDePágina.Where(Function(i) i Mod 2 <> 0)
pdfdoc.AddHtmlHeaders(header, 1, oddPageIndexes)
pdfdoc.SaveAs("OddPages.pdf")
' Ejemplo 3
' Aplicar encabezado solo a la última página.
Dim lastPageIndex = New List(Of Integer)() From {pdfdoc.PageCount - 1}
pdfdoc.AddHtmlHeaders(header, 1, lastPageIndex)
pdfdoc.SaveAs("LastPageOnly.pdf")
Ejemplo 4 var firstPageIndex = New List(Of Integer)() From {0}
pdfdoc.AgregarEncabezadosHtml(header, 1, firstPageIndex)
pdfdoc.SaveAs("FirstPageOnly.pdf")
Ejemplo 5 var omitirPrimeras5Paginas = allPageIndexes.Skip(1)
pdfdoc.AgregarEncabezadosHtml(header, 1, omitirPrimerosÍndicesDePágina5)
pdfdoc.SaveAs("SkipFirstPage.pdf")
' Example 6
' Omite la primera página y marca la segunda página como 1.
Dim saltarPrimerosÍndicesDePágina6 = allPageIndexes.Skip(1)
pdfdoc.AddHtmlHeaders(header, 0, skipFirstPageIndexes6)
pdfdoc.SaveAs("SkipFirstPageAndDontCountIt.pdf")
Install-Package IronPdf
Añadir encabezados/pies de página en páginas específicas
IronPDF permite añadir encabezados y pies de página a los archivos PDF existentes.
También podemos utilizar métodos de IronPDF para añadir encabezados y pies de página personalizados a documentos PDF antiguos o nuevos. Para hacerlo, esperamos hasta después de que se haya renderizado el PDF utilizando los siguientes métodos: