产品比较

Telerik HTML to PDF生成器与IronPDF

发布 2022年十二月10日
分享:

由于其复杂性,以编程方式生成 PDF 文档可能很复杂,尤其是当文档包含图像、表格、文本、格式和其他功能时。

主要挑战在于如何将纯文本文档转换为 PDF 格式。 可以使用多种方法,但选择一种能够保持原始文档格式的方法至关重要。

在本教程中,我将比较 Progress Software Corporation 的 Telerik PdfProcessing 库和 Iron Software 的 IronPDF 在生成 PDF 文档方面的性能。

Telerik PdfProcessing

Telerik PdfProcessing 文档Progress.NET是Progress文档处理应用程序组合的一部分,允许您在不编写任何代码的情况下创建PDF并将其导出。 它具有文本块、图像、表单、表格、导入和导出等功能。 此外,该库提供的功能非常适合流式编辑。 PdfProcessing 应用程序可用于网络、桌面和移动平台。

IronPDF .NET PDF 库

IronPDF for .NET 是一个 .NET PDF 库,无需 Adobe Acrobat 或其他第三方软件即可生成 PDF。 该库可以从头开始创建 PDF 或导出现有的 .NET 组件(喜欢ASP.NET 官方网站如:网页、WPF 用户界面等。)转化为 PDF 文件。

安装

在本节中,我将介绍如何安装 IronPDF 和 Telerik 文档处理库。

安装 Telerik 文档处理库

要使用 Telerik 文档处理套件从 HTML 创建 PDF 文档,我们必须安装三个库:

1.Telerik.Documents.Core.Trial

2.Telerik.Documents.Flow.FormatProviders.Doc.Trial

3.Telerik.Documents.Flow.FormatProviders.Pdf.Trial

4.Telerik.Documents.Flow.Trial

您可以使用 NuGet 软件包管理器安装以下库。

Telerik HTML 转 PDF PDF生成器与IronPDF - 图1:Telerik和Kendo UI库

Telerik 和 Kendo UI 库

安装 IronPDF for .NET C#.NET PDF 库

您可以使用三种方式安装 IronPDF:

  1. 使用 NuGet 软件包管理器控制台安装

  2. 使用 NuGet Visual Studio GUI 安装

  3. 下载用于手动安装的 IronPDF DLL 文件

    要使用软件包管理器控制台进行安装,您需要在控制台中编写以下命令。

Install-Package IronPdf

它会在项目中安装最新的 IronPDF 库版本。 当然,您可以随时在 IronPDF 网站上查看 IronPDF 的最新版本。IronPDF 的 NuGet 页面.

使用 Telerik 生成 PDF

Telerik 支持使用 "RadFlowDocument "库插件将 HTML 转换为 PDF。 它可以将包含 HTML 字符串的 HTML 文档转换为 PDF 文档。

您可以使用以下代码使用 Telerik 将 HTML 转换为 PDF。

using Telerik.Windows.Documents.Flow.FormatProviders.Html;
using Telerik.Windows.Documents.Flow.Model;

HtmlFormatProvider htmlProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
// Create a document instance from the content.
RadFlowDocument document = htmlProvider.Import(File.ReadAllText(@"C:\HTML Website\website\index.html"));

Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();

// Export the document. The different overloads enable you to export to a byte [] or to a Stream.
byte [] pdfBytes = pdfProvider.Export(document);

File.WriteAllBytes(@"C:/test.pdf", pdfBytes);
using Telerik.Windows.Documents.Flow.FormatProviders.Html;
using Telerik.Windows.Documents.Flow.Model;

HtmlFormatProvider htmlProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
// Create a document instance from the content.
RadFlowDocument document = htmlProvider.Import(File.ReadAllText(@"C:\HTML Website\website\index.html"));

Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();

// Export the document. The different overloads enable you to export to a byte [] or to a Stream.
byte [] pdfBytes = pdfProvider.Export(document);

File.WriteAllBytes(@"C:/test.pdf", pdfBytes);
Imports Telerik.Windows.Documents.Flow.FormatProviders.Html
Imports Telerik.Windows.Documents.Flow.Model

Private htmlProvider As HtmlFormatProvider = New Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider()
' Create a document instance from the content.
Private document As RadFlowDocument = htmlProvider.Import(File.ReadAllText("C:\HTML Website\website\index.html"))

Private pdfProvider As New Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider()

' Export the document. The different overloads enable you to export to a byte [] or to a Stream.
Private pdfBytes() As Byte = pdfProvider.Export(document)

File.WriteAllBytes("C:/test.pdf", pdfBytes)
VB   C#

上述代码有些复杂。 您首先需要创建一个 HtmlFormatProvider 和一个 RadFlowDocument。 使用 "HtmlFormatProvider "的 "Import "函数导入 HTML 文件,并使用返回的 "RadFlowDocument "对象生成 "PdfFormatProvider"。 最后,使用 PdfFormatProvider 上的 WriteAllBytes 方法将 PDF 文件导出到特定位置。

Telerik 生成的输出结果并不理想。 Telerik 没有保留 HTML 文档的用户界面,也没有加载任何图片。

Telerik HTML to PDF PDF 生成器 与 IronPDF - 图 2:Telerik 输出

Telerik 输出

使用 IronPDF 生成 PDF

IronPdf 可以使用 HTML 文件、HTML 字符串和 URL 生成 PDF。

HTML 转 PDF

使用以下代码使用 HTML 文件创建 PDF 文档。

using IronPdf;

var IronRenderer = new ChromePdfRenderer();

IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth;

var pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf(@"C:\HTML Website\website\index.html");

pdfFromHtmlFile.SaveAs(@"C:/IronPDF Test.pdf");
using IronPdf;

var IronRenderer = new ChromePdfRenderer();

IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth;

var pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf(@"C:\HTML Website\website\index.html");

pdfFromHtmlFile.SaveAs(@"C:/IronPDF Test.pdf");
Imports IronPdf

Private IronRenderer = New ChromePdfRenderer()

IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth

Dim pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf("C:\HTML Website\website\index.html")

pdfFromHtmlFile.SaveAs("C:/IronPDF Test.pdf")
VB   C#

我使用 RenderHtmlFileAsPdf 方法从 HTML 文件生成 PDF。该函数会读取 HTML 文件中的所有内容,并加载相关的 CSS 和 JavaScript 文件。 下面是 RenderHtmlFileAsPdf 方法的输出结果。

Telerik HTML 转 PDF PDF 生成器与 IronPDF - 图 3:IronPDF HTML 转 PDF

IronPDF HTML 转 PDF

IronPDF 可以非常漂亮地从 HTML 生成 PDF。 这一结果与 Telerik 生成的 PDF 不同,而且更好。

URL 到 PDF

您可以使用以下代码从 URL 生成 PDF。

using IronPdf.Rendering;
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderingOptions.PaperSize = PdfPaperSize.A2;

PdfDocument myPdf = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/");
myPdf.SaveAs(@"C:/dotnet.pdf");
using IronPdf.Rendering;
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderingOptions.PaperSize = PdfPaperSize.A2;

PdfDocument myPdf = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/");
myPdf.SaveAs(@"C:/dotnet.pdf");
Imports IronPdf.Rendering
Imports IronPdf

Private renderer As New ChromePdfRenderer()

renderer.RenderingOptions.PaperSize = PdfPaperSize.A2

Dim myPdf As PdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/")
myPdf.SaveAs("C:/dotnet.pdf")
VB   C#

RenderUrlAsPdf "函数可将网页的 URL 转换为 PDF。 在渲染之前,它会等待加载所有相关文件。 它产生了非凡的效果。 翻译必须保留所有颜色、设计和用户界面。 您可以看到下面的输出结果。

Telerik HTML 转 PDF 生成器 与 IronPDF - 图 4:IronPDF URL 转 PDF

URL 到 PDF

您可以在以下网站上获取更多有关 IronPDF 的教程,并查看其运行情况IronPDF 教程页面.

比较

我们看过 IronPDF 和 Telerik 的 ASP.NET 结果输出 UI,可以说 Telerik 并不是 HTML 到 PDF 转换的好选择,因为它的渲染质量并不好。 您可以在下面看到 IronPDF 和 Telerik 输出的不同之处。

Telerik HTML到PDF PDF生成器与IronPDF - 图5:输出比较

输出比较

渲染质量

在上图中,您可以看到 IronPDF 和 Telerik 的标准输出之间的明显区别。 让我们根据功能来比较一下输出结果。

Telerik 的渲染质量较差。 它所渲染的 PDF 格式不佳,无法保留文档的原始样式。 另一方面,IronPdf 具有出色的渲染质量,保留了源文件的方方面面。

CSS 和 JavaScript 支持

Telerik 不支持外部文件。 此外,它不支持 JavaScript。

相反,IronPdf 完全支持内部和外部 CSS 和 JavaScript 声明。 可以根据需要用 IronPDF 切换开启或关闭对 JavaScript 的处理。

Telerik 文档处理的局限性

总之,以下是 Telerik PdfProcessing 的一些其他限制:

  1. Telerik 不支持 CSS 或 JavaScript 等外部文件

  2. 图像无法在 PDF 中呈现

  3. Telerik 不支持 URL 至 PDF

  4. Telerik 不支持 HTML 文档的任何链接文件

  5. 渲染质量差

IronPDF 的功能

IronPDF 的主要功能包括

  • IronPDF 支持 URL 到 PDF 和 HTML 文件到 PDF 的转换。
  • IronPdf 支持图片、CSS 和 JS 文件等外部文件。
  • IronPdf 可自动加载每个文件,无需使用任何外部库。
  • IronPDF 拥有丰富的文档。
  • IronPdf 保留了用户界面,并给出了完美的渲染质量。

    IronPDF 还有很多其他功能。 您可以访问IronPDF 功能页面以获得最佳信息。

    Telerik HTML 转 PDF PDF 生成器与 IronPDF - 图 6:IronPDF 功能

    IronPDF 功能

结论

在本文中,我们比较了 IronPDF 和 Telerik PdfDocument 处理库,发现在 HTML 到 PDF 的转换方面,IronPDF 远远优于 Telerik 库。

IronPDF 是一个优秀的库,可用于所有与 PDF 相关的操作。 您可以在所有最新的 .NET 和 .NET Core Framework 中创建、编辑和修改 PDF 文件。 访问IronPDF 许可页面了解有关 IronPDF 产品捆绑包的分发和许可的更多信息。

< 前一页
IronPDF和PDFium.NET比较
下一步 >
IronPDF与Apitron PDF Kit对比

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

免费NuGet下载 总下载量: 11,622,374 查看许可证 >