在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
PDF 文件在各种行业中用于发票和文档生成。 在生成文档时,开发者使用PDF格式来满足客户的需求。 有了现在市场上的图书馆,创建 PDF 变得前所未有的简单。 在项目中使用此类库时,我们必须评估构建、阅读和转换等因素,以确定哪个库是市场上最好的。
在本文中,我们将比较.NET 组件中最流行的两个 PDF 库。 这两个图书馆是
NReco
IronPDF 和 NReco 是两个库,可用于在您的 .NET 应用程序中创建、阅读、更新和操作 PDF 文件,无论是桌面应用程序、Web应用程序还是移动应用程序。 我们首先将比较两个库的功能,然后我们将研究它们在转换和操作PDF文件方面的性能。 微软的 .NET Framework 支持这两种库。
下一个问题是决定哪个C# PDF库最适合您的.NET项目。 在阅读以下两个图书馆的比较时,您可以权衡自己的决定。
首先让我们看看这两个库都能提供什么,然后再进行比较。
IronPDF .NET PDF库解决方案是开发者的梦想,特别是C#软件工程师。 您可以使用这个优秀的工具轻松创建一个.NET Core PDF处理应用程序。
IronPDF 使用 .NET Chromium 引擎将 HTML 页面渲染为 PDF 文件。 无需使用复杂的API来渲染或操作PDF文件。 IronPDF支持标准的网络技术:HTML、ASPX、JS、CSS和图像。
它还能让您使用 HTML5、CSS、JavaScript 和图像创建 .NET PDF 库。 您可以轻松地编辑PDF、添加水印以及添加页眉和页脚。 此外,它能非常容易地读取PDF文本和提取图片。
其中一些重要功能包括
NReco为.NET和.NET Core提供了一个用于HTML到PDF转换的库。 它可以从HTML模板或网页URL生成PDF文件。
在大多数情况下 (99% 的时间)PDFs由NReco生成的外观与在网页浏览器中显示的网页非常相似。 引擎支持页面页眉/页脚、页码、自定义字体和JavaScript执行。
NReco 库基于 WkHtmlToPdf 命令行工具,该工具使用 WebKit 引擎将 HTML 内容渲染为 PDFs。 该库使用了wkhtmltoPdf二进制文件 (win-x86) 在执行期间。 无需手动安装这些。 NReco 库在运行时自动提取并执行 wkHtmlToPdf 二进制文件,以方便使用。
我们将在Visual Studio中创建一个新项目,以演示这两个库如何进行PDF生成。
打开 Visual Studio。 单击创建新项目 => 选择模板 (控制台应用程序) => 单击 "下一步" => 命名项目 => 选择 .NET 框架版本 => 单击 "创建 "按钮。
将创建一个新项目。
我们逐一安装这两个库。
下载和安装 IronPDF 库有四种方法。 具体如下
下载 IronPDF .DLL 库从 IronPDF 网页.
让我们逐一进行详细了解。
按照以下步骤从NuGet包管理器下载IronPDF。
从菜单栏中,点击 工具 > NuGet 包管理器 > 管理解决方案的 NuGet 包。
一个新窗口将会出现。 点击浏览 => 搜索 IronPDF => 单击下面显示的安装按钮。
这将在我们的项目中安装 IronPDF 库。
在 Visual Studio 中,转到 工具 > NuGet 包管理器 > 包管理器控制台
在软件包管理器控制台选项卡中输入以下一行:
Install-Package IronPdf
第三种方法是直接从网站上下载 NuGet 软件包。
点击此处 链接 从网站直接下载最新包。下载后,按照以下步骤将包添加到项目中。
选择选项参考,然后导航到下载的参考位置。
然后,单击 "确定 "添加引用。
NReco 库可以通过以下四种方式之一下载。
如上所述,只需前往 NuGet 包管理器并搜索关键词“NReco”。
在 Visual Studio 中,转到 工具 > NuGet 包管理器 > 包管理器控制台
在软件包管理器控制台选项卡中输入以下一行:
Install-Package NReco.PdfGenerator -Version 1.2.0
第三种方法是直接从网站上下载 NuGet 软件包。
点击此处 链接 查看可用 DLLs 的列表。 下载适用于各种 .NET 框架的最新包,下载后,请按照以下步骤将包添加到项目中。
单击 "确定 "添加引用。
让我们探索这两个库的功能。
这两个库都支持生成PDF文档,但它们的实现方式不同。
ChromePdfRenderer chromePdfRenderer = new ChromePdfRenderer();
var file = chromePdfRenderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
file.SaveAs(@"D:\urlToPdfIronPDF.pdf");
ChromePdfRenderer chromePdfRenderer = new ChromePdfRenderer();
var file = chromePdfRenderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
file.SaveAs(@"D:\urlToPdfIronPDF.pdf");
Dim chromePdfRenderer As New ChromePdfRenderer()
Dim file = chromePdfRenderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")
file.SaveAs("D:\urlToPdfIronPDF.pdf")
上述代码将从提供的URL生成PDF。 源代码的输出如下。
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); htmlToPdf.GeneratePdfFromFile("https://en.wikipedia.org/wiki/PDF", null, @"D:\urlToPDFNreco.pdf");
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); htmlToPdf.GeneratePdfFromFile("https://en.wikipedia.org/wiki/PDF", null, @"D:\urlToPDFNreco.pdf");
Dim htmlToPdf = New NReco.PdfGenerator.HtmlToPdfConverter()
htmlToPdf.GeneratePdfFromFile("https://en.wikipedia.org/wiki/PDF", Nothing, "D:\urlToPDFNreco.pdf")
使用 NReco 从 URL 生成 PDF 需要使用另一个库:NReco.PDFGenerator.LT 此外,生成 PDF 需要商业许可证。 没有它,上述代码将抛出下面显示的异常:
string htmlstring = "<h1> This is sample pdf generated by IronPDF</h1>";
ChromePdfRenderer chromePdfRenderer = new ChromePdfRenderer();
var file = chromePdfRenderer.RenderHtmlAsPdf(htmlstring);
file.SaveAs(@"D:\HTMLToPdfIronPDF.pdf");
string htmlstring = "<h1> This is sample pdf generated by IronPDF</h1>";
ChromePdfRenderer chromePdfRenderer = new ChromePdfRenderer();
var file = chromePdfRenderer.RenderHtmlAsPdf(htmlstring);
file.SaveAs(@"D:\HTMLToPdfIronPDF.pdf");
Dim htmlstring As String = "<h1> This is sample pdf generated by IronPDF</h1>"
Dim chromePdfRenderer As New ChromePdfRenderer()
Dim file = chromePdfRenderer.RenderHtmlAsPdf(htmlstring)
file.SaveAs("D:\HTMLToPdfIronPDF.pdf")
输出结果见下文:
string htmlstring = "<h1> This is sample pdf generated by NReco</h1>";
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
htmlToPdf.GeneratePdf(htmlstring,null, @"D:\HTMLToPdfIronPDF.pdf");
string htmlstring = "<h1> This is sample pdf generated by NReco</h1>";
var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter();
htmlToPdf.GeneratePdf(htmlstring,null, @"D:\HTMLToPdfIronPDF.pdf");
Dim htmlstring As String = "<h1> This is sample pdf generated by NReco</h1>"
Dim htmlToPdf = New NReco.PdfGenerator.HtmlToPdfConverter()
htmlToPdf.GeneratePdf(htmlstring,Nothing, "D:\HTMLToPdfIronPDF.pdf")
上述源代码使用 NReco C# WkHtmlToPdf 封装器生成 PDF 文件。执行此代码还需要商业许可证。 因此,运行上述代码将抛出一个异常:“此功能需要商业许可。”
以下示例代码演示了PDF文本提取功能。
var pdfFile = @"D:\SamplePDF.pdf";
PdfDocument pdfDocument = PdfDocument.FromFile(pdfFile);
string ConvertedText = pdfDocument.ExtractAllText();
Console.WriteLine(ConvertedText);
var pdfFile = @"D:\SamplePDF.pdf";
PdfDocument pdfDocument = PdfDocument.FromFile(pdfFile);
string ConvertedText = pdfDocument.ExtractAllText();
Console.WriteLine(ConvertedText);
Dim pdfFile = "D:\SamplePDF.pdf"
Dim pdfDocument As PdfDocument = PdfDocument.FromFile(pdfFile)
Dim ConvertedText As String = pdfDocument.ExtractAllText()
Console.WriteLine(ConvertedText)
生成的输出如下所示:
我们需要再添加一个额外的库,Nreco.PdfRenderer,来提取文本。
var pdfFile = @"D:\SamplePDF.pdf";
var pdfToText = new NReco.PdfRenderer.PdfToTextConverter();
string generatedText = pdfToText.GenerateText(pdfFile);
Console.WriteLine(generatedText);
var pdfFile = @"D:\SamplePDF.pdf";
var pdfToText = new NReco.PdfRenderer.PdfToTextConverter();
string generatedText = pdfToText.GenerateText(pdfFile);
Console.WriteLine(generatedText);
Dim pdfFile = "D:\SamplePDF.pdf"
Dim pdfToText = New NReco.PdfRenderer.PdfToTextConverter()
Dim generatedText As String = pdfToText.GenerateText(pdfFile)
Console.WriteLine(generatedText)
输出结果如下:
NReco 生成的输出是正确的,但其中包含了一个不应该出现的额外符号。
我们已经讨论了这两个库提供的核心功能。 现在,让我们比较一下。
NReco 在许多不同的使用情况中使用 C# wkHtmlToPdf 工具。 我们不需要单独安装wkHtmltoPdf,但我们确实需要安装单独的NuGet包来创建和读取PDF文档。 因此,这增加了管理项目库依赖的复杂性。 另一方面,IronPDF 只需一次安装。 IronPDF的全部功能不需要额外的库。
IronPDF能够准确地将HTML内容从URL和原始HTML字符串渲染成PDF文件。 这些功能在未先获取商业许可的情况下,不能在NReco中使用。
两个库都可以很好地从PDF文件中提取文本,但NReco在其输出中包含了一个额外的、不必要的符号。
NReco 是一个网络服务,它可以从HTML文档创建PDF文件。 它有多种价格结构,最低为每月75美元。 您也可以注册免费试用,但免费试用的功能有限。 详细定价可以在这里查看。 NReco 页面.
IronPDF是一个C# PDF库。 它可免费用于开发,也可随时授权用于商业部署。 提供许可证 适用于单个项目使用,个体开发者,代理机构和全球公司,以及SAAS和OEM重新分配。 所有许可证均包含 30 天退款保证、一年的产品支持和更新、开发/分期/生产有效期以及永久许可证。 (一次性购买). Lite套餐的价格从$749起。
IronPDF 无法从远程服务器将 HTML 转换为 PDF。 相反,它在幕后启动了一个真实的、符合标准的网页浏览器实例。 (无需手动安装其他软件). HTML 的渲染是完全准确的,而且是矢量格式,适合最高标准的商业印刷。 输出的 PDF 文件干净整洁,质量上乘。 它是公开的商业软件,许可和定价详情均在网站上公布。
NReco还能将HTML转换为PDF,并在多个位置的云服务器上运行。 NReco 为 .NET 和 .NET Core 提供库,具有最快速和最准确的 HTML 到 PDF 转换功能。 NReco 可以从 HTML 内容生成 PDF 文件 (源代码、模板文件或 URL) 通过HTML模板或网页URL。 网页使用 Qt WebKit 引擎渲染,其结果与网页浏览器的渲染几乎相同。
经过全面比较,可以看出IronPDF相比NReco具有显著优势。 IronPDF为许多PDF处理需求提供全面的覆盖。 当您购买IronPDF时,您可以在一个库中获取所有的转换功能。 它支持标准网络文档:HTML、ASPX、JS、CSS 和图像。
NReco 是一个网络服务,它能够将 HTML 格式转换成 PDF 文件。 它提供多种价格结构,最低为每月75美元。 另一方面,IronPDF 可免费用于开发,并可随时获得商业部署许可。 提供许可证 用于单个项目使用、单个开发者、代理机构和全球企业。 所有许可证都包含 30 天退款保证以及一年的产品支持和更新。 精简版软件包从 $749 开始。 IronPDF 软件包是永久性的,没有持续性费用。
如果您购买完整的IronSuite,您将仅需两个产品的价格即可获得全部五个产品。 有关更多详细信息,请点击 这里.
在总结时,我们选择IronPDF是因为它的高性能和丰富的功能集。 IronPDF还提供良好的支持和文档,确保用户可以充分有效地使用提供的丰富功能。