USO DE IRONPDF

Cómo añadir PDF Stamper en C#

Actualizado 29 de noviembre, 2023
Compartir:

Estampar texto e imágenes en un PDF consiste en superponer contenido adicional a un documento PDF existente. Este contenido, a menudo denominado "sello", puede ser texto, imágenes o una combinación de ambos. Normalmente, los usuarios añaden información, etiquetas, marcas de agua o anotaciones a un PDF mediante sellos.

IronPDF ofrece una solución versátil y fácil de usar para personalizar el contenido de los PDF y satisfacer distintas necesidades. La Clase Abstracta Stamper es un componente clave en los métodos de estampación de IronPDF, para una gama de clases de estampación especializadas, cada una diseñada para propósitos específicos.

  1. TextStamper: TextStamper es su solución para añadir texto descriptivo a los PDF. Tanto si está mejorando un documento existente, colocando texto en la misma página o incorporando detalles de otros documentos PDF, este estampador le permite personalizar sus archivos con descripciones de archivo e información.
  2. ImageStamper: ImageStamper es la herramienta perfecta para colocar imágenes en tus PDF. Ya sea un logotipo para la descripción de un archivo, una ilustración para un documento existente o un elemento visual para la misma página u otro documento PDF, este estampador garantiza una integración perfecta de las imágenes.
  3. HtmlStamper: HtmlStamper lleva la personalización al siguiente nivel, permitiéndole estampar contenido HTML en sus PDF. Esto incluye la creación de elementos dinámicos como contenido interactivo, descripciones y especificaciones de archivos, lo que proporciona una flexibilidad que va más allá de la personalización tradicional de PDF.
  4. BarcodeStamper para estampar códigos de barras: BarcodeStamper simplifica el proceso de añadir códigos de barras a sus PDF. Ya sea con fines de seguimiento en un documento firmado, un archivo temporal o un archivo adjunto, este estampador garantiza una integración eficaz de los códigos de barras en sus PDF.
  5. BarcodeStamper para estampar códigos QR: El BarcodeStamper se especializa en la colocación de códigos QR, así en sus archivos PDF. Perfecta para crear contenidos interactivos o archivos adjuntos, esta estampadora permite incrustar códigos QR en la misma página o en otros documentos PDF, garantizando un fácil acceso a información adicional.

    Estas clases especializadas de estampadores facilitan a los usuarios la mejora sencilla de documentos PDF con diversos elementos, desde texto básico hasta intrincados diseños HTML y códigos de barras dinámicos. Este artículo explorará las funcionalidades de tres estampadoras principales: TextStamper, ImageStamper y HTMLStamper. HTMLStamper es especialmente potente porque puede hacer uso de todas las características de HTML, junto con el estilo CSS, añadiendo una capa extra de versatilidad al proceso de estampación.

Cómo estampar texto e imágenes en PDF

  1. Descargue la biblioteca C# para estampar texto e imágenes.
  2. Cree y configure la clase de estampador deseada.
  3. Utilice el método 'ApplyStamp' para aplicar el sello al PDF.
  4. Aplica múltiples sellos utilizando el método 'ApplyMultipleStamps'.
  5. Especifique las páginas concretas a las que se aplicarán los sellos.

Configuración y aplicación de sellos de texto en PDF

En primer lugar, cree un objeto de la clase TextStamper para poder estampar texto en los PDF. El objeto de esta clase contiene todas las configuraciones para especificar cómo se presenta el estampador de texto. Pasa el objeto textStamper al método 'ApplyStamp'. La propiedad Texto define el contenido que se mostrará en el PDF.

Además, es posible especificar la familia y el estilo de la fuente, así como la ubicación del sello. Esta personalización se extiende a los elementos interactivos, las descripciones de los archivos y el contenido existente en el mismo PDF o en otros. A continuación, exporte el PDF con el nombre de archivo real.

Al finalizar las configuraciones, exporte el archivo PDF de salida con el nombre de archivo designado, encapsulando todas las configuraciones y proporcionando un toque profesional a sus documentos.

using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear estampador de texto
TextStamper textStamper = new TextStamper()
{
    Text = "Text Stamper!",
    FontFamily = "Bungee Spice",
    UseGoogleFont = true,
    FontSize = 30,
    IsBold = true,
    IsItalic = true,
    VerticalAlignment = VerticalAlignment.Top,
};

//  Estampar el texto
pdf.ApplyStamp(textStamper);

pdf.SaveAs("stampText.pdf");
using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear estampador de texto
TextStamper textStamper = new TextStamper()
{
    Text = "Text Stamper!",
    FontFamily = "Bungee Spice",
    UseGoogleFont = true,
    FontSize = 30,
    IsBold = true,
    IsItalic = true,
    VerticalAlignment = VerticalAlignment.Top,
};

//  Estampar el texto
pdf.ApplyStamp(textStamper);

pdf.SaveAs("stampText.pdf");
Imports IronPdf
Imports IronPdf.Editing

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")

'  Crear estampador de texto
Private textStamper As New TextStamper() With {
	.Text = "Text Stamper!",
	.FontFamily = "Bungee Spice",
	.UseGoogleFont = True,
	.FontSize = 30,
	.IsBold = True,
	.IsItalic = True,
	.VerticalAlignment = VerticalAlignment.Top
}

'  Estampar el texto
pdf.ApplyStamp(textStamper)

pdf.SaveAs("stampText.pdf")
VB   C#

Configuración y aplicación de sellos de imagen en PDF

De forma similar al estampador de texto, cree un objeto a partir de la clase ImageStamper y, a continuación, utilice la función Aplicar sello para aplicar la imagen al documento. El segundo parámetro de este método también admite un índice de página, lo que permite aplicar el sello a una o varias páginas. Esta instancia específica puede indicar al sistema que aplique la imagen como sello, en particular en la primera página del PDF.

Todos los índices de páginas siguen una indexación basada en cero.

using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear estampador de imágenes
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    VerticalAlignment = VerticalAlignment.Top,
};

//  Estampar la imagen
pdf.ApplyStamp(imageStamper, 0);

pdf.SaveAs("stampImage.pdf");
using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear estampador de imágenes
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    VerticalAlignment = VerticalAlignment.Top,
};

//  Estampar la imagen
pdf.ApplyStamp(imageStamper, 0);

pdf.SaveAs("stampImage.pdf");
Imports IronPdf
Imports IronPdf.Editing

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")

'  Crear estampador de imágenes
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}

'  Estampar la imagen
pdf.ApplyStamp(imageStamper, 0)

pdf.SaveAs("stampImage.pdf")
VB   C#

Aplicar varios sellos

Para añadir varios sellos a un documento, utilice el botón aplicar sellos múltiples en IronPDF pasando una matriz de estampadores. Te permite añadir varios elementos, como texto, imágenes o etiquetas, de una sola vez. En este ejemplo se crearon dos sellos de texto con texto y alineaciones diferentes, el comando pdf.ApplyMultipleStamps aplica ambos sellos al PDF, y el documento final se guarda como multipleStamps.pdf. Este método agiliza el proceso de añadir varios sellos, proporcionando una forma cómoda de mejorar su PDF con varios elementos, ya sea en la misma página, en otro PDF o incluso en una página en blanco.

using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear dos sellos de texto
TextStamper stamper1 = new TextStamper()
{
    Text = "Text stamp 1",
    VerticalAlignment = VerticalAlignment.Top,
    HorizontalAlignment = HorizontalAlignment.Left,
};

TextStamper stamper2 = new TextStamper()
{
    Text = "Text stamp 2",
    VerticalAlignment = VerticalAlignment.Top,
    HorizontalAlignment = HorizontalAlignment.Right,
};

Stamper [] stampersToApply = { stamper1, stamper2 };

//  Aplicar varios sellos
pdf.ApplyMultipleStamps(stampersToApply);

pdf.SaveAs("multipleStamps.pdf");
using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear dos sellos de texto
TextStamper stamper1 = new TextStamper()
{
    Text = "Text stamp 1",
    VerticalAlignment = VerticalAlignment.Top,
    HorizontalAlignment = HorizontalAlignment.Left,
};

TextStamper stamper2 = new TextStamper()
{
    Text = "Text stamp 2",
    VerticalAlignment = VerticalAlignment.Top,
    HorizontalAlignment = HorizontalAlignment.Right,
};

Stamper [] stampersToApply = { stamper1, stamper2 };

//  Aplicar varios sellos
pdf.ApplyMultipleStamps(stampersToApply);

pdf.SaveAs("multipleStamps.pdf");
Imports IronPdf
Imports IronPdf.Editing

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")

'  Crear dos sellos de texto
Private stamper1 As New TextStamper() With {
	.Text = "Text stamp 1",
	.VerticalAlignment = VerticalAlignment.Top,
	.HorizontalAlignment = HorizontalAlignment.Left
}

Private stamper2 As New TextStamper() With {
	.Text = "Text stamp 2",
	.VerticalAlignment = VerticalAlignment.Top,
	.HorizontalAlignment = HorizontalAlignment.Right
}

Private stampersToApply() As Stamper = { stamper1, stamper2 }

'  Aplicar varios sellos
pdf.ApplyMultipleStamps(stampersToApply)

pdf.SaveAs("multipleStamps.pdf")
VB   C#

Especificar la ubicación del sello en un documento PDF

Para definir la colocación del Sello, utilice una cuadrícula de 3x3 con tres columnas horizontales y tres filas verticales. Tiene opciones de alineación horizontal: izquierda, centro y derecha, y vertical: arriba, en medio y abajo. Puedes ajustar los desplazamientos horizontal y vertical para mayor precisión en cada posición. Consulte la imagen siguiente para ver una representación visual de este concepto.

Cómo añadir PDF Stamper en C#, Figura 1: Posicionamiento de PDF stamper

Posicionamiento de la estampadora PDF

  • AlineaciónHorizontal: La alineación horizontal del Sello con respecto a la página.
  • AlineaciónVertical: La alineación vertical del sello con respecto a la página.
  • HorizontalOffset: El desplazamiento horizontal. El valor por defecto es 0, y la unidad por defecto es IronPdf.Editing.MeasurementUnit.Percentage. Los valores positivos indican un desplazamiento hacia la derecha, mientras que los negativos indican un desplazamiento hacia la izquierda.
  • VerticalOffset: El desplazamiento vertical. El valor por defecto es 0, y la unidad por defecto es IronPdf.Editing.MeasurementUnit.Percentage. Los valores positivos indican un desplazamiento hacia abajo, mientras que los negativos indican un desplazamiento hacia arriba.

    Para especificar las propiedades HorizontalOffset y VerticalOffset, cree una instancia de la propiedad longitud clase. La unidad de medida por defecto para Length es un porcentaje, pero también puede utilizar unidades de medida como pulgadas, milímetros, centímetros, píxeles y puntos.

using IronPdf.Editing;

//  Crear estampador de texto
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    HorizontalAlignment = HorizontalAlignment.Center,
    VerticalAlignment = VerticalAlignment.Top,

    //  Especifique los desplazamientos
    HorizontalOffset = new Length(10),
    VerticalOffset = new Length(10),
};
using IronPdf.Editing;

//  Crear estampador de texto
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    HorizontalAlignment = HorizontalAlignment.Center,
    VerticalAlignment = VerticalAlignment.Top,

    //  Especifique los desplazamientos
    HorizontalOffset = new Length(10),
    VerticalOffset = new Length(10),
};
Imports IronPdf.Editing

'  Crear estampador de texto
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {
	.HorizontalAlignment = HorizontalAlignment.Center,
	.VerticalAlignment = VerticalAlignment.Top,
	.HorizontalOffset = New Length(10),
	.VerticalOffset = New Length(10)
}
VB   C#

Configuración y aplicación de sellos HTML en PDF

Hay otra clase de estampador que se puede utilizar para estampar tanto texto como imágenes. En HtmlStamper puede renderizar diseños HTML con estilos CSS y estamparlos en el documento PDF. La propiedad InnerHtmlBaseUrl se utiliza para especificar la URL base para los activos de la cadena HTML, como los archivos CSS y de imagen.

La clase HtmlStamper se aplica al PDF. Este objeto estampador incluye una imagen y un texto, y puede definirlos en el fragmento HTML que se va a estampar en su PDF. Todas las referencias externas a archivos JavaScript, CSS e imágenes serán relativas a la propiedad Html interna. Este código le permite personalizar el PDF de acuerdo con las especificaciones del archivo mencionadas en el contenido HTML. Por último, el PDF modificado se guarda con el nombre de archivo 'stampHtml.pdf'.

using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear estampador HTML
HtmlStamper htmlStamper = new HtmlStamper()
{
    Html = @"<img src='https://ironpdf.com/img/svgs/iron-pdf-logo.svg'>
    <h1>Iron Software</h1>",
    VerticalAlignment = VerticalAlignment.Top,
};

//  Estampar la estampadora HTML
pdf.ApplyStamp(htmlStamper);

pdf.SaveAs("stampHtml.pdf");
using IronPdf;
using IronPdf.Editing;

ChromePdfRenderer renderer = new ChromePdfRenderer();

PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");

//  Crear estampador HTML
HtmlStamper htmlStamper = new HtmlStamper()
{
    Html = @"<img src='https://ironpdf.com/img/svgs/iron-pdf-logo.svg'>
    <h1>Iron Software</h1>",
    VerticalAlignment = VerticalAlignment.Top,
};

//  Estampar la estampadora HTML
pdf.ApplyStamp(htmlStamper);

pdf.SaveAs("stampHtml.pdf");
Imports IronPdf
Imports IronPdf.Editing

Private renderer As New ChromePdfRenderer()

Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")

'  Crear estampador HTML
Private htmlStamper As New HtmlStamper() With {
	.Html = "<img src='https://ironpdf.com/img/svgs/iron-pdf-logo.svg'>
    <h1>Iron Software</h1>",
	.VerticalAlignment = VerticalAlignment.Top
}

'  Estampar la estampadora HTML
pdf.ApplyStamp(htmlStamper)

pdf.SaveAs("stampHtml.pdf")
VB   C#

Opciones de HTML Stamper

Además de las opciones mencionadas y explicadas anteriormente, a continuación se indican otras más a disposición de las clases de estampador.

  • Opacidad: Permite que el Sello sea transparente. 0 es totalmente invisible, y 100 es totalmente opaco.
  • Rotación: Rota el Sello en el sentido de las agujas del reloj de 0 a 360 grados según se especifique.
  • MaxWidth: La anchura máxima del sello de salida.
  • MaxHeight: La altura máxima del sello de salida.
  • MinWidth: La anchura mínima del sello de salida.
  • MinHeight: La altura mínima del sello de salida.
  • Hipervínculo: Hace que los elementos estampados de este Stamper tengan un hipervínculo al hacer clic. Nota: Los enlaces HTML creados por enlace(a) las etiquetas no se reservan por estampación.
  • Escala: Aplica una escala porcentual a los sellos para hacerlos más grandes o más pequeños. El valor por defecto es 100 (Porcentaje)que no tiene ningún efecto.
  • IsStampBehindContent: Establecer a true para aplicar el Sello detrás del contenido. Si el contenido es opaco, el Sello puede ser invisible.
  • Esperar: Una envoltura conveniente para esperar varios eventos o algún tiempo.
  • Tiempo de espera: Tiempo de espera de renderizado en segundos. El valor por defecto es 60.

    Las opciones de estampación de IronPDF proporcionan una personalización avanzada, permitiendo a los usuarios mejorar los PDF con transparencia, rotación precisa y dimensiones controladas. Funciones como Hipervínculo y Escala facilitan la incorporación de todos los elementos interactivos, respetando las especificaciones del archivo y destacando sólo el contenido. La opción IsStampBehindContent posiciona estratégicamente los sellos, asegurando que forman parte del mismo objeto, no de los campos. Al mismo tiempo, la función WaitFor gestiona eficazmente los eventos de renderizado, lo que convierte a IronPDF en una herramienta versátil para la personalización de PDF, incluida la rotación de páginas originales.

Conclusión

En conclusión, El estampador de IronPDF ofrece una solución versátil y fácil de usar para mejorar documentos PDF. Ya sea añadiendo simples etiquetas de texto, incorporando imágenes o aprovechando el poder de HTML y CSS con HTMLStamper, IronPDF satisface una amplia gama de necesidades de personalización.

La facilidad de uso y los ejemplos prácticos que muestran la aplicación de sellos de texto e imagen lo hacen accesible para usuarios con distintos conocimientos técnicos. Las opciones de estampado, que incluyen opacidad, rotación y escala, contribuyen a crear un completo conjunto de herramientas para los usuarios que deseen personalizar PDF sin esfuerzo. La función de estampación de IronPDF destaca como una herramienta fiable y eficaz, que permite a los usuarios elevar fácilmente sus documentos PDF.

Esencialmente, IronPDF eleva sin esfuerzo los PDF para necesidades tanto básicas como avanzadas, incluyendo extracción de textos e imágenes incrustados, gestión de formularios PDF, fusionar o dividir archivos PDF y formatear archivos PDF con encabezados y pies de página personalizados mediante programación. Para consultas o solicitudes de funciones, nuestro equipo de asistencia está listo para ayudar.

< ANTERIOR
Cómo convertir PDF en archivos Tiff en .NET
SIGUIENTE >
Cómo leer archivos PDF en C#

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 9,974,197 Ver licencias >
123