产品比较

在Windows上Wkhtmltopdf与IronPDF的比较

发布 2023年四月18日
分享:

IronPDF 和 wkhtmltopdf 这两个工具都可用于将 HTML 网页或包括图像在内的完整网站转换为 PDF 格式。不过,这两种工具在功能、性能和易用性方面存在一些差异。

什么是 wkhtmltopdf?

wkhtmltopdf 是一款开源的命令行工具,可将 HTML 网页或网站转换为 PDF 格式。它适用于 Windows、Linux 和 MacOS X 操作系统,可与 C# 和 Java 等多种编程语言配合使用。

wkhtmltopdf

如何在 Java 和 C&num 上安装 wkhtmltopdf;

以下是在 Windows 服务器上用 C# 和 Java 安装 wkhtmltopdf 的步骤:

为 C&num 安装 wkhtmltopdf;

1.从官方网站下载最新的 Windows 版本: https://wkhtmltopdf.org/downloads.html

2.双击下载的安装程序,按照安装向导中的说明安装 wkhtmltopdf。

3.安装完成后,我们需要修改路径,将 wkhtmltopdf 可执行文件添加到系统的修改 PATH 环境变量中。这可以通过命令提示符使用以下命令完成:

set PATH=%PATH%;C:\Program Files\wkhtmltopdf\bin  

安装 wkhtmltopdf for Java

1.从官方网站下载 Windows 版 wkhtmltopdf 的最新版本: https://wkhtmltopdf.org/downloads.html

2.将下载的压缩包内容解压到系统中的目标文件夹。

在 C# 和 Java 中,安装和使用 wkhtmltopdf 都需要通过命令提示符执行 wkhtmltopdf 命令,或使用 ProcessBuilder 类以编程方式执行命令。重要的是要确保 wkhtmltopdf 可执行文件已添加到系统的 PATH 环境变量中,并提供必要的开关和选项以生成所需的 PDF 输出文件。

什么是 IronPDF,如何为 C# 和 Java 安装 IronPDF

IronPDF 是一个允许开发人员使用 C# 和 Java 创建、操作和转换 PDF 的库。它提供了广泛的功能,包括 HTML 到 PDF 的转换、从头开始生成 PDF 和操作 PDF。

IronPDF

安装 IronPDF for C#

1.使用软件包管理器控制台或通过 Visual Studio UI 安装 IronPDF NuGet 软件包。

2.在代码中添加以下 using 语句,导入 IronPDF 命名空间:

    using IronPdf;  
    using IronPdf;  
Imports IronPdf
VB   C#
  1. 要从 HTML 内容生成 PDF,请使用以下代码:
    var Renderer = new ChromePdfRenderer(); 
    var PDF = Renderer.RenderHTMLFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");  
    var Renderer = new ChromePdfRenderer(); 
    var PDF = Renderer.RenderHTMLFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf");  
Dim Renderer = New ChromePdfRenderer()
	Dim PDF = Renderer.RenderHTMLFileAsPdf("IronFile.html").SaveAs("IronPDF file.pdf")
VB   C#
  1. 要从头开始创建 PDF,请使用以下代码:
  using IronPdf; var Renderer = new IronPdf.ChromePdfRenderer(); 
  // Create a PDF from a URL or local file path
  using var pdf = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20"); 
  // Export to a file or Stream 
  pdf.SaveAs("url.pdf");  
  using IronPdf; var Renderer = new IronPdf.ChromePdfRenderer(); 
  // Create a PDF from a URL or local file path
  using var pdf = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20"); 
  // Export to a file or Stream 
  pdf.SaveAs("url.pdf");  
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

输出

安装 IronPDF for Java

1.下载 图书馆 从 IronPDF 网站下载。

2.将 IronPDF JAR 文件添加到项目的类路径中。

3.在代码中导入 IronPDF 包:

  import com.ironsoftware.ironpdf.*;  
JAVA
  1. 安装完成后,使用以下代码即可从 HTML 内容生成 PDF:
  import com.ironsoftware.ironpdf.*;
  import java.io.IOException;
  import java.nio.file.Paths; 

  // Apply your license key 
  License.setLicenseKey("YOUR-LICENSE-KEY"); 

  // Set a log path 
  Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log")); 

  // Render the HTML as a PDF. Stored in myPdf as type PdfDocument; 
  PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(" ~Hello World~  Made with IronPDF!"); 

  // Save the PdfDocument to a file 
  myPdf.saveAs(Paths.get("html_saved.pdf"));  
JAVA

请注意,IronPDF 使用专有的 HTML 到 PDF 转换引擎,不依赖 wkhtmltopdf 等外部工具。

如何使用 IronPDF 和 wkhtmltopdf 在 C&num 中处理 PDF 文件;

IronPDF 和 Wkhtmltopdf 是两个可用于在 C# 中处理 PDF 文件的库。在本节中,我们将探讨如何使用这两个库来处理 PDF 文件。

操作 PDF 文件

使用 IronPDF 操作 PDF 文件

IronPDF 是一个 C# 库,可用于创建、操作和管理 PDF 文件。 渲染 PDF 文件。它提供了一个易于使用的 API,允许开发人员对 PDF 文件执行各种操作,如添加文本、图像和表格,以及合并、拆分、不整理和转换 PDF 文件。下面是一个如何使用 IronPDF 在 PDF 文件中添加文本的示例:

var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html");
Renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html");
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html");
Renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html");
Dim Renderer = New IronPdf.ChromePdfRenderer()
Dim PDF = Renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html")
Renderer.RenderHTMLFileAsPdf("Project/MyHtmlDocument.html")
VB   C#

HTML 转 PDF

使用 wkhtmltopdf 处理 PDF 文件

Wkhtmltopdf 是一款命令行工具,可用于将 HTML 页面转换为 PDF 文件。它使用 Qt WebKit 渲染引擎将 HTML 页面渲染为 PDF 格式。下面是一个如何使用 wkhtmltopdf 将 HTML 页面转换为 PDF 文件的示例:

using System.Text;
using System.Diagnostics;
static void Main(string [] args)
{
    //function calling
    ConvertChromePdfRenderer("URL", "Sample.pdf");
    Console.WriteLine("successfully created!");
    Console.ReadKey();
}
//function declaration
public static void ConvertChromePdfRenderer(string url, string filename)
{
    //function definition
    StringBuilder paramsBuilder = new StringBuilder();
    //make CLI command
    paramsBuilder.AppendFormat("\"{0}\" \"{1}\"", url, filename);
    //create new process
    using (Process process = new Process())
    {
        //specify wkhtmltopdf.exe file path to execute above CLI
        process.StartInfo.FileName = "C:\\Program Files (x86)\\wkhtmltopdf\\bin\\wkhtmltopdf.exe";
        //assign CLI as process argument
        process.StartInfo.Arguments = paramsBuilder.ToString();
        //setting the credentials
        process.StartInfo.UseShellExecute = false;
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.RedirectStandardError = true;
        //start execution
        process.Start();
        if (!process.WaitForExit(60000))
        {
            process.Kill();
        }
    }
}
using System.Text;
using System.Diagnostics;
static void Main(string [] args)
{
    //function calling
    ConvertChromePdfRenderer("URL", "Sample.pdf");
    Console.WriteLine("successfully created!");
    Console.ReadKey();
}
//function declaration
public static void ConvertChromePdfRenderer(string url, string filename)
{
    //function definition
    StringBuilder paramsBuilder = new StringBuilder();
    //make CLI command
    paramsBuilder.AppendFormat("\"{0}\" \"{1}\"", url, filename);
    //create new process
    using (Process process = new Process())
    {
        //specify wkhtmltopdf.exe file path to execute above CLI
        process.StartInfo.FileName = "C:\\Program Files (x86)\\wkhtmltopdf\\bin\\wkhtmltopdf.exe";
        //assign CLI as process argument
        process.StartInfo.Arguments = paramsBuilder.ToString();
        //setting the credentials
        process.StartInfo.UseShellExecute = false;
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.RedirectStandardError = true;
        //start execution
        process.Start();
        if (!process.WaitForExit(60000))
        {
            process.Kill();
        }
    }
}
Imports System.Text
Imports System.Diagnostics
Shared Sub Main(ByVal args() As String)
	'function calling
	ConvertChromePdfRenderer("URL", "Sample.pdf")
	Console.WriteLine("successfully created!")
	Console.ReadKey()
End Sub
'function declaration
Public Shared Sub ConvertChromePdfRenderer(ByVal url As String, ByVal filename As String)
	'function definition
	Dim paramsBuilder As New StringBuilder()
	'make CLI command
	paramsBuilder.AppendFormat("""{0}"" ""{1}""", url, filename)
	'create new process
	Using process As New Process()
		'specify wkhtmltopdf.exe file path to execute above CLI
		process.StartInfo.FileName = "C:\Program Files (x86)\wkhtmltopdf\bin\wkhtmltopdf.exe"
		'assign CLI as process argument
		process.StartInfo.Arguments = paramsBuilder.ToString()
		'setting the credentials
		process.StartInfo.UseShellExecute = False
		process.StartInfo.RedirectStandardOutput = True
		process.StartInfo.RedirectStandardError = True
		'start execution
		process.Start()
		If Not process.WaitForExit(60000) Then
			process.Kill()
		End If
	End Using
End Sub
VB   C#

总之,IronPDF 和 wkhtmltopdf 是两款功能强大的工具,可用于在 C# 中处理 PDF 文件。IronPDF 提供了一个易于使用的 API,用于创建、操作和渲染 PDF 文件,而 wkhtmltopdf 则是一个命令行工具,可用于将 HTML 页面转换为 PDF 文件。这两种工具各有优缺点,开发人员应选择最适合自己需要的工具。

使用 Qt WebKit 渲染引擎在 Java 中用 IronPDF 和 wkhtmltopdf 处理 PDF 文件

操作 PDF 文件是文档管理的重要组成部分,开发人员需要可靠的工具来帮助他们实现这一目标。Java 开发人员可以使用各种库和工具进行 PDF 操作,其中 IronPDF 和 wkhtmltopdf 是最受欢迎的选择。在本比较中,我们将探讨 Java 开发人员如何使用这些工具处理 PDF 文件。

IronPDF 是一个 C# PDF 库,提供简单快捷的 PDF 操作功能。它还有一个 Java 版本,允许 Java 开发人员享受同样的功能。IronPDF 提供了处理 PDF 的 API,包括创建、编辑和渲染 PDF 文档。它还支持 PDF 表单、注释、设置方向和安全功能。

要开始在 Java 中使用 IronPDF,开发人员需要从官方网站下载 IronPDF Java 库,并将其导入 Java 项目。

IronPDF

另一方面,wkhtmltopdf 是一款命令行工具,可使用 Qt WebKit 渲染引擎将整个 HTML 内容转换为便携文档格式。它是一款开源工具,适用于 Windows、Linux 和 macOS。Wkhtmltopdf 提供各种选项和开关,用于自定义 PDF 输出文件,如设置页边距、页面大小和方向。

要在 Java 中使用 wkhtmltopdf,开发人员可以使用 Java 中的 Process 类执行 wkhtmltopdf 工具。

wkhtmltopdf

IronPDF 和 wkhtmltopdf 都能在 Java 中提供可靠的 PDF 操作功能。IronPDF 更适合喜欢使用 API 的开发人员,而 wkhtmltopdf 则是喜欢使用命令行工具的开发人员的理想选择。此外,IronPDF 功能更丰富,可提供更多 PDF 定制选项,而 wkhtmltopdf 运行速度更快,占用空间更小。

两个图书馆的简要比较

功能

  • IronPDF 是一款功能齐全的 HTML 到 PDF 转换器,支持 CSS、JavaScript 和 HTML5。它还可用于为 PDF 文档添加页眉、页脚和水印,以及将多个 PDF 文件合并为一个文档。此外,它还包含 OCR 功能,可将扫描文档转换为可搜索的 PDF。
  • wkhtmltopdf 是一款命令行工具,主要用于将 HTML 转换为 PDF。它包括对 CSS 和 JavaScript 的基本支持,但不支持 HTML5。它不包含任何高级功能,如添加页眉、页脚或合并 PDF 文件。

性能

  • IronPDF 是一个经过性能优化的 .NET 库,可直接在 C# 或 Java 应用程序中使用。它能处理大型 HTML 文件,并能快速高效地生成 PDF。
  • wkhtmltopdf 是一种命令行工具,它依赖于外部进程来生成 PDF。这可能会导致性能降低,尤其是在处理大型 HTML 文件时。

易用性

  • IronPDF 易于使用,包含一个简单的 API,可直接集成到 C# 或 Java 应用程序中。它还包含大量的文档和支持资源,可帮助开发人员快速上手并运行。
  • wkhtmltopdf 要求开发人员使用命令行界面,这可能会更加复杂和耗时。此外,它还缺乏与 IronPDF 相同级别的文档和支持资源。

平台支持

  • IronPDF 是一个 .NET 库,可用于任何基于 .NET 的平台,包括 Windows、Linux 和 macOS。它还可以通过 IKVM.NET 运行时与 Java 一起使用。
  • wkhtmltopdf 是一款命令行工具,可用于 Windows、Linux 和 macOS。它还可与多种编程语言结合使用,包括 C# 和 Java。

成本

  • IronPDF 是一款商业产品,在生产环境中使用需要付费许可。不过,它也提供免费试用版,供开发人员测试和评估该工具。
  • wkhtmltopdf 是一款开源工具,可免费用于商业和非商业目的。

总之,IronPDF 是一款功能更全面、用户更友好的 HTML 到 PDF 的转换器,它对性能进行了优化,可直接在 C# 或 Java 应用程序中使用。不过,它是一款商业产品,在生产环境中使用需要付费许可。另一方面,wkhtmltopdf 是一款开源的命令行工具,可与 C# 和 Java 等多种编程语言配合使用,但缺乏 IronPDF 的某些高级功能和易用性。

定价和许可

IronPDF 和 wkhtmltopdf 是用于从 HTML 内容生成 PDF 文档的两种常用工具。虽然这两款工具提供的功能相似,但在许可和定价方面存在差异。

IronPDF 是一个商业软件库,商业使用需要许可证。它提供一系列许可选项,包括按开发人员、按服务器和按部署许可。IronPDF 为许可用户提供技术支持和软件更新。IronPDF 的定价因所选许可选项而异。

另一方面,wkhtmltopdf 是一款免费的开源工具。它采用 LGPLv3 许可,允许使用、修改和分发软件。不过,它不提供任何技术支持或软件更新。用户社区通过 GitHub issues 和 Stack Overflow 等各种渠道提供支持和更新。

在定价方面,IronPDF 比 wkhtmltopdf 更贵。IronPDF 每个开发人员许可证的起价为 399 美元,而 wkhtmltopdf 是免费使用的。

值得注意的是,IronPDF 和 wkhtmltopdf 都使用 Qt WebKit 渲染引擎将 HTML 内容转换为 PDF 文档。它们都提供生成 PDF 文档的命令行工具,并支持 HTML、URL 和本地文件等多种输入格式。

IronPDF 许可证协议屏幕

总之,IronPDF 和 wkhtmltopdf 在从 HTML 内容生成 PDF 文档方面提供了类似的功能。它们的主要区别在于许可和定价模式。IronPDF 是一个商业软件库,商业使用需要许可证,而 wkhtmltopdf 是一个开源工具,可免费安装。两者在创建 PDF 应用程序时都非常有用。

结论

总之,IronPDF 是一个功能强大的 PDF 操作库,适用于 .NET 语言。它旨在为开发人员提供一个易于使用且功能强大的工具来创建、编辑和处理 PDF 文件。IronPDF 专注于易用性和性能,是希望用 C# 或 Java 创建和操作 PDF 的开发人员的绝佳选择。

另一方面,wkhtmltopdf 是一款使用 Qt WebKit 渲染引擎将 HTML 转换为 PDF 文件的命令行工具。它是一款开源软件,可在 Windows、Linux 和 macOS 上使用。虽然它是一款功能强大的工具,但其功能仅限于将 HTML 转换为 PDF,而且它的设置和有效使用需要一些专业技术知识。

与 wkhtmltopdf 相比,IronPDF 的一个亮点在于它的许可证。虽然两款软件都采用 MIT 许可,但 IronPDF 提供商业许可,其中包括高级支持并允许在商业应用程序中使用。这使得它对于正在寻找可靠、稳定的 PDF 操作库的开发人员来说更具吸引力。

在技术能力方面,IronPDF 优于 wkhtmltopdf。凭借页面大小调整、图像压缩和文档加密等功能,IronPDF 为开发人员创建和处理 PDF 文件提供了更大的灵活性。此外,IronPDF 支持更广泛的图像格式,其 API 更简单、更直观,使开发人员更容易上手。

最后值得一提的是,IronPDF 是 Iron Software 产品套件的一部分,该套件还包括其他实用的 .NET 开发库。开发人员可以两个许可证的价格购买所有五个 Iron Software 产品,这对于那些希望获得最大价值的人来说是一个很有吸引力的套餐。

< 前一页
如何使用PDFSharp在C#(.NET 5)中生成PDF
下一步 >
使用 Itextsharp 添加数字签名到 PDF 在 C# 中

准备开始了吗? 版本: 2024.9 刚刚发布

免费NuGet下载 总下载量: 10,746,704 查看许可证 >