Agregar encabezados y pies de página en PDF usando C#

Las secciones de encabezado y pie de página en un documento muestran información del documento, como el título del documento, el logotipo, el encabezado del capítulo, los números de página, etc. Podemos agregar cualquier texto o imagen en los encabezados/pies de página del documento PDF mediante programación. En este artículo, aprenderemos cómo agregar encabezados y pies de página en documentos PDF usando C#.

En este artículo se tratarán los siguientes temas:

API de C# para agregar encabezados y pies de página en documentos PDF

Para agregar encabezados y pies de página en archivos PDF, usaremos Aspose.PDF para .NET API. Nos permite generar, modificar, convertir, renderizar, asegurar e imprimir documentos compatibles sin usar Adobe Acrobat. Descargue la DLL de la API o instálela usando NuGet.

Install-Package Aspose.PDF

Agregar texto en el encabezado de PDF usando C#

Podemos agregar texto en el encabezado de un documento PDF existente siguiendo los pasos que se detallan a continuación:

  1. En primer lugar, cargue un documento PDF utilizando la clase Documento con la ruta del archivo de entrada como argumento. Es la clase principal que representa un documento PDF y permite realizar diversas funcionalidades.
  2. A continuación, cree una instancia de la clase TextStamp con un texto para mostrar en el encabezado del documento.
  3. Luego, establezca varias propiedades como TopMargin, HorizontalAlignment y VerticalAlignment como Top, etc.
  4. Opcionalmente, configure Color de primer plano, Fuente, Estilo de fuente, Tamaño de fuente, Color de fondo, Ángulo de rotación y Nivel de zoom para el texto.
  5. Después de eso, recorra todas las páginas y agregue el encabezado usando el método Page.AddStamp() con el objeto TextStamp.
  6. Finalmente, llame al método Document.Save() con la ruta del archivo de salida como argumento para guardar el archivo de salida.

El siguiente ejemplo de código muestra cómo agregar texto en el encabezado de un documento PDF usando C#.

// Este ejemplo de código demuestra cómo agregar texto en el encabezado de un documento PDF existente.
// Cargue el documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// Crear encabezado
TextStamp textStamp = new TextStamp("Header Text");

// Establecer propiedades del sello
textStamp.TopMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Top;

// Especificar el estilo de fuente
textStamp.TextState.FontStyle = FontStyles.Bold;
textStamp.TextState.ForegroundColor = Color.Red;
textStamp.TextState.FontSize = 14;
textStamp.TextState.BackgroundColor = Color.Pink;
textStamp.TextState.Font = FontRepository.FindFont("Verdana");

// Agregar encabezado en todas las páginas
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(textStamp);
}

// Guardar el documento actualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Agregue texto en el encabezado de PDF usando C#.

Agregue texto en el encabezado de PDF usando C#.

Podemos agregar texto en el pie de página de los documentos PDF mediante programación siguiendo los pasos mencionados anteriormente. Sin embargo, debemos configurar BottomMargin y VerticalAlignment como Bottom para mostrar el texto en el pie de página.

El siguiente ejemplo de código muestra cómo agregar texto en el pie de página de un documento PDF usando C#.

// Este ejemplo de código demuestra cómo agregar texto en el pie de página de un documento PDF existente.
// Cargue el documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// Crear pie de página
TextStamp textStamp = new TextStamp("Footer Text");

// Establecer propiedades del sello
textStamp.BottomMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Bottom;

// Agregar pie de página en todas las páginas
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(textStamp);
}

// Guardar el documento actualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Agregue texto en el pie de página de PDF usando C#.

Agregue texto en el pie de página de PDF usando C#.

Insertar imagen en encabezado de PDF usando C#

También podemos agregar una imagen en el encabezado de un documento PDF existente siguiendo los pasos que se detallan a continuación:

  1. En primer lugar, cargue un documento PDF utilizando la clase Documento con la ruta del archivo de entrada como argumento.
  2. A continuación, cree una instancia de la clase ImageStamp con la ruta del archivo de imagen como argumento.
  3. Luego, establezca varias propiedades como TopMargin, HorizontalAlignment y VerticalAlignment como Top, etc.
  4. Después de eso, recorra todas las páginas y agregue el encabezado usando el método Page.AddStamp() con el objeto ImageStamp.
  5. Finalmente, llame al método Document.Save() con la ruta del archivo de salida como argumento para guardar el archivo de salida.

El siguiente ejemplo de código muestra cómo agregar una imagen en el encabezado de un documento PDF usando C#.

// Este ejemplo de código demuestra cómo agregar una imagen en el encabezado de un documento PDF existente.
// Cargue el documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// Crear encabezado
ImageStamp imageStamp = new ImageStamp(@"C:\Files\conholdate-logo.jpg");

// Establecer propiedades del sello
imageStamp.TopMargin = 10;
imageStamp.HorizontalAlignment = HorizontalAlignment.Center;
imageStamp.VerticalAlignment = VerticalAlignment.Top;

// Agregar encabezado en todas las páginas
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(imageStamp);
}

// Guardar el documento actualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Inserte la imagen en el encabezado del PDF usando C#.

Inserte la imagen en el encabezado del PDF usando C#.

Podemos agregar imágenes en el pie de página de los documentos PDF mediante programación siguiendo los pasos mencionados anteriormente. Sin embargo, debemos configurar BottomMargin y VerticalAlignment como Bottom para mostrar la imagen en el pie de página.

El siguiente ejemplo de código muestra cómo agregar una imagen en el pie de página de un documento PDF usando C#.

// Este ejemplo de código demuestra cómo agregar una imagen en el pie de página de un documento PDF existente.
// Cargue el documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// Crear pie de página
ImageStamp imageStamp = new ImageStamp(@"C:\Files\conholdate-logo.jpg");

// Establecer propiedades del sello
imageStamp.BottomMargin = 10;
imageStamp.HorizontalAlignment = HorizontalAlignment.Center;
imageStamp.VerticalAlignment = VerticalAlignment.Bottom;

// Agregar pie de página en todas las páginas
foreach (Page page in pdfDocument.Pages)
{
    page.AddStamp(imageStamp);
}

// Guardar el documento actualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Insertar imagen en pie de página de PDF usando C#.

Insertar imagen en pie de página de PDF usando C#.

Agregue diferentes encabezados y pies de página en diferentes páginas

Podemos agregar diferentes encabezados/pies de página para diferentes páginas en un solo documento PDF siguiendo los pasos que se detallan a continuación:

  1. En primer lugar, cargue un documento PDF utilizando la clase Documento con la ruta del archivo de entrada como argumento.
  2. A continuación, cree varias instancias de la clase ImageStamp con la ruta del archivo de imagen y/o la clase TextStamp con un texto para mostrar.
  3. Luego, establezca varias propiedades como TopMargin, HorizontalAlignment y VerticalAlignment como Top para el encabezado y BottomMargin y VerticalAlignment como Bottom para el pie de página.
  4. Después de eso, agregue un encabezado o pie de página usando el método Page.AddStamp() con el objeto ImageStamp o TextStamp para una página.
  5. Finalmente, llame al método Document.Save() con la ruta del archivo de salida como argumento para guardar el archivo de salida.

El siguiente ejemplo de código muestra cómo agregar varios encabezados y pies de página en un único documento PDF mediante C#.

// Este ejemplo de código demuestra cómo agregar diferentes encabezados para diferentes páginas en un solo documento PDF.
// Cargue el documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// Crea tres sellos
ImageStamp stamp1 = new ImageStamp(@"C:\Files\PDF\conholdate-logo.jpg");
TextStamp stamp2 = new TextStamp("Header Stamp 2");
TextStamp stamp3 = new TextStamp("Header Stamp 3");

// Establecer la alineación del sello para el sello1
stamp1.VerticalAlignment = VerticalAlignment.Top;
stamp1.HorizontalAlignment = HorizontalAlignment.Center;

// Establecer la alineación del sello para el sello2
stamp2.VerticalAlignment = VerticalAlignment.Top;
// Establezca la información de alineación horizontal para el sello como Alineado al centro
stamp2.HorizontalAlignment = HorizontalAlignment.Center;
// Establecer el factor de zoom para el objeto de sello
stamp2.Zoom = 10;

// Establecer la alineación del sello para el sello3
stamp3.VerticalAlignment = VerticalAlignment.Top;
// Establezca la información de alineación horizontal para el objeto de sello como Alineado al centro
stamp3.HorizontalAlignment = HorizontalAlignment.Center;
// Establecer el ángulo de rotación para el objeto de sello
stamp3.RotateAngle = 35;


// Agregue el primer sello en la primera página;
pdfDocument.Pages[1].AddStamp(stamp1);

// Agregar segundo sello en la segunda página;
pdfDocument.Pages[2].AddStamp(stamp2);

// Agregar tercer sello en la tercera página.
pdfDocument.Pages[3].AddStamp(stamp3);

// Guardar el documento actualizado
pdfDocument.Save(@"C:\Files\output.pdf");

Podemos agregar números de página en la sección de pie de página de los documentos PDF siguiendo los pasos que se detallan a continuación:

  1. En primer lugar, cargue un documento PDF utilizando la clase Documento con la ruta del archivo de entrada como argumento.
  2. A continuación, haga lo siguiente para cada página de la colección Document.Pages.
    • Cree una instancia de la clase TextStamp con un texto concatenado con el número de página actual.
    • Luego, establezca varias propiedades como BottomMargin, HorizontalAlignment y VerticalAlignment como Bottom, etc.
    • Después de eso, llame al método Page.AddStamp() con el objeto TextStamp para agregar el número de página en el pie de página.
  3. Finalmente, llame al método Document.Save() con la ruta del archivo de salida como argumento para guardar el archivo de salida.

El siguiente ejemplo de código muestra cómo agregar un número de página para cada página en el pie de página de un documento PDF usando C#.

// Este ejemplo de código muestra cómo agregar un número de página en el pie de página de cada página de un documento PDF. 
// Cargue el documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");

// Agregar pie de página en todas las páginas
foreach (Page page in pdfDocument.Pages)
{
    // Crear pie de página
    TextStamp textStamp = new TextStamp("Page " + page.Number + " of " + pdfDocument.Pages.Count + " pages.");
    
    // Establecer propiedades del sello
    textStamp.BottomMargin = 10;
    textStamp.HorizontalAlignment = HorizontalAlignment.Center;
    textStamp.VerticalAlignment = VerticalAlignment.Bottom;

    // Agregar sello
    page.AddStamp(textStamp);
}

// Guardar el documento actualizado
pdfDocument.Save(@"C:\Files\PDF\output.pdf");
Agregar números de página en el pie de página.

Agregue números de página en el pie de página del PDF usando C#.

Obtenga una licencia de API gratuita

Puede probar la API sin limitaciones de evaluación solicitando una licencia temporal gratuita.

Conclusión

En este artículo, hemos aprendido cómo agregar un texto o una imagen en los encabezados/pies de página de los archivos PDF existentes usando C#. También hemos visto cómo agregar diferentes encabezados en diferentes páginas de un documento PDF y cómo agregar un número de página en el pie de página de un documento. Además, puede obtener más información sobre Aspose.PDF para la API de .NET utilizando la documentación. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.

Ver también