跳至页脚内容
产品比较

Wkhtmltopdf C#比较和代码示例

选择适合您需求的PDF库可能很困难,因为选择似乎无穷无尽。 比较时,关键要素包括提供的功能与您的需求、支持和文档的水平、学习曲线以及许可费用。 至关重要的是,还必须权衡安全性影响。

今天,我们将看看两个强大的PDF生成库:WkHtmlToPdf和IronPDF。 每个都有独特的优势。 但是,在C#中使用WkHtmlToPdf可能会引入安全风险。 由于它依赖于外部可执行文件(WebKit),漏洞或命令清理不当可能被利用,导致通过精心构造的HTML或参数危及服务器。

作为更安全的替代方案,可以考虑IronPDF。 它是一个托管的.NET库,减少了与外部进程相关的攻击面。 IronPDF在应用程序的安全上下文中运行,为PDF生成和处理提供了可能更安全的环境,直接在C#中。 我们的比较将探讨它们的功能、优点以及这些重要的安全性差异。

IronPDF。和WkHtmlToPdf概述

IronPDF是一个强大的C#库,可以在.NET框架内实现无缝的PDF创建、操作和处理。 凭借用户友好的API和对各种PDF相关功能的广泛支持,IronPDF使开发人员更容易将PDF功能集成到C#应用程序中。 该库以其全面的功能集而闻名,包括HTML到PDF的转换、文本和图像提取、表单处理以及文档安全选项,如加密和数字签名。 您可以通过NuGet包管理器控制台轻松安装IronPDF,让它立即运行。有关更多信息,请访问IronPDF的官方网站

WkHtmlToPdf是WkHtmlToPdf库的.NET Core P/Invoke包装器,这是一种使用Qt Webkit渲染引擎将HTML页面转换为PDF的流行工具。这个开源库是从DinkToPdf分支出来的,提供了基本的HTML到PDF转换功能,重点在于简单和高效。 安装起来很简单; 下载并运行WkHtmlToPdf可执行文件后,您所需要的就是确保将其添加到系统的路径环境变量中。 虽然缺乏IronPDF所提供的高级功能,但WkHtmlToPdf是一个轻量级且易于使用的库。

跨平台兼容性

IronPDF。

IronPDF凭借其广泛的跨平台兼容性而脱颖而出。 它支持.NET框架内的多种环境,确保在不同平台之间的无缝操作。

  • .NET 版本:

    • 完全用C#、VB.NET和F#编写并支持。
    • .NET Core (8, 7, 6, 5和3.1+)。
    • .NET Standard (2.0+)。
    • .NET Framework (4.6.2+)。
  • 应用环境:IronPDF可在多个应用环境中运行,如Windows、Linux、Mac、Docker、Azure和AWS。

  • IDEs:支持Microsoft Visual Studio和JetBrains Rider & ReSharper等集成开发环境。

  • 操作系统和处理器:支持多种不同的操作系统和处理器,包括Windows、Mac、Linux、x64、x86、ARM。

有关IronPDF兼容性的更多详细信息,请访问IronPDF兼容性

WkHtmlToPdf

  • .NET 版本: As a command-line tool, WkHtmlToPdf itself doesn't have direct .NET support, however, .NET developers typically interact with it using a wrapper or library, such as DinkToPdf.

  • 应用环境:WkHtmlToPdf在Windows、Linux和macOS等多个应用环境中运行平稳。

  • 编程语言:WkHtmlToPdf主要通过命令行工具使用或与C#、Java、Python、PHP和Node.js等编程语言集成。

安装

安装 IronPDF。

要使用IronPDF,请在Visual Studio中通过NuGet包管理器安装它:

Install-Package IronPdf

安装Wkhtmltopdf

  1. 下载安装程序:

    • 前往WkHtmlToPdf下载页面。
    • 在“Windows”部分下,下载最新的稳定版本安装程序(例如,.exe文件)。
  2. 运行安装程序:

    • 双击下载的.exe文件。
    • 按照安装提示进行操作。
    • 在安装过程中,您可以选择将WkHtmlToPdf添加到系统PATH中,以便从任何命令提示符访问。
  3. 验证安装:
    • 打开命令提示符 (cmd)。
    • 输入 wkhtmltopdf --version以检查它是否正确安装。 您应会看到屏幕上显示的版本号。

关键功能比较:IronPDF与WkHtmlToPdf中的PDF功能

在比较IronPDFWkHtmlToPdf时,重要的是要查看这两个库提供的PDF生成和操作的功能。

IronPDF。 Features:

  • PDF转换:IronPDF可以将HTML转换为PDF。 凭借对现代网络标准的全面支持,您可以放心,IronPDF将始终从您的HTML页面、文件或内容中返回像素完美的PDF。 IronPDF还可以将其他格式的文件转换为PDF,如DOCX、图像、RTF等。

  • PDF生成:使用IronPDF,您可以从URL、图像格式、ASPX文件或HTML字符串生成PDF。

  • 安全功能:使用IronPDF,您可以始终确保任何敏感PDF文件都是安全的,感谢其安全功能。 使用IronPDF加密您的PDF文件,设置密码,并为PDF文件设置权限。

  • PDF编辑功能:使用IronPDF,您可以轻松处理现有的PDF文档,编辑它们,并读取PDF文件。 IronPDF提供编辑功能,如添加页眉和页脚,将文本和图像印在PDF页面上,为PDF添加自定义水印,处理PDF表单,以及拆分或合并PDF文件。

有关IronPDF功能的更多详情,请访问IronPDF功能

WkHtmlToPdf C#关键功能:

  • HTML到PDF转换:转换HTML页面、文件、字符串和CSS内容为PDF,保留原始布局。

  • 自定义选项:支持页面大小、页边距、页眉、页脚等。

  • 开源:在MIT许可证下免费使用。

  • 跨平台兼容性:在Windows、Linux和macOS环境中运行。

IronPDF与WkHtmlToPdf的代码示例关键功能比较

HTML 到 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>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
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>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
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>")

' Export to a file or Stream
pdf.SaveAs("output.pdf")

' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf (使用DinkToPdf):

using DinkToPdf;
var converter = new BasicConverter(new PdfTools());
var doc = new HtmlToPdfDocument()
{
    Objects = { new ObjectSettings() { HtmlContent = "<h1>Hello World</h1>" } }
};
byte[] pdf = converter.Convert(doc);
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf);
using DinkToPdf;
var converter = new BasicConverter(new PdfTools());
var doc = new HtmlToPdfDocument()
{
    Objects = { new ObjectSettings() { HtmlContent = "<h1>Hello World</h1>" } }
};
byte[] pdf = converter.Convert(doc);
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf);
Imports DinkToPdf
Private converter = New BasicConverter(New PdfTools())
Private doc = New HtmlToPdfDocument() With {
	.Objects = {
		New ObjectSettings() With {.HtmlContent = "<h1>Hello World</h1>"}
	}
}
Private pdf() As Byte = converter.Convert(doc)
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf)
$vbLabelText   $csharpLabel

WkHtmlToPdf (使用命令行)

wkhtmltopdf myfile.html myfile.pdf
wkhtmltopdf myfile.html myfile.pdf
SHELL

使用IronPDF,您可以通过简短的代码行从HTML内容创建像素完美的PDF文件! 其对现代网络标准的支持确保您生成的PDF文件尽可能保持原始来源的质量。 WkHtmlToPdf围绕HTML转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 file 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 file 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 file 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")
$vbLabelText   $csharpLabel

WkHtmlToPdf:

WkHtmlToPdf不直接提供加密支持,需要第三方库。

IronPDF提供了一种简单易用的方式来加密PDF文件,并让您在整个过程中具备充足的控制权。 WkHtmlToPdf由于它主要是专注于HTML转PDF转换工具,因此自身不提供任何直接的PDF加密支持。

编辑PDF内容

IronPDF:

using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");

pdf.SaveAs("redacted.pdf");
using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");

pdf.SaveAs("redacted.pdf");
Imports IronPdf

Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")

' Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are")

pdf.SaveAs("redacted.pdf")
$vbLabelText   $csharpLabel

WkHtmlToPdf:

WkHtmlToPdf缺乏内置的修订功能。

IronPDF的修订功能是一个强大而简洁的API,可以方便地在代码中修订指定内容,简化修订任务的自动化过程。 WkHtmlToPdf不提供任何内置的PDF修订支持。

为 PDF 文件添加数字签名

IronPDF:

using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;

// Instantiate Renderer
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;

// Instantiate Renderer
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

' Instantiate Renderer
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")
$vbLabelText   $csharpLabel

WkHtmlToPdf C#:

WkHtmlToPdf C#不提供对PDF签名的本地支持。

使用IronPDF时,您可以轻松地数字签名您的PDF,多亏了它简单易用的数字签名功能。 这个强大的签名工具为您提供程序化数字签名PDF文件所需的工具,如果您经常签署PDF文件,它能为您节省时间。 WkHtmlToPdf本身无法处理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")
$vbLabelText   $csharpLabel

WkHtmlToPdf:

没有直接明确的方法来做到这一点。 相反,您需要实现高级CSS样式以应用水印或使用可以处理此任务的单独的PDF库。

IronPDF为用户提供了强大而简洁的水印工具。 使用类似于HTML/CSS的方法,IronPDF 的水印工具易于使用,使得将自定义水印应用于PDF文件变得轻而易举。 如果您单独使用WkHtmlToPdf,仅通过使用CSS才能实现水印。

图像和文本的钤印

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

WkHtmlToPdf C#:

文本和图像的钤印需要使用HTML和CSS的间接方法,因为它没有任何内置的特定选项。

使用IronPDF,将图像和文本钤印到PDF文件上从未如此简单,这要归功于其强大且易于使用的图像和文本钤印工具。 WkHtmlToPdf不包含任何内置的钤印工具,但您仍然可以通过使用HTML和CSS应用钤印内容来获得类似的结果。

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

WkHtmlToPdf C#:

需要额外的库来处理DOCX到PDF的转换。

IronPDF简化了DOCX到PDF转换,凭借其强大的DOCX到PDF工具,并且仅需几行代码,从而最终提高您的项目效率。 WkHtmlToPdf不提供任何内置的DOCX到PDF转换支持; 相反,您需要查看可以处理此任务的其他PDF库。

代码示例比较总结

要了解 IronPDF 提供的丰富功能,并在实际工作中看到它们,请查看 IronPDF 的如何操作指南,深度挖掘每个功能,探索其工作原理,并给您成为 PDF 专家的技能。

定价和授权:IronPDF与WkHtmlToPdf

IronPDF。

IronPDF 为购买许可证提供了不同级别和附加功能。 开发人员还可以购买Iron Suite,以两种产品的价格获得IronSoftware的所有产品。 如果您还没准备好购买许可证,IronPDF提供了免费试用版,让您在购买许可证前探索所有功能。

  • 永久许可证:提供一系列永久许可证,具体取决于团队规模、项目需求和地点数量。 每种许可证类型都配有电子邮件支持。

  • Lite License:此许可证支持一位开发人员、一个地点和一个项目。

  • Plus License:支持三位开发人员、三个地点和三个项目,这是比lite许可证的进一步升级。 Plus许可证除了电子邮件支持外,还提供聊天支持和电话支持。

  • Professional License:此许可证适用于较大的团队,支持十位开发人员、十个地点和十个项目。 该许可证提供与之前的层级相同的联系方式支持渠道,并额外支持屏幕共享。

  • 免版税再发行:IronPDF的授权还提供附加成本的免版税再发行保障。

  • 不间断的产品支持:IronPDF提供持续的产品更新、安全功能升级,以及其工程团队的支持。

  • Iron Suite: You get access to all Iron Software products including IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint, and IronWebScraper.

WkHtmlToPdf

WkHtmlToPdf是一个免费使用的开源工具,遵循LGPL许可证,该许可证允许您在专有应用程序中使用wkhtmltopdf,只要不修改库本身。

文档和支持:IronPDF与WkHtmlToPdf

IronPDF。

IronPDF在提供详细使用文档和支持方面表现突出:

  • 全面的文档: 涵盖所有功能的详尽且用户友好的文档。

  • 24/5支持: 提供活跃的工程师支持。

  • 视频教程: 在YouTube上提供分步视频指导。

  • 社区论坛: 提供活跃的社区以获得额外支持。

  • 定期更新: 每月产品更新以确保最新功能和安全补丁。

  • PDF API参考:提供API参考,以便您能充分利用我们的工具。

For more information, check out IronPDF's extensive documentation, and visit the IronSoftware YouTube Channel.

WkHtmlToPdf

  • GitHub:WkHtmlToPdf的GitHub库是用户在使用该工具时报告问题的地方。

  • Stack Overflow:在这里,您可以找到许多与WkHtmlToPdf相关的问题和答案,并获得社区建议。

  • 官方文档:官方文档提供有关安装、使用、命令行选项和常见配置的详细信息。

结论

综上所述,IronPDF和WkHtmlToPdf均在C#中的PDF生成和操作方面具有独特优势。 IronPDF凭借其全面的功能集,包括加密、修订、数字签名和无缝的DOCX到PDF转换等高级PDF功能而脱颖而出,使其成为开发人员寻找多功能且易于使用的库的强大解决方案。 其丰富的功能集和广泛的文档,使IronPDF成为您开发工具包中的一个强大工具,尤其当您经常处理PDF文件时。

另一方面,WkHtmlToPdf在HTML转PDF转换方面简洁高效,尤其适合寻求轻量级开源解决方案的用户,而无需高级PDF操作功能。 虽然它缺乏IronPDF的一些更复杂的功能,但WkHtmlToPdf的易用性、跨平台支持和零成本使其成为基本PDF生成任务的有吸引力的选择。 最终,在项目的特定需求、高级PDF功能的需要和预算考量的保证下,IronPDF和WkHtmlToPdf间的选择仍可能有所不同。

您可以尝试30天免费试用 以查看他们提供的功能。

[{i:(WkHtmlToPdf是其各自所有者的注册商标。 本网站与WkHtmlToPdf无关、未经其认可或提供赞助。 所有产品名称、徽标和品牌均为其各自所有者的财产。 比较仅供参考,反映的是撰写时的公开信息。]

常见问题解答

如何在C#中将HTML转换为PDF?

您可以使用IronPDF的RenderHtmlAsPdf方法将HTML字符串转换为PDF。此外,您还可以使用RenderHtmlFileAsPdf将HTML文件转换为PDF。

IronPDF和WkHtmlToPdf之间的主要区别是什么?

IronPDF提供了全面的功能集,包括文本提取、表单处理、加密和数字签名,以及跨平台兼容性。WkHtmlToPdf是一个专注于简单HTML到PDF转换的开源工具。

我如何在.NET项目中安装IronPDF?

可以通过在Visual Studio中执行命令Install-Package IronPdf使用NuGet包管理器安装IronPDF。

是否可以使用IronPDF加密PDF?

是的,IronPDF提供选项来加密PDF文件、设置密码并分配权限以增强文档安全性。

IronPDF 支持跨平台开发吗?

确实,IronPDF在.NET框架中的各种环境中兼容,包括Windows、Linux、Mac、Docker、Azure和AWS。

IronPDF 能否将 DOCX 文件转换为 PDF?

是的,IronPDF包括无缝转换DOCX文件为PDF的功能。

IronPDF用户可以获得哪些支持?

IronPDF提供详细的文档、24/5工程师支持、视频教程、社区论坛和定期软件更新。

如何安装WkHtmlToPdf?

要安装WkHtmlToPdf,从其官方网站下载可执行文件,运行安装程序,并确保其包含在系统的PATH中。

使用WkHtmlToPdf有什么许可影响?

WkHtmlToPdf是根据LGPL许可证分发的,允许在开源和专有应用程序中免费使用。

WkHtmlToPdf是否提供PDF加密支持?

不,WkHtmlToPdf不提供本地PDF加密支持。需要额外的第三方库来实现加密功能。

Kye Stuart
技术作家

Kye Stuart 在 Iron Software 中将编码热情与写作技能结合在一起。他在 Yoobee 学院接受软件部署教育,现在将复杂的技术概念转化为清晰的教育内容。Kye 重视终身学习,接受新的技术挑战。

工作之余,他们喜欢 PC 游戏、Twitch 上的直播,以及户外活动如园艺和带狗 Jaiya 散步。Kye 的直截了当的方法使他们成为 Iron Software 使命的关键,即为全球开发者解密技术。