發現.net中QuestPDF水印的最佳替代方案
Full Comparison
Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against QuestPDF on pricing, HTML support, and licensing.
水印是 PDF 文件中的重要元素,提供了所有權、真實性或保密性的視覺指示。 它們可以阻止未經授權的使用,並有助於保護智慧財產權,因此對企業和個人而言都至關重要。在本文中,我們將比較兩個功能強大的函式庫-IronPDF和QuestPDF-重點介紹它們在 C# 中 為 PDF 檔案加入水印的功能。
IronPDF 的概述
主要功能
IronPDF 是一個強大的 PDF 函式庫,可讓開發人員無縫建立、編輯和處理 PDF 文件。 與水印相關的主要功能包括
*靈活的浮水印功能:*支援文字和圖像浮水印,允許自訂字體、大小、顏色和透明度。 易於整合:**與 .NET 應用程式相容,可輕鬆整合到現有專案中。 *豐富的格式選項:提供豐富的浮水印樣式選項,增強文件的視覺吸引力。
安裝與設定
要開始使用 IronPDF,請遵循以下步驟:
1.在套件管理員控制台執行下列指令,安裝 IronPDF NuGet 套件:
:ProductInstall
:ProductInstall
1.在 C# 檔案中加入必要的命名空間:
using IronPdf;
using IronPdf;
Imports IronPdf
使用 IronPDF 在 PDF 文件中添加水印。
IronPDF利用 HTML 字串和 CSS 定義,為您的 PDF 文件添加完全自訂的水印。 水印工具可以接受任何 HTML 字串,即使其中包含圖片和 CSS 定義等資產,也可以將其套用到 PDF 檔案上作為水印。
using IronPdf;
class Program
{
static void Main()
{
// Load an existing PDF document.
PdfDocument pdf = PdfDocument.FromFile("existing.pdf");
// Define the watermark using HTML and CSS.
string watermark = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'><h1 style='color:red;'>CONFIDENTIAL</h1>";
// Apply the watermark with specified rotation and opacity.
pdf.ApplyWatermark(watermark, rotation: 45, opacity: 80);
// Save the watermarked document.
pdf.SaveAs("watermarked.pdf");
}
}
using IronPdf;
class Program
{
static void Main()
{
// Load an existing PDF document.
PdfDocument pdf = PdfDocument.FromFile("existing.pdf");
// Define the watermark using HTML and CSS.
string watermark = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'><h1 style='color:red;'>CONFIDENTIAL</h1>";
// Apply the watermark with specified rotation and opacity.
pdf.ApplyWatermark(watermark, rotation: 45, opacity: 80);
// Save the watermarked document.
pdf.SaveAs("watermarked.pdf");
}
}
Imports IronPdf
Friend Class Program
Shared Sub Main()
' Load an existing PDF document.
Dim pdf As PdfDocument = PdfDocument.FromFile("existing.pdf")
' Define the watermark using HTML and CSS.
Dim watermark As String = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'><h1 style='color:red;'>CONFIDENTIAL</h1>"
' Apply the watermark with specified rotation and opacity.
pdf.ApplyWatermark(watermark, rotation:= 45, opacity:= 80)
' Save the watermarked document.
pdf.SaveAs("watermarked.pdf")
End Sub
End Class
輸出 PDF 檔案
如您所見,我們建立了一個新的字串變數,其中包含我們的水印內容。 這是由 HTML 字串與標頭和圖片所組成。 當我們使用 ApplyWatermark 方法時,我們能夠設定自訂的旋轉和不透明度。
如果您想查看更多的進階範例和 IronPDF 提供的其他功能,請務必查看 使用指南!
QuestPDF 的概述
主要功能
QuestPDF 是一個現代化的 PDF 函式庫,強調易用性和開發人員友善的設計。 與水印相關的主要功能包括
*聲明式 API:*使用流暢的 API,讓開發人員以清晰直觀的方式定義浮水印。 高度可自訂性:**支援各種類型的浮水印,包括文字、圖像和形狀,並提供豐富的自訂選項。 *效能重點:針對速度和效率進行了最佳化,使其適用於大批量 PDF 生成。
安裝與設定
若要安裝 QuestPDF,請遵循下列步驟:
1.使用下列指令安裝 QuestPDF NuGet 套件:
Install-Package QuestPDF
Install-Package QuestPDF
1.在您的 C# 檔案中包含必要的命名空間:
using QuestPDF;
using QuestPDF;
Imports QuestPDF
使用 QuestPDF 添加水印。
QuestPDF 採用不同的方式將水印套用至 PDF 檔案。 使用 QuestPDF,可透過水印槽(在背景和前景上)來達成這一目的,水印槽可用於在 PDF 的特定頁面或所有頁面上新增水印內容。
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
public class WatermarkExample
{
public static void Main()
{
// Set the license type to Community for QuestPDF.
QuestPDF.Settings.License = LicenseType.Community;
// Create a PDF document with a defined structure.
Document.Create(container =>
{
container.Page(page =>
{
page.Margin(50);
// Add a foreground watermark.
page.Foreground().Element(watermark =>
{
watermark.Text("DRAFT")
.FontSize(40)
.FontColor(Colors.Red.Medium)
.AlignLeft();
});
// Add the main content of the page.
page.Content().Element(ComposeContent);
});
})
.GeneratePdf("watermarked_document.pdf");
}
private static IContainer ComposeContent(IContainer container)
{
// Define the layout and content of the PDF.
container.Column(column =>
{
column.Spacing(10);
column.Item().Text("This is the main content of the PDF.");
column.Item().Text("Add more content as needed.");
});
return container; // Return the container to maintain method signature.
}
}
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
public class WatermarkExample
{
public static void Main()
{
// Set the license type to Community for QuestPDF.
QuestPDF.Settings.License = LicenseType.Community;
// Create a PDF document with a defined structure.
Document.Create(container =>
{
container.Page(page =>
{
page.Margin(50);
// Add a foreground watermark.
page.Foreground().Element(watermark =>
{
watermark.Text("DRAFT")
.FontSize(40)
.FontColor(Colors.Red.Medium)
.AlignLeft();
});
// Add the main content of the page.
page.Content().Element(ComposeContent);
});
})
.GeneratePdf("watermarked_document.pdf");
}
private static IContainer ComposeContent(IContainer container)
{
// Define the layout and content of the PDF.
container.Column(column =>
{
column.Spacing(10);
column.Item().Text("This is the main content of the PDF.");
column.Item().Text("Add more content as needed.");
});
return container; // Return the container to maintain method signature.
}
}
Imports QuestPDF.Fluent
Imports QuestPDF.Helpers
Imports QuestPDF.Infrastructure
Public Class WatermarkExample
Public Shared Sub Main()
' Set the license type to Community for QuestPDF.
QuestPDF.Settings.License = LicenseType.Community
' Create a PDF document with a defined structure.
Document.Create(Sub(container)
container.Page(Sub(page)
page.Margin(50)
' Add a foreground watermark.
page.Foreground().Element(Sub(watermark)
watermark.Text("DRAFT").FontSize(40).FontColor(Colors.Red.Medium).AlignLeft()
End Sub)
' Add the main content of the page.
page.Content().Element(AddressOf ComposeContent)
End Sub)
End Sub).GeneratePdf("watermarked_document.pdf")
End Sub
Private Shared Function ComposeContent(ByVal container As IContainer) As IContainer
' Define the layout and content of the PDF.
container.Column(Sub(column)
column.Spacing(10)
column.Item().Text("This is the main content of the PDF.")
column.Item().Text("Add more content as needed.")
End Sub)
Return container ' Return the container to maintain method signature.
End Function
End Class
輸出 PDF 文件
在 Main 方法中,我們首先建立一個頁面有 50 個單位頁邊的文件。 接下來,我們要建立我們想要使用的水印,也就是簡單的紅色文字"DRAFT",字型大小為 40,向左對齊。 與 IronPDF 的簡化方法相比,這種為 PDF 文件套用水印的方法較為僵化,設定也較為複雜。 使用 QuestPDF,您可能較難控制水印的外觀和位置。
水印功能比較
易用性
IronPDF 以其豐富的文件和範例提供了一種直接的方法,讓初學者也能輕鬆上手。 QuestPDF 藉由其宣告式 API,可進一步簡化流程,讓程式碼更加精簡,進而提升生產力。
自訂選項
這兩個函式庫都提供廣泛的自訂水印功能。 IronPDF 允許對文字和圖像進行詳細的樣式設計,而 QuestPDF 則提供更靈活的元素排列方式,並支援複雜的設計,因此適用於創意應用程式。
效能
在效能方面,兩個函式庫的表現都很好,但 QuestPDF 由於其高效率的設計,可能在速度上更勝一籌。 建議您在實際情境中測試這些函式庫,以確定哪一種最適合您的特定使用情況。
授權與定價
IronPDF 授權選項
IronPDF 以商業授權模式運作。
QuestPDF 授權選項
QuestPDF 提供開放源碼授權,並可選擇商業支援。 因此,對於尋求強大功能而又不需要大量財務承擔的開發人員而言,這是一個符合成本效益的選擇。
結論

IronPDF 和 QuestPDF 都是功能強大的函式庫,可用於在 C# 中為 PDF 加入水印。 IronPDF 的優勢在於其詳細的客製化選項和友善的使用方式,非常適合需要特定格式的使用者。 另一方面,QuestPDF 以其現代化的 API 設計和效能效率脫穎而出,吸引了尋求快速直覺解決方案的開發人員。
對於需要大量客製化的場景,IronPDF 可能是首選。相反,QuestPDF 則非常適合將速度和易用性放在首位的專案。
您可以下載 免費試用版,親自試用 IronPDF,探索它如何讓您的 C# PDF 專案更上一層樓!
常見問題解答
如何在 C# 中向 PDF 添加浮水印?
您可以使用 IronPDF 在 C# 中通過定義帶有 HTML 和 CSS 的浮水印來向 PDF 添加浮水印。可以使用 ApplyWatermark 方法應用浮水印,允許在旋轉和不透明度方面進行定製。
應使用哪個 PDF 庫進行大量浮水印定制?
對於大量浮水印定制,推薦使用 IronPDF。它提供使用 HTML 和 CSS 進行詳細樣式設置,理想用於複雜的浮水印設計。
IronPDF 如何處理 PDF 浮水印?
IronPDF 通過允許用戶使用可定製的樣式應用文本或圖像浮水印來處理 PDF 浮水印。這種靈活性使得浮水印的外觀精確可控。
使用 IronPDF 對於 PDF 添加浮水印有哪些優勢?
使用 IronPDF 添加 PDF 浮水印的優勢包括與 .NET 應用的集成、支持浮水印的 HTML 和 CSS 样式以及轉換多種格式為 PDF 的能力。
如何在 .NET 中安裝 PDF 庫以添加浮水印?
要在 .NET 中安裝像 IronPDF 的 PDF 庫以添加浮水印,請使用 NuGet 包管理器並在您的包管理器控制台中運行命令Install-Package IronPDF。
我可以使用 QuestPDF 向 PDF 添加浮水印嗎?
是的,QuestPDF 可以使用浮水印插槽來添加浮水印,允許將文本和其他元素定位在特定頁面或整個文檔中。
IronPDF 和 QuestPDF 在浮水印處理上的不同之處?
IronPDF 提供豐富的 HTML 和 CSS 樣式用於詳細的浮水印定製,而 QuestPDF 提供現代聲明式 API 和元素佈局的靈活性,適合創意佈局。
IronPDF 有免費試用版嗎?
是的,IronPDF 提供免費試用版,允許您探索其在 C# 項目中添加浮水印和其他 PDF 操作的功能。
哪個 PDF 庫最適合高性能浮水印處理?
QuestPDF 以其性能優化而聞名,適合速度是關鍵因素的項目。
IronPDF 的許可選擇有哪些?
IronPDF 採用商業許可模式,提供多種選擇以滿足不同開發者對強大 PDF 功能的需求。

