在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
处理PDF文件(便携式文档格式)文件是您工作环境中不可或缺的一部分,从生成发票到创建产品文档,您很可能会在生活中的某个时刻发现自己在使用 PDF。
然而,在当今技术驱动的世界中,PDF 工具层出不穷,您如何知道哪一种最适合您? 今天我们将介绍两个PDF工具,PdfPig 和IronPDF比较它们的功能、支持和许可模式。
IronPDFIronPDF是一个强大的.NET PDF库,可以用于在各种环境中生成、操作和处理PDF文件。 无论您是想从HTML内容创建PDF文档、在现有PDF文件上应用水印、完全控制PDF文件的安全设置,还是将PDF文件保存为图片,IronPDF都能满足您的需求。 IronPdf 拥有丰富的文档和强大的支持团队,可确保您获得成功所需的所有资源。
PdfPig 是一个开源的 Apache 2.0 许可库,允许用户在 C#、F# 和其他 .NET 语言中读取和创建 PDF 文件。 使用PdfPig,您可以创建简单的PDF文档、阅读PDF文件、从PDF文件中提取内容等等。 虽然它可能无法与IronPDF广泛的功能和文档相匹配,但PdfPig依然是一个强有力的竞争者,为您提供了一种更简单的处理PDF文件的方法。
在第一部分中,我们将概述每个库目前提供的跨平台支持。 这是今天比较的基本第一步,因为在我们开始查看功能及其用例之前,您首先需要知道我们正在查看的工具是否适用于您的工作环境。
IronPDF支持多种平台,确保您可以在首选环境中工作。 以下是其兼容性的分解:
.NET 版本:
请注意,您提供的内容是空的。请提供要翻译的文本。(C#, VB.NET, F#)
.NET Core(8、7、6、5 和 3.1+)
操作系统和处理器: 支持多种不同的操作系统和处理器,包括Windows、Mac、Linux、x64、x86、ARM。
有关详细信息,请访问IronPDF 兼容性指南.
.NET 版本
.NET标准(2.0+)
IronPDF和PdfPig都提供了一系列处理PDF文档的功能。 以下是它们主要功能的比较:
PDF编辑功能: 使用IronPDF,您可以轻松编辑PDF文件。 IronPDF 提供编辑功能,例如添加页眉和页脚、在 PDF 页面上盖章文本和图像、向 PDF 添加自定义水印、处理 PDF 表单以及合并 PDF 文件。
有关 IronPDF 所提供功能的详细特性信息,请访问IronPDF 功能页面.
HTML 转换为 PDF 示例这只是一项简单的任务,但根据您的需求,它可能会有所帮助。 无论您是想创建一个 PDF 文件来记录您的作品集中的网站,还是需要从 HTML 内容中创建 PDF 以用于您的工作环境,您都需要一个强大的 HTML 到 PDF 转换器,这样您才能始终如一地制作出高质量的 PDF。
IronPDF 代码示例:
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf
' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True
' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()
' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
pdf.SaveAs("output.pdf")
' Advanced Example with HTML Assets
' Load external html assets: images, CSS and JavaScript.
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
PdfPig 代码示例:
PdfPig本身不支持HTML到PDF的转换,需要您使用第三方库来处理转换。 PdfPig 更侧重于处理 PDF 创建而不是 PDF 转换。 所以如果您正在寻找一个具有内置转换支持的库,IronPDF将是一个不错的选择。
当您想将HTML内容或网页转换为PDF格式时,IronPDF提供了一个强大而简洁的工具来处理这项任务,而PdfPig则没有内置此类工具,依赖于外部库。
当您处理任何敏感或私密的PDF文件时,您会寻找一个能够处理安全任务的PDF工具,如加密 PDF 文件、编辑文档元数据并添加密码. 我们现在来看看这些工具将如何处理这种情况。
IronPDF 代码示例:
using IronPdf;
using System;
//Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
//Edit metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
//Edit file security settings
//The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
using IronPdf;
using System;
//Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
//Edit metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
//Edit file security settings
//The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
Imports IronPdf
Imports System
'Open an Encrypted File, alternatively create a new PDF from Html
Private pdf = PdfDocument.FromFile("encrypted.pdf", "password")
'Edit metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now
'Edit file security settings
'The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
' change or set the document encryption password
pdf.Password = "my-password"
pdf.SaveAs("secured.pdf")
PdfPig 代码示例:
PdfPig没有提供IronPDF所提供的内置PDF安全支持。 由于这个库的性质较为简单,您需要一个提供这些功能的外部PDF库来处理这个任务。
在处理敏感的PDF文件时,IronPDF提供了全面的安全功能,如加密、元数据编辑和密码保护,而PdfPig则缺乏内置的安全支持,需要额外的库来完成这些任务。
如果你想要删减某些词语或部分内容从您的 PDF 文件? 这是处理PDF文件时的另一个常见需求,让我们看看这些PDF库是否能够完成这项任务。
IronPDF 代码示例:
using IronPdf;
PdfDocument document = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
document.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
using IronPdf;
PdfDocument document = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
document.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
Imports IronPdf
Private document As PdfDocument = PdfDocument.FromFile("novel.pdf")
' Redact 'are' phrase from all pages
document.RedactTextOnAllPages("are")
pdf.SaveAs("redacted.pdf")
PdfPig 代码示例:
PdfPig不支持从PDF文件中删除内容。
IronPDF 提供了一种从 PDF 文件中编辑内容的简单方法,只需几行代码。 这意味着您可以轻松自动化任何编辑任务,提高工作场所的效率。 PdfPig则不支持此任务。
虽然这不太可能成为您每天处理PDF文件的必要部分,但根据您的工作环境,您可能会遇到需要的时候。对 PDF 文件进行数字签名因此,现在我们来看看这两种工具是如何处理这个问题的。
IronPDF 代码示例:
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
Imports System.Security.Cryptography.X509Certificates
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>foo</h1>")
' Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
Private cert As New X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable)
' Create PdfSignature object
Private sig = New PdfSignature(cert)
' Sign PDF document
pdf.Sign(sig)
pdf.SaveAs("signed.pdf")
PdfPig 代码示例:
PdfPig 不直接支持数字签名,您需要使用其他库或工具来完成此操作。
如果您正在寻找一个工具来轻松签署PDF文件,IronPDF的简便方法不仅可以提高您执行此任务的效率,还可以让您完全控制整个过程。 PdfPig不支持对PDF文件进行数字签名。
您是否在处理敏感文件,或者寻求保护您的工作以避免他人盗用并声称是自己的? 然后应用自定义为您的 PDF 页面添加水印这正是您所需要的。 让我们看看这些库如何处理这个任务。
IronPDF 代码示例:
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
Imports IronPdf
' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("C:\Path\To\Watermarked.pdf")
PdfPig 代码示例:
PdfPig 不直接支持水印功能。
尽管PdfPig不支持在您的PDF中添加水印,但IronPDF支持。 利用其内置支持添加水印的功能,您可以完全控制整个过程,如果您熟悉HTML和CSS,那么由于它使用HTML/CSS来应用水印,您会发现这一过程更加容易掌握。
在 PDF 文件中印制图像和文本从某种意义上说,"水印 "和 "水印 "的应用是一样的,也可以用于类似的原因,但这两个库能否完成这项任务呢?
IronPDF 代码示例:
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");
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")
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");
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")
PdfPig 代码示例:
PdfPig 本身不支持在 PDF 文件上盖章 PDF 图像对象或文本。 如果您想在PDF文档上添加文字和图像,您将需要使用额外的库。
如果您正在寻找一个可以在您的PDF上添加文字和图像印章的工具,那么IronPDF将是您的理想选择。 凭借其强大的内置印章工具,您将能够完全控制整个过程,并能够在您的文件上盖上任何您需要的印章。 如果您想在文本印章器中添加不同的字体,IronPDF 支持 TrueType 格式的字体。 PdfPig不提供相同的支持,因此无法执行此任务。
将HTML转换为PDF之外的另一个常见转换任务是将 DOCX 文件转换为 PDF 格式. 因此,如果这是您日常工作中经常或偶尔遇到的问题,拥有一个能轻松处理此任务的工具可以极大地提高您工作场所的效率。
IronPDF 代码示例:
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer As New DocxToPdfRenderer()
' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
PdfPig 代码示例:
PdfPig 不支持 DOCX 到 PDF 的转换。 再次,正如我们在HTML转PDF转换中看到的那样,PdfPig更专注于从头开始创建PDF,而不是支持转换任务。
使用IronPDF,将DOCX转换为PDF非常容易。 使用这个工具,您可以在几行代码内将任何DOCX文件转换为PDF,使其简洁、直接且功能强大。 PdfPig 无法处理 DOCX 到 PDF 的转换。
有关更多示例,请浏览广泛的IronPDF代码示例.
IronPDF 提供多样化的许可证定价选项. 开发人员还可以购买Iron Suite,提供以两个产品的价格访问Iron Software所有产品的权限。 如果您尚未准备购买许可证,IronPDF提供了一种免费试用持续30天。
IronSuite:花费 $1,498,您将获得所有Iron Software产品的访问权,包括IronPDF、IronOCR、IronWord、IronXL、IronBarcode、IronQR、IronZIP、IronPrint和IronWebScraper。
PdfPig 遵循 Apache License 2.0 许可证。这意味着只要您遵守此许可证条款的指南,您可以免费使用 PdfPig 库。 尽管它是免费的,因此使用PdfPig比使用IronPDF便宜,但在功能和支持方面与更昂贵的库如IronPDF相比则有所欠缺。
IronPDF 提供了全面的文档和支持选项,确保开发者能够最大限度地利用该库:
定期更新:每月产品更新,确保具备最新功能和安全补丁。
documentation on our website.文档和指南,并访问Iron Software的YouTube频道。
当涉及到选择适合您的PDF库时,这取决于您需要执行的任务和您的预算。 如果您正在寻找更经济实惠的选项,并且只需要执行基本任务,如创建PDF文档、阅读PDF文档和从中提取内容,那么PdfPig可能更适合您。
然而,如果您想要执行复杂的任务,并希望在一个地方拥有所有必需的工具,那么IronPDF是您的最佳选择,凭借其强大、丰富的功能集、详尽的文档和易于获取的支持,IronPDF可以是您工作空间中的强大补充。
您可以尝试 0 天免费试用 查看他们的可用功能。