Comment estampiller du texte et des images sur des PDF
L'ajout de texte et d'images à un PDF consiste à superposer du contenu supplémentaire à un document PDF existant. Ce contenu, souvent appelé "timbre", peut être du texte, des images ou une combinaison des deux. Les tampons sont généralement utilisés pour ajouter des informations, des étiquettes, des filigranes ou des annotations à un PDF.
Il y a au total 4 tampons qui peuvent être utilisés dans IronPDF. Cet article va parler de TextStamper, ImageStamper, HTMLStamper et BarcodeStamper. HTMLStamper est particulièrement puissant car il peut utiliser toutes les fonctionnalités HTML ainsi que le style CSS.
Commencez avec IronPDF
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit.
How to Stamp Text & Image on PDFs
- Télécharger la bibliothèque C# pour tamponner du texte et des images
- Créer et configurer la classe d'estampage souhaitée
- Utilisez la méthode
ApplyStamp
pour appliquer le tampon au PDF - Appliquer plusieurs tampons en utilisant la méthode
ApplyMultipleStamps
- Spécifiez les pages particulières auxquelles appliquer les tampons
Exemple de texte de timbre
Tout d'abord, créez un objet à partir de la classe TextStamper. Cet objet contiendra toutes les configurations permettant de spécifier la manière dont nous voulons que notre texte s'affiche. Passez l'objet TextStamper à la méthode ApplyStamp
. La propriété Text sera le texte affiché. En outre, nous pouvons spécifier la famille et le style de la police, ainsi que l'emplacement du cachet.
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-text.cs
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")
Sortie PDF
Pour obtenir un texte sur plusieurs lignes dans TextStamper, utilisez la balise <br> ; comme en HTML. Par exemple, "ligne 1 <br> ; ligne 2" produira "ligne 1" sur la première ligne et "ligne 2" sur la seconde.
Exemple d'image de timbre
Similaire au tampon de texte, nous créons d'abord un objet à partir de la classe ImageStamper, puis nous utilisons la méthode ApplyStamp
pour appliquer l'image au document. Le deuxième paramètre de cette méthode accepte également un index de page, qui peut être utilisé pour appliquer le cachet à une ou plusieurs pages. Dans l'exemple ci-dessous, nous spécifions que l'image doit être apposée sur la page 1 du PDF.
Conseils
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-image.cs
using IronPdf;
using IronPdf.Editing;
using System;
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
Imports System
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")
Sortie PDF
Appliquer plusieurs tampons
Utilisez la méthode ApplyMultipleStamps
pour appliquer plusieurs tampons sur le document en lui passant un tableau de tamponneuses.
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-multiple-stamps.cs
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")
Sortie PDF
Emplacement du tampon
Pour définir l'emplacement du timbre, nous utilisons une grille de 3x3 avec trois colonnes horizontales et trois lignes verticales. Vous pouvez choisir l'alignement horizontal : gauche, centre et droite, ainsi que l'alignement vertical : haut, milieu et bas. Pour plus de précision, vous pouvez ajuster les décalages horizontaux et verticaux pour chaque position. L'image ci-dessous donne une représentation visuelle de ce concept.

- HorizontalAlignment : L'alignement horizontal du tampon par rapport à la page. Le paramètre par défaut est HorizontalAlignment.Center.
- VerticalAlignment : L'alignement vertical du tampon par rapport à la page. Le paramètre par défaut est VerticalAlignmentCenter.Middle.
- HorizontalOffset : Le décalage horizontal. La valeur par défaut est 0 et l'unité par défaut est IronPDF.Editing.MeasurementUnit.Percentage. Les valeurs positives indiquent un décalage vers la droite, tandis que les valeurs négatives indiquent un décalage vers la gauche.
-
VerticalOffset : Le décalage vertical. La valeur par défaut est 0 et l'unité par défaut est IronPDF.Editing.MeasurementUnit.Percentage. Les valeurs positives indiquent un décalage vers le bas, tandis que les valeurs négatives indiquent un décalage vers le haut.
Pour spécifier les propriétés HorizontalOffset et VerticalOffset, nous instancions la classe Length. L'unité de mesure par défaut de la longueur est le pourcentage, mais elle peut également utiliser des unités de mesure telles que les pouces, les millimètres, les centimètres, les pixels et les points.
Code
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-location.cs
using IronPdf.Editing;
using System;
// 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
Imports System
' 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)
}
Exemple HTML de timbre
Il existe une autre classe de tampons que nous pouvons utiliser pour tamponner à la fois du texte et des images. La classe HtmlStamper peut être utilisée pour rendre des conceptions HTML avec un style CSS et ensuite les tamponner sur le document PDF. La propriété HtmlBaseUrl est utilisée pour spécifier l'URL de base pour les ressources de la chaîne HTML, telles que les fichiers CSS et image.
Code
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-html.cs
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")
- Html : Le fragment HTML à estampiller sur votre PDF. Toutes les références externes aux fichiers JavaScript, CSS et images seront relatives à la propriété HtmlBaseUrl de la classe Stamper.
- HtmlBaseUrl : L'URL de base HTML pour laquelle les références aux fichiers CSS, Javascript et Image externes seront relatives.
- CssMediaType : Active les styles CSS Media="screen" et les feuilles de style. En définissant AllowScreenCss=false, IronPDF rend Stamp à partir de HTML en utilisant CSS pour media="print" comme s'il imprimait une page web dans une boîte de dialogue d'impression du navigateur. La valeur par défaut est PdfCssMediaType.Screen.
Exemple de code-barres pour les timbres
La classe BarcodeStamper peut être utilisée pour tamponner un code-barres directement sur le document PDF existant. L'estampeuse prend en charge les types de codes-barres tels que QRCode, Code128 et Code39.
Code
:path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-barcode.cs
using IronPdf;
using IronPdf.Editing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create barcode stamper
BarcodeStamper barcodeStamper = new BarcodeStamper("IronPdf!!", BarcodeEncoding.Code39)
{
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the barcode stamper
pdf.ApplyStamp(barcodeStamper);
pdf.SaveAs("stampBarcode.pdf");
Imports IronPdf
Imports IronPdf.Editing
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create barcode stamper
Private barcodeStamper As New BarcodeStamper("IronPdf!!", BarcodeEncoding.Code39) With {.VerticalAlignment = VerticalAlignment.Top}
' Stamp the barcode stamper
pdf.ApplyStamp(barcodeStamper)
pdf.SaveAs("stampBarcode.pdf")
- Valeur : La valeur chaîne du code-barres.
- BarcodeType : Le type d'encodage pour le code-barres, avec des types pris en charge incluant QRCode, Code128, et Code39. Par défaut, c'est QRCode.
- Largeur : La largeur du code-barres rendu en pixels. La valeur par défaut est de 250px.
- Hauteur : La hauteur du code-barres rendu en pixels. La valeur par défaut est de 250px.
Explorer les options de tampons
En plus des options mentionnées et expliquées ci-dessus, voici d'autres options disponibles pour les classes d'estampeurs.
- Opacité : Permet au tampon d'être transparent. 0 est totalement invisible, 100 est totalement opaque.
- Rotation : Fait pivoter le tampon dans le sens des aiguilles d'une montre de 0 à 360 degrés comme spécifié.
- MaxWidth : La largeur maximale du tampon de sortie.
- MaxHeight : La hauteur maximale du tampon de sortie.
- MinWidth : La largeur minimale du tampon de sortie.
- MinHeight : La hauteur minimale du tampon de sortie.
- Hyperlien : Permet aux éléments estampillés de ce Stamper d'avoir un hyperlien cliquable. Remarque : Les liens HTML créés par les balises link(a) ne sont pas réservés par estampillage.
- Échelle : Applique une échelle en pourcentage aux tampons pour les agrandir ou les réduire. La valeur par défaut est 100 (pourcentage), ce qui n'a aucun effet.
- IsStampBehindContent : Défini sur true pour appliquer le tampon derrière le contenu. Si le contenu est opaque, le cachet peut être invisible.
- WaitFor : Un wrapper pratique pour attendre divers événements ou simplement attendre un certain temps.
- Délai d'expiration : Durée d'expiration du rendu en secondes. La valeur par défaut est 60.