Wie man Stempel und Wasserzeichen zu PDFs in C# hinzufügt

Stamp Text & Image on PDFs using C# and IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF fügt mit ,, und mit präziser Positionssteuerung.

Durch Stamping werden zusätzliche Inhalte auf bestehende PDF-Dokumente überlagert. Stempel fügen Informationen, Beschriftungen, Wasserzeichen oder Anmerkungen zu PDF-Dateien hinzu. Verwenden Sie Stempel zum Hinzufügen von Kopf- und Fußzeilen oder zum Erstellen benutzerdefinierter Wasserzeichen mit den umfassenden Stempelfunktionen von IronPDF.

IronPDF bietet vier Stempel: ,, sowie. `` nutzt alle HTML-Funktionen mit CSS-Styling, ähnlich wie bei der Konvertierung von HTML-Zeichenfolgen in PDF.

Schnellstart: Text sofort auf PDFs stempeln

Verwenden Sie die Klasse von IronPDF, um PDF-Dokumenten Textanmerkungen, Wasserzeichen oder Beschriftungen hinzuzufügen. Das folgende Beispiel zeigt, wie Text mithilfe der Methode in eine PDF-Datei eingefügt wird.

  1. Installieren Sie IronPDF mit NuGet Package Manager

    PM > Install-Package IronPdf
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    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");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer


Wie füge ich Text in PDF-Dateien ein?

Erstellen Sie ein -Objekt, das alle Anzeigekonfigurationen enthält. Übergeben Sie das-Objekt an die -Methode. Die Eigenschaft legt den angezeigten Text fest. Konfigurieren Sie Schriftart, Schriftstil und Position des Stempels.

bietet umfangreiche Anpassungsmöglichkeiten, ähnlich wie [bei der Verwaltung von Schriftarten](https://ironpdf.com/how-to/manage-fonts/) in PDF-Dokumenten. Verwenden Sie Systemschriftarten oder Google Fonts, indem Sie auf "true" setzen.

: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")
$vbLabelText   $csharpLabel

Wie sieht die PDF-Ausgabe aus?

Wie kann ich mehrzeilige Textstempel erstellen?

Verwenden Sie das Tag
für mehrzeiligen Text in. Beispielsweise erzeugt "Zeile 1
Zeile 2" "Zeile 1" in der ersten Zeile und "Zeile 2" in der zweiten Zeile. Auf diese Weise lassen sich Adressstempel oder mehrzeilige Wasserzeichen erstellen.


Wie füge ich Bilder in PDF-Dateien ein?

Erstellen Sie ein -Objekt und verwenden Sie die-Methode, um Bilder auf Dokumente anzuwenden. Der zweite Parameter der Methode akzeptiert einen Seitenindex zum Stempeln einzelner oder mehrerer Seiten. Das folgende Beispiel zeigt den Stempel auf Seite 1 des PDF-Dokuments.

TippsAlle Seitenindizes folgen einer nullbasierten Indizierung.

Für komplexe Bildbearbeitungsvorgänge sollten Sie sich mit dem Hinzufügen von Bildern zu PDF-Dateien oder der Arbeit mit Base64-kodierten Bildern befassen.

: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")
$vbLabelText   $csharpLabel

Wie sieht die Ausgabe des Bildstempels aus?

Welche Bildformate werden unterstützt?

`` unterstützt PNG, JPEG, GIF und SVG über URI-Referenzen oder Dateipfade. Stellen Sie eine ordnungsgemäße Netzwerkverbindung für Remote-Bilder sicher. Für Azure-Umgebungen sollten Sie die Verwendung von Bildern aus dem Azure Blob Storage in Betracht ziehen.


Wie kann ich mehrere Stempel anwenden?

Verwenden Sie ``, um mehrere Stempel anzuwenden, indem Sie ein Array von Stempeln übergeben. Diese Methode verarbeitet mehrere Stempel effizient in einem einzigen Arbeitsgang.

: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")
$vbLabelText   $csharpLabel

Was passiert, wenn sich Stempel überlappen?

Kann ich verschiedene Stempeltypen mischen?

akzeptiert Arrays, die beliebige Stempel-Typen enthalten. Kombinieren Sie, , und `` in einem Arbeitsgang. Erstellen Sie komplexe Dokumentlayouts mit Kopf- und Fußzeilen, Wasserzeichen und Identifikationscodes gleichzeitig.


Wie kann ich die Position des Stempels steuern?

Legen Sie die Platzierung der Stempel anhand eines 3x3-Rasters mit drei horizontalen Spalten und drei vertikalen Zeilen fest. Wählen Sie die horizontale Ausrichtung: links, zentriert, rechts. Wählen Sie die vertikale Ausrichtung: oben, Mitte, unten. Passen Sie die horizontalen und vertikalen Versätze für eine präzise Positionierung an. Eine visuelle Darstellung finden Sie in der Abbildung unten.

Ausrichtungsraster der IronPDF Stamping API mit Optionen zur horizontalen/vertikalen Positionierung und Beispielen für Versätze

Was sind die wichtigsten Positionierungseigenschaften?

  • : Horizontale Ausrichtung relativ zur Seite. Standard:.
  • : Vertikale Ausrichtung relativ zur Seite. Standard:.
  • : Horizontaler Versatz. Standard: 0, Einheit:. Positive Werte werden rechtsbündig ausgerichtet, negative Werte linksbündig.
  • : Vertikaler Versatz. Standard: 0, Einheit:. Positive Werte werden nach unten versetzt, negative Werte nach oben.

Wie stelle ich präzise Versätze ein?

Geben Sie und mithilfe der ``-Klasse. Die Standardmaßeinheit ist Prozent. Verfügbare Einheiten sind Zoll, Millimeter, Zentimeter, Pixel und Punkte. Dies ermöglicht eine präzise Positionierung, wie beispielsweise das Festlegen benutzerdefinierter Ränder in PDF-Dokumenten.

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)
}
$vbLabelText   $csharpLabel

Wie versehe ich HTML-Inhalte mit einem Wasserzeichen?

Verwenden Sie die Klasse , um Text und Bilder zu stempeln. rendert HTML-Designs mit CSS-Styling und fügt sie anschließend in PDF-Dokumente ein. Die Eigenschaft `` gibt die Basis-URL für HTML-String-Assets wie CSS- und Bilddateien an. Hierbei wird dieselbe Rendering-Engine verwendet wie bei der Konvertierung von HTML in 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")
$vbLabelText   $csharpLabel

Was sind die wesentlichen Eigenschaften von HTML Stamper?

  • : HTML-Fragment zum Einfügen in Ihre PDF-Datei. Externe Verweise auf JavaScript, CSS und Bilder beziehen sich auf.
  • ``: Basis-URL für Verweise auf externe CSS-, JavaScript- und Bilddateien.
  • : Aktiviert CSS-Stile für "Media=screen". Durch die Einstellung werden Stempel unter Verwendung von CSS media="PRINT" gerendert. Standard: ``.

Warum HTML Stamper statt Text Stamper verwenden?

`` bietet vollständige HTML- und CSS-Unterstützung für komplexe Layouts, mehrere Schriftarten, Farben und eingebettete Bilder in einem Stempel. Ideal für Wasserzeichen oder Kopfzeilen mit reichhaltigen Inhalten. Wahrt ein einheitliches Branding und funktioniert mit responsiven CSS-Designs.


Wie drucke ich BarCodes?

Die Klasse `` fügt BarCodes direkt in bestehende PDF-Dokumente ein. Unterstützt die BarCode-Typen QRCode, Code128 und 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")
$vbLabelText   $csharpLabel

Welche Konfigurationsoptionen stehen für BarCodes zur Verfügung?

  • ``: Zeichenfolgenwert des BARCODE.
  • ``: Codierungstyp, der QRCode, Code128 und Code39 unterstützt. Standard: QRCode.
  • ``: Breite des gerenderten BarCodes in Pixeln. Standard: 250px.
  • ``: Höhe des gerenderten BARCODE in Pixeln. Standard: 250px.

Wann sollte ich welchen BarCode-Typ verwenden?

QRCode verarbeitet URLs und große Datensätze (bis zu 4.296 alphanumerische Zeichen). eignet sich für alphanumerische Daten mit hohen Anforderungen an die Dichte. eignet sich für einfache Kombinationen aus Ziffern oder Großbuchstaben. Berücksichtigen Sie bei der Auswahl der BarCode-Typen die Kompatibilität mit den Scannern.


Welche weiteren Stamper-Optionen stehen zur Verfügung?

Diese Eigenschaften ermöglichen eine präzise Steuerung des Aussehens und des Verhaltens von Stempeln, ähnlich wie beim Erstellen benutzerdefinierter Wasserzeichen.

Wie kann ich das Erscheinungsbild des Stempels steuern?

  • ``: Steuert die Transparenz. 0 ist transparent, 100 ist undurchsichtig.
  • ``: Dreht den Stempel im Uhrzeigersinn von 0 bis 360 Grad.
  • ``: Maximale Breite des Ausgabestempels.
  • ``: Maximale Höhe des Ausgabestempels.
  • ``: Mindestbreite des Ausgabestempels.
  • ``: Mindesthöhe des Ausgabestempels.
  • ``: Fügt gestempelten Elementen einen Hyperlink beim Anklicken hinzu. Hinweis: HTML-Links (a-Tags) bleiben beim Einfügen nicht erhalten.
  • ``: Wendet eine prozentuale Skalierung auf Stempel an. Standard: 100 (keine Auswirkung).
  • ``: Platziert den Stempel hinter dem Inhalt. Der Stempel ist möglicherweise nicht sichtbar, wenn der Inhalt undurchsichtig ist.
  • ``: Wartet auf Ereignisse oder Zeit. Siehe Verwendung von WaitFor zum Verzögern des PDF-Renderings.
  • ``: Render-Timeout in Sekunden. Standard: 60.

Welche Eigenschaften werden am häufigsten verwendet?

und erstellen Wasserzeichen. und dienen zur Anpassung der visuellen Positionierung und Größe. Beispiel:

// 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
}
$vbLabelText   $csharpLabel

Zusammenfassung

Die Stempel-Funktion von IronPDF fügt Text, Bilder, HTML-Inhalte und BARCODES in bestehende PDF-Dokumente ein. Vier spezialisierte Stempelklassen mit umfangreichen Anpassungsoptionen erstellen professionelle Dokumente mit Wasserzeichen, Kopf- und Fußzeilen sowie Anmerkungen. Das Positionierungssystem mit verschiedenen Maßeinheiten und Ausrichtungsoptionen gewährleistet eine pixelgenaue Platzierung. Verwenden Sie einfache Textstempel oder komplexe HTML-Layouts mit CSS-Styling. Die Stempel-API von IronPDF bietet Flexibilität und Kontrolle für die Bearbeitung von PDF-Dateien auf Enterprise-Niveau.

Häufig gestellte Fragen

Wie füge ich meinen PDF-Dokumenten in C# ein Textwasserzeichen hinzu?

Verwenden Sie die TextStamper-Klasse von IronPDF, um Textwasserzeichen hinzuzufügen. Erstellen Sie ein TextStamper-Objekt, legen Sie Eigenschaften wie Text, FontSize und Opacity fest und verwenden Sie dann die Methode ApplyStamp. Sie können Wasserzeichen mithilfe der Eigenschaften VerticalAlignment und HorizontalAlignment präzise platzieren.

Kann ich Bilder als Stempel in bestehende PDF-Dateien einfügen?

Ja, IronPDF bietet die ImageStamper-Klasse zum Hinzufügen von Bildern zu PDFs. Erstellen Sie ein ImageStamper-Objekt, geben Sie die Bilddatei an, und verwenden Sie die Methode ApplyStamp. Sie können die Positionierung steuern und angeben, welche Seiten gestempelt werden sollen, indem Sie die nullbasierte Seitenindexierung verwenden.

Welche Arten von Inhalten können in PDFs eingeprägt werden?

IronPDF unterstützt vier Arten von Stempeln: TextStamper für Textanmerkungen und Wasserzeichen, ImageStamper für Bilder, HTMLStamper für HTML-Inhalte mit vollständigem CSS-Styling und BarcodeStamper für Barcodes. Jede Stempelklasse bietet eine präzise Steuerung der Positionierung.

Wie kann ich mehrzeilige Textstempel erstellen?

Verwenden Sie das
-Tag innerhalb der TextStamper-Eigenschaft Text, um mehrzeilige Stempel zu erstellen. Mit "Zeile 1
Zeile 2" wird beispielsweise Text in zwei separaten Zeilen angezeigt, was sich ideal für die Erstellung von Adressstempeln oder mehrzeiligen Wasserzeichen eignet.

Kann ich beim Stempeln von Text auf PDFs benutzerdefinierte Schriftarten verwenden?

Ja, TextStamper in IronPDF unterstützt sowohl Systemschriftarten als auch Google Fonts. Setzen Sie die Eigenschaft UseGoogleFont auf true, um Google Fonts zu verwenden, oder geben Sie eine beliebige installierte Systemschriftart mit der Eigenschaft FontFamily an, um die Typografie vollständig zu steuern.

Ist es möglich, Stempel nur auf bestimmten Seiten anzubringen?

Unbedingt. Die Methode ApplyStamp akzeptiert einen Seitenindex-Parameter, mit dem Sie bestimmte Seiten stempeln können. IronPDF verwendet eine nullbasierte Indizierung, sodass Seite 1 den Index 0 hat. Sie können auch ApplyMultipleStamps verwenden, um mehrere Seiten auf einmal zu stempeln.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 18,926,724 | Version: 2026.5 just released
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronPdf
Führen Sie eine Probe aus Sehen Sie zu, wie Ihr HTML-Code in eine PDF-Datei umgewandelt wird.