USO DE IRONPDF

Cómo añadir PDF Stamper en C#

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 proporciona una solución fácil de usar y versátil para personalizar el contenido PDF y satisfacer diversas 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 los tres principales estampadores: Agregar texto con TextStamper, Colocar imágenes con ImageStamper e Integrar HTML con 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. Pase 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>");

// Create text stamper
TextStamper textStamper = new TextStamper()
{
    Text = "Text Stamper!",
    FontFamily = "Bungee Spice",
    UseGoogleFont = true,
    FontSize = 30,
    IsBold = true,
    IsItalic = true,
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the text stamper
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>");

// Create text stamper
TextStamper textStamper = new TextStamper()
{
    Text = "Text Stamper!",
    FontFamily = "Bungee Spice",
    UseGoogleFont = true,
    FontSize = 30,
    IsBold = true,
    IsItalic = true,
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the text stamper
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>")

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

' Stamp the text stamper
pdf.ApplyStamp(textStamper)

pdf.SaveAs("stampText.pdf")
$vbLabelText   $csharpLabel

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

Similar al estampador de texto, crea un objeto de la clase ImageStamper y luego usa el Método Apply de ImageStamper 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>");

// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the image stamper
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>");

// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    VerticalAlignment = VerticalAlignment.Top,
};

// Stamp the image stamper
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>")

' Create image stamper
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}

' Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0)

pdf.SaveAs("stampImage.pdf")
$vbLabelText   $csharpLabel

Aplicar varios sellos

Para agregar múltiples sellos a un documento, use el método de Aplicar Múltiples Sellos en IronPDF pasando un array de selladores. 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 diferente texto y alineación, el 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>");

// Create two text stampers
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 };

// Apply multiple stamps
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>");

// Create two text stampers
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 };

// Apply multiple stamps
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>")

' Create two text stampers
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 }

' Apply multiple stamps
pdf.ApplyMultipleStamps(stampersToApply)

pdf.SaveAs("multipleStamps.pdf")
$vbLabelText   $csharpLabel

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 agregar un estampador PDF en C#, Figura 1: Posicionamiento del estampador PDF

Posicionamiento del estampador de 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, instancie la Clase de Longitud Especificada para una medición detallada. La unidad de medida predeterminada para Length es un porcentaje, pero también puede usar unidades de medida como pulgadas, milímetros, centímetros, píxeles y puntos.

using IronPdf.Editing;

// Create text stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    HorizontalAlignment = HorizontalAlignment.Center,
    VerticalAlignment = VerticalAlignment.Top,

    // Specify offsets
    HorizontalOffset = new Length(10),
    VerticalOffset = new Length(10),
};
using IronPdf.Editing;

// Create text stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
    HorizontalAlignment = HorizontalAlignment.Center,
    VerticalAlignment = VerticalAlignment.Top,

    // Specify offsets
    HorizontalOffset = new Length(10),
    VerticalOffset = new Length(10),
};
Imports IronPdf.Editing

' Create text stamper
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)
}
$vbLabelText   $csharpLabel

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. La clase HtmlStamper para la integración de HTML puede renderizar diseños HTML con estilo 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 de JavaScript, CSS e imágenes serán relativas a la propiedad interna Html. 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>");

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

// Stamp the HTML stamper
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>");

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

// Stamp the HTML stamper
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>")

' Create HTML stamper
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
}

' Stamp the HTML stamper
pdf.ApplyStamp(htmlStamper)

pdf.SaveAs("stampHtml.pdf")
$vbLabelText   $csharpLabel

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 las etiquetas link(a) no se reservan mediante sellado.
  • Escala: Aplica una escala porcentual a los sellos para hacerlos más grandes o más pequeños. El valor predeterminado es 100 (por ciento), lo que no tiene 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, la funcionalidad de Stamper 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, Mastering PDF Enhancements with IronPDF eleva sin esfuerzo los PDFs para necesidades tanto básicas como avanzadas, incluyendo Extracción de Textos e Imágenes Incrustados, Manejo de Formularios PDF con Facilidad, Fusión o División Eficiente de Archivos PDF, y Formateo de PDFs con Encabezados y Pies de Página Personalizados programáticamente. Para consultas o solicitudes de características, el equipo de soporte de IronPDF está listo para asistir.

Chipego
Ingeniero de software
Chipego tiene una habilidad natural para escuchar que le ayuda a comprender los problemas de los clientes y a ofrecer soluciones inteligentes. Se unió al equipo de Iron Software en 2023, después de estudiar una licenciatura en Tecnología de la Información. IronPDF e IronOCR son los dos productos en los que Chipego se ha centrado, pero su conocimiento de todos los productos crece día a día, a medida que encuentra nuevas formas de ayudar a los clientes. Disfruta de lo colaborativa que es la vida en Iron Software, con miembros del equipo de toda la empresa que aportan su variada experiencia para contribuir a soluciones eficaces e innovadoras. Cuando Chipego está lejos de su escritorio, a menudo se le puede encontrar disfrutando de un buen libro o jugando al fútbol.
< ANTERIOR
Cómo convertir PDF en archivos Tiff en .NET
SIGUIENTE >
Cómo leer archivos PDF en C#