Stamp Text & Image on PDFs using C# and IronPDF
IronPDF stamps text, images, HTML content, and barcodes onto existing PDF documents in C# using TextStamper, ImageStamper, HTMLStamper, and BarcodeStamper classes with precise positioning control.
L'estampillage permet de superposer du contenu supplémentaire à des documents PDF existants. Les tampons permettent d'ajouter des informations, des étiquettes, des filigranes ou des annotations aux PDF. Utilisez des tampons pour ajouter des en-têtes et des pieds de page ou créer des filigranes personnalisés grâce aux fonctionnalités complètes de tamponnage d'IronPDF.
IronPDF fournit quatre tampons : TextStamper, ImageStamper, HTMLStamper et BarcodeStamper. HTMLStamper utilise toutes les fonctionnalités HTML avec un style CSS, similaire à la conversion des chaînes HTML en PDF.
Démarrage rapide : Ajoutez instantanément du texte sur vos PDF
Utilisez la classe TextStamper de IronPDF pour ajouter des annotations de texte, des filigranes ou des étiquettes aux documents PDF. L'exemple ci-dessous démontre le tamponnage de texte sur un PDF en utilisant la méthode ApplyStamp.
-
Installez IronPDF avec le Gestionnaire de Packages NuGet
-
Copiez et exécutez cet extrait de code.
var pdf = new IronPdf.PdfDocument("input.pdf"); var stamper = new IronPdf.Editing.TextStamper() { Text = "Confidential", FontSize = 50, Opacity = 50, VerticalAlignment = IronPdf.Editing.VerticalAlignment.Middle, HorizontalAlignment = IronPdf.Editing.HorizontalAlignment.Center }; pdf.ApplyStamp(stamper); pdf.SaveAs("stamped.pdf"); -
Déployez pour tester sur votre environnement de production.
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit
Flux de travail minimal (5 étapes)
- Téléchargez la bibliothèque C# pour tamponner du texte et une image
- Créez et configurez la classe de tamponneuse souhaitée
- Utilisez la méthode
ApplyStamppour appliquer le cachet au PDF - Appliquer plusieurs tampons à l'aide de la méthode
ApplyMultipleStamps - Spécifiez des pages particulières pour appliquer les tampons
Comment estampiller du texte sur des PDF?
Créez un objet TextStamper contenant toutes les configurations d'affichage. Passez l'objet TextStamper à la méthode ApplyStamp. La propriété Text définit le texte affiché. Configurez la famille de polices, le style de police et l'emplacement du cachet.
TextStamper offre des options de personnalisation étendues similaires à la gestion des polices dans les documents PDF. Utilisez les polices système ou Google Fonts en définissant UseGoogleFont à vrai.
: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")
À quoi ressemble le PDF de sortie?
Comment créer des tampons de texte multilignes?
Utilisez la balise <br> pour le texte multiligne dans TextStamper. Par exemple, "ligne 1
ligne 2" produit "ligne 1" sur la première ligne et "ligne 2" sur la seconde. Cela permet de créer des tampons d'adresse ou des filigranes sur plusieurs lignes.
Comment estampiller des images sur des PDF?
Créez un objet ImageStamper et utilisez la méthode ApplyStamp pour appliquer des images aux documents. Le deuxième paramètre de la méthode accepte un index de page pour l'estampillage d'une ou de plusieurs pages. L'exemple ci-dessous reprend l'image de la page 1 du PDF.
Pour les opérations complexes sur les images, explorez l'ajout d'images aux PDF ou le travail avec des images codées en base64.
: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")
À quoi ressemble la sortie du tampon-image?
Quels sont les formats d'image pris en charge ?
ImageStamper prend en charge les formats PNG, JPEG, GIF et SVG à travers les références URI ou les chemins de fichiers. Veillez à ce que la connectivité réseau soit correcte pour les images à distance. Pour les environnements Azure, envisagez d'utiliser des images provenant d'Azure Blob Storage.
Comment puis-je appliquer plusieurs tampons ?
Utilisez ApplyMultipleStamps pour appliquer plusieurs tampons en passant un tableau de tamponneuses. Cette méthode permet de traiter efficacement plusieurs timbres en une seule opération.
: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")
Qu'arrive-t-il lorsque les timbres se chevauchent?
Puis-je mélanger différents types de timbres ?
ApplyMultipleStamps accepte des tableaux contenant tout type de tampons. Combinez TextStamper, ImageStamper, HTMLStamper et BarcodeStamper en une seule opération. Créer des mises en page de documents complexes avec des en-têtes, des pieds de page, des filigranes et des codes d'identification simultanément.
Comment puis-je contrôler l'emplacement des timbres ?
Définissez l'emplacement des timbres à l'aide d'une grille 3x3 comportant trois colonnes horizontales et trois lignes verticales. Choisissez l'alignement horizontal : gauche, centre, droite. Choisissez l'alignement vertical : haut, milieu, bas. Ajustez les décalages horizontaux et verticaux pour un positionnement précis. Voir l'image ci-dessous pour une représentation visuelle.
Quelles sont les principales propriétés de positionnement ?
HorizontalAlignment: Alignement horizontal par rapport à la page. Par défaut :HorizontalAlignment.Center.VerticalAlignment: Alignement vertical par rapport à la page. Par défaut :VerticalAlignment.Middle.HorizontalOffset: Décalage horizontal. Par défaut : 0, unité :MeasurementUnit.Percentage. Les valeurs positives sont décalées vers la droite, les valeurs négatives vers la gauche.VerticalOffset: Décalage vertical. Par défaut : 0, unité :MeasurementUnit.Percentage. Les valeurs positives sont décalées vers le bas, les valeurs négatives vers le haut.
Comment définir des décalages précis?
Spécifiez HorizontalOffset et VerticalOffset en utilisant la classe Length. L'unité de mesure par défaut est le pourcentage. Les unités disponibles sont les pouces, les millimètres, les centimètres, les pixels et les points. Cela permet un positionnement précis comme la définition de marges personnalisées dans les documents PDF.
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)
}
Iron Suite joue un rôle crucial dans nos opérations. Ce sont des outils qui augmentent l'efficacité de l'entreprise, y compris la création de plans d'étage et l'amélioration de la gestion des stocks.
Comment estampiller un contenu HTML?
Utilisez la classe HtmlStamper pour tamponner texte et images. HtmlStamper rend les conceptions HTML avec un style CSS, puis les tamponne sur des documents PDF. La propriété HtmlBaseUrl spécifie l'URL de base pour les actifs de chaînes HTML comme les fichiers CSS et images. Cette opération utilise le même moteur de rendu que la conversion de HTML en PDF.
Code
: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")
Quelles sont les propriétés essentielles de HTML Stamper?
Html: Fragment HTML à tamponner sur votre PDF. Les références externes à JavaScript, CSS et images sont relatives àHtmlBaseUrl.HtmlBaseUrl: URL de base pour les références des fichiers CSS, JavaScript et images externes.CssMediaType: Active les styles CSS Media="screen". L'activation deAllowScreenCss=falserend les tampons en utilisant le média CSS="print". Par défaut :PdfCssMediaType.Screen.
Pourquoi utiliser HTML Stamper plutôt que Text Stamper?
HTMLStamper offre un support complet HTML et CSS pour des mises en page complexes, plusieurs polices, couleurs et images intégrées en un seul tampon. Idéal pour les filigranes de contenu riche ou d'en-têtes. Elle doit maintenir une image de marque cohérente et fonctionner avec des conceptions CSS réactives.
Comment estampiller des BarCodes?
La classe BarcodeStamper tamponne les codes-barres directement sur les documents PDF existants. Prend en charge les types de codes-barres QRCode, Code128 et Code39.
Code
: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")
Quelles sont les options de configuration disponibles pour les BarCodes?
Value: Valeur de la chaîne du code-barres.BarcodeType: Type d'encodage prenant en charge QRCode, Code128 et Code39. Par défaut : QRCode.Width: Largeur du code-barres rendu en pixels. Défaut : 250px.Height: Hauteur du code-barres rendu en pixels. Défaut : 250px.
Quand dois-je utiliser chaque type de BarCode?
QRCode gère les URL et les grands ensembles de données (jusqu'à 4 296 caractères alphanumériques). Code128 convient aux données alphanumériques avec des exigences de haute densité. Code39 fonctionne pour des combinaisons numériques simples ou de lettres majuscules. Tenez compte de la compatibilité de l'équipement de numérisation lors de la sélection des types de codes-barres.
Quelles sont les autres options de Stamper disponibles ?
Ces propriétés permettent de contrôler finement l'apparence et le comportement des timbres, de manière similaire à la création de filigranes personnalisés.
Comment contrôler l'apparence des timbres ?
Opacity: Contrôle de la transparence. 0 est invisible, 100 est opaque.Rotation: Fait tourner le tampon dans le sens horaire de 0 à 360 degrés.MaxWidth: Largeur maximale du tampon de sortie.MaxHeight: Hauteur maximale du tampon de sortie.MinWidth: Largeur minimale du tampon de sortie.MinHeight: Hauteur minimale du tampon de sortie.Hyperlink: Ajoute un hyperlien cliquable aux éléments tamponnés. Remarque : les liens HTML (balises a) ne sont pas préservés par l'estampillage.Scale: Applique une échelle en pourcentage aux tampons. Valeur par défaut : 100 (aucun effet).IsStampBehindContent: Place le tampon derrière le contenu. Le cachet peut être invisible si le contenu est opaque.WaitFor: Attend des événements ou un temps. Voir l'utilisation de WaitFor pour retarder le rendu PDF.Timeout: Délai d'attente de rendu en secondes. Valeur par défaut : 60.
Quelles sont les propriétés les plus couramment utilisées ?
Opacity et IsStampBehindContent créent des filigranes. Scale et Rotation ajustent le positionnement visuel et la taille. Exemple :
// Create a semi-transparent watermark behind content
TextStamper watermark = new TextStamper()
{
Text = "CONFIDENTIAL",
FontSize = 60,
FontColorCode = "#CCCCCC",
Opacity = 25,
Rotation = -45,
IsStampBehindContent = true,
VerticalAlignment = VerticalAlignment.Middle,
HorizontalAlignment = HorizontalAlignment.Center
};
// Create a semi-transparent watermark behind content
TextStamper watermark = new TextStamper()
{
Text = "CONFIDENTIAL",
FontSize = 60,
FontColorCode = "#CCCCCC",
Opacity = 25,
Rotation = -45,
IsStampBehindContent = true,
VerticalAlignment = VerticalAlignment.Middle,
HorizontalAlignment = HorizontalAlignment.Center
};
' Create a semi-transparent watermark behind content
Dim watermark As New TextStamper() With {
.Text = "CONFIDENTIAL",
.FontSize = 60,
.FontColorCode = "#CCCCCC",
.Opacity = 25,
.Rotation = -45,
.IsStampBehindContent = True,
.VerticalAlignment = VerticalAlignment.Middle,
.HorizontalAlignment = HorizontalAlignment.Center
}
Résumé
La fonctionnalité d'estampillage d'IronPDF permet d'ajouter du texte, des images, du contenu HTML et des codes-barres à des documents PDF existants. Quatre classes de stamper spécialisées avec des options de personnalisation étendues permettent de créer des documents professionnels avec des filigranes, des en-têtes, des pieds de page et des annotations. Le système de positionnement avec différentes unités de mesure et options d'alignement garantit un placement au pixel près. Utilisez des tampons de texte simples ou des mises en page HTML complexes avec un style CSS. L'API d'estampillage d'IronPDF offre la flexibilité et le contrôle nécessaires à la manipulation des PDF à l'échelle de l'entreprise.
Questions Fréquemment Posées
Comment ajouter un filigrane textuel à mes documents PDF en C# ?
Utilisez la classe TextStamper d'IronPDF pour ajouter des filigranes au texte. Créez un objet TextStamper, définissez des propriétés telles que Text, FontSize et Opacity, puis utilisez la méthode ApplyStamp. Vous pouvez positionner les filigranes en utilisant les propriétés VerticalAlignment et HorizontalAlignment pour un positionnement précis.
Puis-je ajouter des images en tant que tampons à des fichiers PDF existants ?
Oui, IronPDF fournit la classe ImageStamper pour ajouter des images aux PDF. Créez un objet ImageStamper, spécifiez le fichier image et utilisez la méthode ApplyStamp. Vous pouvez contrôler le positionnement et spécifier les pages à tamponner à l'aide de l'indexation des pages à base zéro.
Quels types de contenu peuvent être apposés sur les PDF ?
IronPDF prend en charge quatre types de tampons : TextStamper pour les annotations de texte et les filigranes, ImageStamper pour les images, HTMLStamper pour le contenu HTML avec un style CSS complet, et BarcodeStamper pour les codes-barres. Chaque classe de tampon offre un contrôle précis du positionnement.
Comment créer des tampons de texte multilignes ?
Utilisez la balise
dans la propriété TextStamper pour créer des tampons sur plusieurs lignes. Par exemple, "ligne 1
ligne 2" affichera le texte sur deux lignes distinctes, ce qui est parfait pour créer des tampons d'adresse ou des filigranes multilignes.
Puis-je utiliser des polices personnalisées lors de l'estampillage de texte sur des PDF ?
Oui, TextStamper dans IronPDF prend en charge à la fois les polices système et les polices Google. Définissez la propriété UseGoogleFont à true pour utiliser les polices Google, ou spécifiez n'importe quelle police système installée à l'aide de la propriété FontFamily pour un contrôle complet de la typographie.
Est-il possible d'ajouter des tampons à certaines pages seulement ?
Absolument. La méthode ApplyStamp accepte un paramètre d'index de page qui vous permet de marquer des pages spécifiques. IronPDF utilise une indexation basée sur le zéro, la page 1 correspond donc à l'index 0. Vous pouvez également utiliser ApplyMultipleStamps pour ajouter des tampons à plusieurs pages à la fois.

