How to Add Watermarks to PDFs in C# Using IronPDF
IronPDF umozliwia dodawanie niestandardowych znakow wodnych do plikow PDF za pomoca jednej linii kodu, uzywajac ciagow HTML dla pelnej kontroli stylizacji. Stosuj tekstowe lub obrazowe znaki wodne z regulowana przezroczystoscia, rotacja i pozycjonowaniem, aby zwiekszyc bezpieczenstwo dokumentow i marke.
Szybki Start: Zastosowanie niestandardowych znakow wodnych latwo
Dodaj niestandardowe znaki wodne do plikow PDF uzywajac IronPDF za pomoca jednej linii kodu. Dostosuj znaki wodne uzywajac stylizacji HTML dla przezroczystosci, rotacji i lokalizacji za pomoca prostego systemu siatki 3x3. Ten przewodnik pokazuje, jak wzbogacic dokumenty PDF za pomoca personalizowanych znakow wodnych dla celow bezpieczenstwa i marki.
-
Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf -
Skopiuj i uruchom ten fragment kodu.
new IronPdf.PdfDocument.FromFile("input.pdf") .ApplyWatermark("<h1 style='opacity:0.5;'>Confidential</h1>", IronPdf.PagePosition.TopCenter) .SaveAs("output.pdf"); -
Wdrożenie do testowania w środowisku produkcyjnym
Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną
Jakie sa podstawowe kroki dodawania znaku wodnego?
- Pobierz biblioteke IronPDF dla C#
- Wygeneruj nowy lub zaimportuj istniejacy dokument PDF
- Skonfiguruj ciag HTML do uzycia jako znak wodny
- Uzyj metody
ApplyWatermarkdo wdrozenia znaku wodnego - Dostosuj rotacje, przezroczystosc i lokalizacje znaku wodnego wedlug potrzeb
Jak moge zastosowac znak wodny do mojego PDF?
Uzyj metody ApplyWatermark do zastosowania znaku wodnego do nowo wygenerowanego lub istniejacego PDF. Ta metoda przyjmuje ciag HTML jako znak wodny, umozliwiajac wykorzystanie wszystkich funkcji HTML, w tym stylizacji CSS. Przyklad ponizej demonstruje uzycie zarowno obrazu, jak i tekstu jako znakow wodnych. Zauwaz, ze znaki wodne stosowane sa do wszystkich stron; Znaki wodne dla konkretnych stron nie sa obslugiwane.
Przed praca ze znakami wodnymi zapoznaj sie z naszymi przewodnikami na temat tworzenia plikow PDF lub konwersji HTML do PDF, aby zrozumiec podstawy generacji PDF z IronPDF.
Jakie elementy HTML moge uzyc w moim znaku wodnym?
:path=/static-assets/pdf/content-code-examples/how-to/custom-watermark-apply-watermark.cs
using IronPdf;
string watermarkHtml = @"
<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>");
// Apply watermark
pdf.ApplyWatermark(watermarkHtml);
pdf.SaveAs("watermark.pdf");
Imports IronPdf
Private watermarkHtml As String = "
<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>"
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>")
' Apply watermark
pdf.ApplyWatermark(watermarkHtml)
pdf.SaveAs("watermark.pdf")
Ciag HTML znaku wodnego obsluguje wszystkie standardowe elementy HTML i stylizacje CSS. Wlacz obrazy, tekst, niestandardowe czcionki, kolory i zlozone uklady. Ta elastycznosc umozliwia tworzenie profesjonalnych znakow wodnych, ktore odpowiadaja wymaganiom marki. Dla zaawansowanych opcji stylizacji uzyj czcionek internetowych i ikon w znakach wodnych.
Jak wyglada finalny znak wodny w PDF?
Dodaj znaki wodne z obrazow w roznych formatach (PNG, JPG) oraz znaki wodne tekstowe z latwoscia uzywajac niestandardowych czcionek. Znaki wodne pojawiaja sie za glowna trescia, zapewniajac czytelnosc dokumentu przy jednoczesnym oferowaniu funkcji markowych lub bezpieczenstwa.
Jak moge dostosowac przezroczystosc i rotacje znaku wodnego?
Znaki wodne maja domyslna przezroczystosc na poziomie 50%, ktora mozna dostosowac do spelnienia wymagan. Metoda ApplyWatermark zawiera przeciazenie akceptujace rotacje jako parametr. Okresl 'rotation:' i 'opacity:' dla dostosowania tych parametrow.
Dla zlozonych scenariuszy znakow wodnych, zapoznaj sie z naszymi funkcjami stemplowania dla dodatkowych opcji dostosywania.
Jakie parametry kontroluja wyglad znaku wodnego?
:path=/static-assets/pdf/content-code-examples/how-to/custom-watermark-apply-rotation-opacity.cs
using IronPdf;
using IronPdf.Editing;
string watermarkHtml = @"
<img style='width: 200px;' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>");
// Apply watermark with 45 degrees rotation and 70% opacity
pdf.ApplyWatermark(watermarkHtml, rotation: 45, opacity: 70);
pdf.SaveAs("watermarkOpacity&Rotation.pdf");
Imports IronPdf
Imports IronPdf.Editing
Private watermarkHtml As String = "
<img style='width: 200px;' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>"
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>")
' Apply watermark with 45 degrees rotation and 70% opacity
pdf.ApplyWatermark(watermarkHtml, rotation:= 45, opacity:= 70)
pdf.SaveAs("watermarkOpacity&Rotation.pdf")
Parametr rotacji akceptuje wartosci w stopniach (0-360), umozliwiajac uzyskanie znakow wodnych na przekatnej, czesto uzywanych dla dokumentow roboczych lub poufnych. Parametr przezroczystosci akceptuje wartosci od 0 do 100, gdzie 0 jest calkowicie przezroczysty, a 100 jest calkowicie nieprzezroczysty. Te parametry zapewniaja precyzyjna kontrole nad wizualnym wplywem znaku wodnego.
Praca z rozna przezroczystoscia
Rozne typy dokumentow wymagaja roznych poziomow przezroczystosci:
- Dokumenty prawne: Uzyj 20-30% przezroczystosci dla subtelnych znakow wodnych
- Dokumenty robocze: Uzyj 40-60% przezroczystosci dla dobrej widocznosci
- Dokumenty poufne: Uzyj 30-50% przezroczystosci z rotacja na przekatnej
- Dokumenty markowe: Uzyj 10-25% przezroczystosci dla profesjonalnego wygladu
// Example: Creating a subtle branded watermark
string brandWatermark = @"
<div style='font-family: Arial, sans-serif; color: #cccccc;'>
<img style='width: 150px;' src='company-logo.png'>
<p>© 2024 Company Name</p>
</div>";
pdf.ApplyWatermark(brandWatermark, rotation: 0, opacity: 20);
// Example: Creating a subtle branded watermark
string brandWatermark = @"
<div style='font-family: Arial, sans-serif; color: #cccccc;'>
<img style='width: 150px;' src='company-logo.png'>
<p>© 2024 Company Name</p>
</div>";
pdf.ApplyWatermark(brandWatermark, rotation: 0, opacity: 20);
Imports System
' Example: Creating a subtle branded watermark
Dim brandWatermark As String = "
<div style='font-family: Arial, sans-serif; color: #cccccc;'>
<img style='width: 150px;' src='company-logo.png'>
<p>© 2024 Company Name</p>
</div>"
pdf.ApplyWatermark(brandWatermark, rotation:=0, opacity:=20)
Jak rotacja i przezroczystosc wplywa na ostateczny wynik?
Jak umiescic moj znak wodny na PDF?
Okresl lokalizacje znaku wodnego, uzywajac siatki 3x3 podzielonej na 3 kolumny poziomo i 3 wiersze pionowo. Opcje poziome to lewa, srodek i prawa; Opcje pionowe to gora, srodek i dol. Ta konfiguracja umozliwia 9 roznych lokalizacji na kazdej stronie. Zobacz obraz ponizej dla wizualnej reprezentacji.
Dodaj znaki wodne do okreslonych lokalizacji, uzywajac enumow VerticalAlignment i HorizontalAlignment w przestrzeni nazw IronPdf.Editing. Ten system pozycjonowania integruje sie z innymi funkcjami manipulacji stronami IronPDF.
Ktore enumy wyrownania powinienem uzyc do pozycjonowania?
:path=/static-assets/pdf/content-code-examples/how-to/custom-watermark-apply-rotation-opacity.cs
using IronPdf;
using IronPdf.Editing;
string watermarkHtml = @"
<img style='width: 200px;' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>");
// Apply watermark with 45 degrees rotation and 70% opacity
pdf.ApplyWatermark(watermarkHtml, rotation: 45, opacity: 70);
pdf.SaveAs("watermarkOpacity&Rotation.pdf");
Imports IronPdf
Imports IronPdf.Editing
Private watermarkHtml As String = "
<img style='width: 200px;' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>
<h1>Iron Software</h1>"
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Watermark</h1>")
' Apply watermark with 45 degrees rotation and 70% opacity
pdf.ApplyWatermark(watermarkHtml, rotation:= 45, opacity:= 70)
pdf.SaveAs("watermarkOpacity&Rotation.pdf")
Zaawansowane techniki pozycjonowania
Dla zlozonych wymagan dotyczacych pozycjonowania, Polacz znaki wodne z niestandardowymi marginesami i transformacjami specyficznymi dla strony. Oto przyklad tworzenia wielu znakow wodnych w roznych pozycjach:
// Example: Adding multiple watermarks with different positions
string dateWatermark = $"<p style='font-size: 10px;'>Generated: {DateTime.Now:yyyy-MM-dd}</p>";
string confidentialWatermark = "<h2 style='color: red;'>CONFIDENTIAL</h2>";
string pageNumberWatermark = "<p style='font-size: 12px;'>Page {page} of {total}</p>";
// Apply date at top-left
pdf.ApplyWatermark(dateWatermark, 30, VerticalAlignment.Top, HorizontalAlignment.Left);
// Apply confidential mark at center
pdf.ApplyWatermark(confidentialWatermark, 50, VerticalAlignment.Middle, HorizontalAlignment.Center);
// Note: For page numbers, consider using Headers and Footers instead
// Example: Adding multiple watermarks with different positions
string dateWatermark = $"<p style='font-size: 10px;'>Generated: {DateTime.Now:yyyy-MM-dd}</p>";
string confidentialWatermark = "<h2 style='color: red;'>CONFIDENTIAL</h2>";
string pageNumberWatermark = "<p style='font-size: 12px;'>Page {page} of {total}</p>";
// Apply date at top-left
pdf.ApplyWatermark(dateWatermark, 30, VerticalAlignment.Top, HorizontalAlignment.Left);
// Apply confidential mark at center
pdf.ApplyWatermark(confidentialWatermark, 50, VerticalAlignment.Middle, HorizontalAlignment.Center);
// Note: For page numbers, consider using Headers and Footers instead
' Example: Adding multiple watermarks with different positions
Dim dateWatermark As String = $"<p style='font-size: 10px;'>Generated: {DateTime.Now:yyyy-MM-dd}</p>"
Dim confidentialWatermark As String = "<h2 style='color: red;'>CONFIDENTIAL</h2>"
Dim pageNumberWatermark As String = "<p style='font-size: 12px;'>Page {page} of {total}</p>"
' Apply date at top-left
pdf.ApplyWatermark(dateWatermark, 30, VerticalAlignment.Top, HorizontalAlignment.Left)
' Apply confidential mark at center
pdf.ApplyWatermark(confidentialWatermark, 50, VerticalAlignment.Middle, HorizontalAlignment.Center)
' Note: For page numbers, consider using Headers and Footers instead
Jakie sa najbardziej popularne wzorce pozycjonowania znakow wodnych?
Najlepsze praktyki dla profesjonalnych znakow wodnych
Podczas tworzenia znakow wodnych dla profesjonalnych dokumentow postepuj zgodnie z tymi najlepszymi praktykami:
- Zachowaj czytelnosc: Upewnij sie, ze znaki wodne nie przeszkadzaja w tresci dokumentu
- Spójność marki: Uzywaj kolorow firmy i czcionek zgodnych z wytycznymi marki
- Względy bezpieczeństwa: Dla dokumentow wrazliwych Polacz znaki wodne z szyfrowaniem PDF
- Wydajnosc: Dla przetwarzania wsadowego, optymalizuj watermark HTML i uzywaj operacji asynchronicznych
Znakowanie wodne w aplikacjach Enterprise
Dla aplikacji Enterprise przetwarzajacych duze ilosci plikow PDF, wprowadz znaki wodne wraz z kompresja PDF, aby zoptymalizowac rozmiary plikow. Zintegruj znakowanie wodne w swojej aplikacji generujacej PDF do zautomatyzowanego przetwarzania dokumentow.
Gotowy, aby sprawdzić, co jeszcze możesz zrobić? Zapoznaj się z naszą stroną z samouczkami tutaj: Edytuj pliki PDF
Często Zadawane Pytania
How do I add a watermark to a PDF in C#?
You can add watermarks to PDFs using IronPDF's ApplyWatermark method with just one line of code. Simply load your PDF document and call ApplyWatermark with an HTML string containing your watermark content and position: new IronPdf.PdfDocument.FromFile("input.pdf").ApplyWatermark("Confidential", IronPdf.PagePosition.TopCenter).SaveAs("output.pdf");
What types of watermarks can I add to my PDF?
IronPDF supports both text and image watermarks. You can use any HTML content as a watermark, including text with custom fonts, images in various formats (PNG, JPG), and even complex layouts with full CSS styling. The watermark appears behind the main content to ensure document readability.
Can I customize the position of my watermark?
Yes, IronPDF uses a simple 3x3 grid system for watermark positioning. You can place watermarks at positions like TopCenter, BottomRight, or any of the nine standard positions on the page. The position is specified as a parameter in the ApplyWatermark method.
How do I adjust watermark opacity and rotation?
IronPDF applies watermarks with a default opacity of 50%, but you can customize this using the opacity parameter. The ApplyWatermark method includes an overload that accepts both rotation and opacity parameters, allowing you to create semi-transparent or rotated watermarks for enhanced visual effects.
Can I apply different watermarks to specific pages?
Currently, IronPDF applies watermarks to all pages in a PDF document. Page-specific watermarks are not supported. When you use the ApplyWatermark method, the watermark will appear on every page of your PDF.
What HTML and CSS features are supported in watermarks?
IronPDF's watermark feature supports all standard HTML elements and CSS styling. This includes custom fonts, colors, web fonts, icons, and complex layouts. You can create professional watermarks that match your branding requirements using the full power of HTML and CSS.

