Stamp Text & Image on PDFs using C# and IronPDF
IronPDF umieszcza tekst, obrazy, treści HTML i BARCODES w istniejących dokumentach PDF w języku C# przy użyciu ,, oraz z precyzyjną kontrolą pozycjonowania.
Stemplowanie nakłada dodatkową treść na istniejące dokumenty PDF. Stemple dodają informacje, etykiety, znaki wodne lub adnotacje do plików PDF. Używaj stempli do dodawania nagłówków i stopek lub tworzenia niestandardowych znaków wodnych dzięki wszechstronnym funkcjom stemplowania IronPDF.
IronPDF udostępnia cztery narzędzia do stemplowania: ,, oraz. `` wykorzystuje wszystkie funkcje HTML ze stylami CSS, podobnie jak podczas konwersji ciągów HTML do formatu PDF.
Szybki start: Natychmiastowe umieszczanie tekstu na plikach PDF
Użyj klasy firmy IronPDF, aby dodawać adnotacje tekstowe, znaki wodne lub etykiety do dokumentów PDF. Poniższy przykład pokazuje umieszczanie tekstu na pliku PDF przy użyciu metody.
-
Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf -
Skopiuj i uruchom ten fragment kodu.
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"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną
Minimalny przebieg pracy (5 kroków)
- Pobierz bibliotekę C# do stemplowania tekstu i obrazów
- Utwórz i skonfiguruj żądaną klasę stempla
- Użyj metody
ApplyStamp, aby zastosować stempel do pliku PDF - Zastosuj wiele stempli przy użyciu metody
ApplyMultipleStampsmetody - Wskaż konkretne strony, na których mają zostać umieszczone stemple
Jak umieścić stempel tekstowy na plikach PDF?
Utwórz obiekt zawierający wszystkie konfiguracje wyświetlania. Przekaż obiekt do metody . Właściwość określa wyświetlany tekst. Skonfiguruj rodzinę czcionek, styl czcionki i położenie stempla.
oferuje szerokie możliwości dostosowywania, podobne do [zarządzania czcionkami](https://ironpdf.com/how-to/manage-fonts/) w dokumentach PDF. Użyj czcionek systemowych lub Google Fonts, ustawiając na true.
: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")
Jak wygląda plik PDF z tłumaczeniem?
Jak mogę tworzyć wielowierszowe stemple tekstowe?
Użyj tagudla tekstu wielowierszowego w. Na przykład "linia 1
linia 2" powoduje wyświetlenie "linia 1" w pierwszym wierszu i "linia 2" w drugim wierszu. Pozwala to tworzyć stemple adresowe lub wielowierszowe znaki wodne.
Jak umieścić stempel na obrazach w plikach PDF?
Utwórz obiekt i użyj metody, aby zastosować obrazy w dokumentach. Drugi parametr metody przyjmuje indeks strony w celu nadrukowania na jednej lub wielu stronach. Poniższy przykład umieszcza stempel na obrazku na stronie 1 pliku PDF.
W przypadku złożonych operacji na obrazach warto rozważyć dodawanie obrazów do plików PDF lub pracę z obrazami zakodowanymi w formacie 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")
Jak wygląda wynikowy stempel na obrazie?
Jakie formaty obrazów są obsługiwane?
`` obsługuje formaty PNG, JPEG, GIF i SVG poprzez odwołania URI lub ścieżki plików. Należy zapewnić odpowiednią łączność sieciową dla obrazów zdalnych. W przypadku środowisk Azure warto rozważyć użycie obrazów z usługi Azure Blob Storage.
Jak mogę zastosować wiele stempli?
Użyj ``, aby zastosować wiele stempli, przekazując tablicę stempli. Ta metoda pozwala na wydajne przetwarzanie kilku znaczników w ramach jednej operacji.
: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")
Co się dzieje, gdy stemple się nakładają?
Czy mogę łączyć różne rodzaje pieczątek?
akceptuje tablice zawierające dowolne typy stempli. Połącz, , oraz `` w jednej operacji. Twórz złożone układy dokumentów z nagłówkami, stopkami, znakami wodnymi i kodami identyfikacyjnymi jednocześnie.
Jak kontrolować położenie stempla?
Zdefiniuj rozmieszczenie stempli przy użyciu siatki 3x3 z trzema kolumnami poziomymi i trzema wierszami pionowymi. Wybierz wyrównanie poziome: do lewej, do środka, do prawej. Wybierz wyrównanie pionowe: do góry, do środka, do dołu. Dostosuj przesunięcia poziome i pionowe, aby uzyskać precyzyjne pozycjonowanie. Poniższy rysunek przedstawia wizualną reprezentację.
Jakie są kluczowe cechy pozycjonowania?
: Wyrównanie poziome względem strony. Domyślnie:.: Wyrównanie pionowe względem strony. Domyślnie:.: Przesunięcie poziome. Domyślnie: 0, jednostka:. Wartości dodatnie są przesunięte w prawo, a ujemne w lewo.: Przesunięcie pionowe. Domyślnie: 0, jednostka:. Wartości dodatnie są przesunięte w dół, a wartości ujemne w górę.
Jak ustawić precyzyjne przesunięcia?
Określ oraz przy użyciu klasy ``. Domyślną jednostką miary jest procent. Dostępne jednostki to cale, milimetry, centymetry, piksele i punkty. Umożliwia to precyzyjne pozycjonowanie, takie jak ustawianie niestandardowych marginesów w dokumentach PDF.
Kod
: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)
}
Jak oznaczyć treść HTML?
Użyj klasy do stemplowania tekstu i obrazów. renderuje projekty HTML ze stylami CSS, a następnie umieszcza je w dokumentach PDF. Właściwość `` określa podstawowy adres URL dla zasobów łańcuchów HTML, takich jak pliki CSS i pliki graficzne. Wykorzystuje ten sam silnik renderujący, co podczas konwersji HTML do PDF.
Kod
: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")
Jakie są podstawowe właściwości HTML Stamper?
: fragment kodu HTML do umieszczenia w pliku PDF. Zewnętrzne odniesienia do JavaScript, CSS i obrazów są względne względem.- ``: Podstawowy adres URL dla zewnętrznych odwołań do plików CSS, JavaScript i obrazów.
: Włącza style CSS Media="screen". Ustawieniepowoduje renderowanie znaczników przy użyciu CSS media="PRINT". Domyślnie: ``.
Dlaczego warto używać HTML Stamper zamiast Text Stamper?
`` zapewnia pełną obsługę HTML i CSS dla złożonych układów, wielu czcionek, kolorów i osadzonych obrazów w jednym stemplu. Idealny do bogatych w treść znaków wodnych lub nagłówków. Zachowuje spójność wizerunku marki i współpracuje z responsywnymi projektami CSS.
Jak stemplować BarCodes?
Klasa `` umieszcza kody kreskowe bezpośrednio na istniejących dokumentach PDF. Obsługuje kody kreskowe typu QRCode, Code128 i Code39.
Kod
: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")
Jakie opcje konfiguracji są dostępne dla BarCodes?
- ``: Wartość ciągu znaków BARCODE.
- ``: Typ kodowania obsługujący QRCode, Code128 i Code39. Domyślnie: QRCode.
- ``: Szerokość renderowanego BARCODE'a w pikselach. Domyślnie: 250px.
- ``: Wysokość renderowanego kodu BarCode w pikselach. Domyślnie: 250px.
Kiedy należy używać poszczególnych typów BarCode?
QRCode obsługuje adresy URL i duże zbiory danych (do 4296 znaków alfanumerycznych). nadaje się do danych alfanumerycznych o wysokich wymaganiach dotyczących gęstości. działa w przypadku prostych kombinacji cyfr lub wielkich liter. Przy wyborze typów kodów kreskowych należy wziąć pod uwagę kompatybilność sprzętu skanującego.
Jakie dodatkowe opcje Stamper są dostępne?
Te właściwości zapewniają precyzyjną kontrolę nad wyglądem i zachowaniem stempla, podobnie jak w przypadku tworzenia niestandardowych znaków wodnych.
Jak kontrolować wygląd stempli?
- ``: Kontroluje przezroczystość. 0 oznacza przezroczystość, 100 oznacza nieprzezroczystość.
- ``: Obraca stempel w prawo w zakresie od 0 do 360 stopni.
- ``: Maksymalna szerokość stempla wyjściowego.
- ``: Maksymalna wysokość stempla wyjściowego.
- ``: Minimalna szerokość stempla wyjściowego.
- ``: Minimalna wysokość stempla wyjściowego.
- ``: Dodaje hiperłącze aktywowane po kliknięciu do elementów oznaczonych stemplem. Uwaga: Linki HTML (tagi a) nie są zachowywane podczas stemplowania.
- ``: Stosuje skalę procentową do znaczników. Domyślnie: 100 (bez efektu).
- ``: Umieszcza stempel za treścią. Stempel może być niewidoczny, jeśli treść jest nieprzezroczysta.
- ``: Czeka na zdarzenia lub upływ czasu. Zobacz użycie WaitFor do opóźnienia renderowania pliku PDF.
- ``: Limit czasu renderowania w sekundach. Domyślnie: 60.
Które właściwości są najczęściej używane?
oraz tworzą znaki wodne. oraz służą do dostosowania położenia i rozmiaru elementów wizualnych. Przykład:
// 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
}
Podsumowanie
Funkcja stemplowania IronPDF umożliwia dodawanie tekstu, obrazów, treści HTML i BARCODE-ów do istniejących dokumentów PDF. Cztery specjalistyczne klasy stempli z rozbudowanymi opcjami dostosowywania pozwalają tworzyć profesjonalne dokumenty z znakami wodnymi, nagłówkami, stopkami i adnotacjami. System pozycjonowania z różnymi jednostkami miary i opcjami wyrównania zapewnia idealne dopasowanie co do piksela. Należy stosować proste znaczniki tekstowe lub złożone układy HTML ze stylami CSS. Interfejs API stemplowania IronPDF zapewnia elastyczność i kontrolę nad operacjami na plikach PDF na poziomie korporacyjnym.
Często Zadawane Pytania
Jak dodać znak wodny do moich dokumentów PDF w C#?
Użyj klasy TextStamper z IronPDF, aby dodać znaki wodne tekstowe. Stwórz obiekt TextStamper, ustaw właściwości jak Tekst, FontSize i Opacity, a następnie użyj metody ApplyStamp. Możesz ustawić znaki wodne przy użyciu właściwości VerticalAlignment i HorizontalAlignment dla precyzyjnego umiejscowienia.
Czy mogę dodać obrazy jako stemple do istniejących plików PDF?
Tak, IronPDF dostarcza klasy ImageStamper do dodawania obrazów do PDF-ów. Stwórz obiekt ImageStamper, określ plik obrazu i użyj metody ApplyStamp. Możesz kontrolować pozycjonowanie i określić, które strony będą stempliowane, używając indeksowania opartego na zerach.
Jakie typy treści można stempliować na PDF-ach?
IronPDF obsługuje cztery typy stempli: TextStamper do adnotacji tekstowych i znaków wodnych, ImageStamper do obrazów, HTMLStamper do treści HTML z pełnym stylowaniem CSS oraz BarcodeStamper do kodów kreskowych. Każda z klasy stamperów oferuje precyzyjną kontrolę pozycjonowania.
Jak stworzyć wieloliniowe stemple tekstowe?
Użyj tagu
wewnątrz właściwości Text w TextStamper, aby stworzyć wieloliniowe stemple. Na przykład 'linia 1
linia 2' wyświetli tekst na dwóch oddzielnych liniach, idealne do tworzenia stempli adresowych lub wieloliniowych znaków wodnych.
Czy mogę używać niestandardowych czcionek podczas stempliowania tekstu na PDF-ach?
Tak, TextStamper w IronPDF obsługuje zarówno czcionki systemowe, jak i czcionki Google. Ustaw właściwość UseGoogleFont na true, aby używać czcionek Google, lub określ dowolną zainstalowaną czcionkę systemową, używając właściwości FontFamily dla pełnej kontroli typograficznej.
Czy mogę dodać stemple tylko do konkretnych stron?
Absolutnie. Metoda ApplyStamp akceptuje parametr indeksu strony, który pozwala na stempliowanie określonych stron. IronPDF używa indeksowania opartego na zerach, więc strona 1 to indeks 0. Możesz także używać ApplyMultipleStamps, aby dodać stemple na wielu stronach naraz.

