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 traite 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.
Comment estampiller du texte et des images sur des PDF
- Télécharger la bibliothèque C# pour tamponner du texte et des images
- Créer et configurer la classe d'estampage souhaitée
- Utiliser le
Appliquer le cachet
pour appliquer le timbre au PDF - Appliquer plusieurs tampons à l'aide de la fonction
Appliquer des timbres multiples
méthode - Spécifier les pages auxquelles les timbres doivent être appliqués
Installer avec NuGet
Install-Package IronPdf
Télécharger DLL
Installation manuelle dans votre projet
Installer avec NuGet
Install-Package IronPdf
Télécharger DLL
Installation manuelle dans votre projet
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit.
Découvrez IronPDF sur NuGet pour une installation rapide et un déploiement facile. Avec plus de 8 millions de téléchargements, il transforme PDF avec C#.
Install-Package IronPdf
Envisagez d'installer le IronPDF DLL directement. Téléchargez et installez-le manuellement pour votre projet ou sous forme de GAC : {{lienDllAfficher}}
Installation manuelle dans votre projet
Télécharger la DLLExemple de texte de timbre
Tout d'abord, créez un objet 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. Passe 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
Comme pour le tampon de texte, nous créons d'abord un objet 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 tampons.
: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 timbre par rapport à la page. Le paramètre par défaut est HorizontalAlignment.Center.
- VerticalAlignment : L'alignement vertical du timbre 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 dessins HTML avec un style CSS et les apposer ensuite sur le document PDF. La propriété HtmlBaseUrl est utilisée pour spécifier l'URL de base des ressources de la chaîne HTML, telles que les fichiers CSS et les images.
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 à insérer dans 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 externes CSS, Javascript et Image seront relatives.
- CssMediaType : Active les styles et feuilles de style CSS Media="screen". 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 apposer un code-barres directement sur un 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 de la chaîne du code-barres.
- BarcodeType : Le type d'encodage pour le code-barres, les types pris en charge étant QRCode, Code128 et Code39. La valeur par défaut est QRCode.
- Width : 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 timbre d'être transparent. 0 est totalement invisible, 100 est totalement opaque.
- Rotation : Fait pivoter le timbre dans le sens des aiguilles d'une montre de 0 à 360 degrés, comme spécifié.
- MaxWidth : La largeur maximale du timbre de sortie.
- MaxHeight : La hauteur maximale du timbre de sortie.
- MinWidth : La largeur minimale du timbre de sortie.
- MinHeight : La hauteur minimale du timbre de sortie.
- Lien hypertexte : Les éléments estampillés de ce Stamper sont dotés d'un lien hypertexte en cas de clic. Note : Les liens HTML créés par link(a) ne sont pas réservées par l'estampillage.
- Echelle : Applique une échelle en pourcentage aux timbres pour les agrandir ou les réduire. La valeur par défaut est de 100 (Pourcentage)qui n'a aucun effet.
- IsStampBehindContent : La valeur "true" permet d'appliquer le cachet derrière le contenu. Si le contenu est opaque, le cachet peut être invisible.
- WaitFor : Une enveloppe pratique pour attendre divers événements ou simplement attendre un certain temps.
- Timeout : Délai de rendu en secondes. La valeur par défaut est 60.