产品比较

Telerik HTML to PDF生成器与IronPDF

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

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

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

在本教程中,我将比较 Progress 软件公司的 Telerik PdfProcessing 库和 Iron 软件公司的 IronPDF 在生成 PDF 文档方面的优劣。

Telerik PdfProcessing

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

IronPDF .NET PDF 库

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

安装

在本节中,我将介绍如何安装 IronPDF 和 Telerik Document Processing 库。

安装 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 to PDF PDF Generator vs IronPDF - Figure 1: Telerik 和 Kendo UI 库

Telerik 和 Kendo UI 库

安装 IronPDF C#.NET PDF 库

您可以通过三种方式安装 IronPDF:

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

2.使用 NuGet Visual Studio GUI 安装

3.下载 DLL 文件

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

Install-Package IronPdf

它会在项目中安装最新版本的 IronPDF 库。当然,你也可以随时在NuGet 网站.

使用 Telerik 生成 PDF 文件

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

您可以使用以下代码,使用 Telerik.NET 将 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。使用 HtmlFormatPRoviderImport 函数导入 HTML 文件,并使用返回的 RadFlowDocument 对象生成一个 PdfFormatProvider。 最后,使用 PdfFormatProvider 上的 WriteAllBytes 方法将 PDF 文件导出到特定位置。

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

Telerik HTML to PDF PDF Generator vs IronPDF - Figure 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 to PDF PDF Generator vs IronPDF - Figure 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 to PDF PDF Generator vs IronPDF - Figure 4: IronPDF URL 到 PDF

URL 到 PDF

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

比较

通过观察 IronPDF 和 Telerik 的 ASP.NET 输出结果 UI,我们可以说 Telerik 并不是 HTML 转 PDF 的好选择,因为它的渲染质量并不好。下面是 IronPDF 和 Telerik 输出结果的区别。

Telerik HTML to PDF PDF Generator vs IronPDF - Figure 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 不支持指向 PDF 的 URL

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

5.渲染质量差

IronPDF 的功能

IronPDF 的主要功能有

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

IronPDF 还有许多其他功能。您可以访问 IronPDF 网站,了解最好的信息.

Telerik HTML to PDF PDF Generator vs IronPDF - Figure 6: IronPDF 功能

IronPDF 功能

结论

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

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

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

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

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