在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
生成 PDF 文件程式化可能會因其複雜性而變得複雜,特別是當它們包含圖片、表格、文字、格式和其他功能時。
主要的挑戰是找出如何將純文字文件轉換成 PDF 格式。有很多方法可以使用,但選擇一種能夠保持原始文件格式的方法至關重要。
在本教程中,我將比較 Progress Software Corporation 的 Telerik PdfProcessing 庫和 Iron Software 的 IronPDF 在生成 PDF 文件方面的表現。
匯入
在 C# 中載入現有 HTML 檔案的方法匯出
方法Telerik PdfProcessing作為 Progress 文件處理應用程式組合的一部分,無需撰寫任何程式碼即可創建 PDF 並導出文件。它具有文本塊、圖像、表單、表格、導入和導出等功能。此外,該庫還提供了適合流程式編輯的功能。PdfProcessing 應用程式適用於網頁、桌面和行動平台。
IronPDF 是一個 .NET PDF 庫,可以在不需要 Adobe Acrobat 或其他第三方軟體的情況下生成 PDF。該庫可以從頭開始創建 PDF 或導出現有的 .NET 組件 (像 ASP.NET 網頁,WPF使用者介面等。) 成為 PDF 文件。
在本節中,我將介紹如何安裝 IronPDF 及 Telerik 文檔處理庫。
要使用Telerik文件處理套件從HTML創建PDF文檔,我們需要安裝三個庫:
Telerik.Documents.Core.Trial
Telerik.Documents.Flow.FormatProviders.Doc.Trial
Telerik.Documents.Flow.FormatProviders.Pdf.Trial
您可以使用NuGet包管理器安裝以下庫。
您可以通過三種方式安裝 IronPDF:
若要使用套件管理主控台進行安裝,您需要在主控台中輸入以下命令。
Install-Package IronPdf
它會在專案中安裝最新版本的 IronPDF 庫。當然,您隨時可以在 網站上查詢最新的 IronPDF 版本。
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)
上面的程式碼有些複雜。您首先需要建立一個 HtmlFormatProvider
和一個 RadFlowDocument
。使用 HtmlFormatProvider
的 Import
函數匯入 HTML 檔案,並使用回傳的 RadFlowDocument
物件來生成 PdfFormatProvider
。最後,使用 PdfFormatProvider
的 WriteAllBytes
方法將 PDF 檔案匯出到特定位置。
Telerik 生成的輸出效果不好。Telerik 沒有保留 HTML 文件的 UI,也沒有載入任何圖像。
IronPDF 可以使用 HTML 文件、HTML 字符串和 URL 生成 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")
我使用 RenderHtmlFileAsPdf
方法從 HTML 檔案生成 PDF。此函數會讀取 HTML 檔案中的所有內容,並加載相關的 CSS 和 JavaScript 檔案。RenderHtmlFileAsPdf
方法的輸出如下。
IronPDF 從 HTML 生成的 PDF 非常漂亮。這個結果與 Telerik 生成的 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")
RenderUrlAsPdf
函數將網頁的 URL 轉換成 PDF。它會等待載入所有相關文件後再進行轉換。它能產生卓越的結果,保留所有的顏色、設計和介面。你可以在下面看到輸出。
您可以獲取更多有關 IronPDF 的教程並觀看實際操作在 IronPDF 網站.
正如我們在 ASP.NET 結果中看到的 IronPDF 和 Telerik 的輸出 UI,可以說 Telerik 不是將 HTML 轉換為 PDF 的好選擇,因為它的渲染質量不佳。您可以在下面看到 IronPDF 和 Telerik 輸出之間的區別。
在上圖中,您可以清楚地看到 IronPDF 和 Telerik 的標準輸出之間的明顯差異。讓我們根據功能來比較輸出結果。
Telerik 的渲染質量很差。它渲染的 PDF 格式不佳,無法保留文件的原始風格。另一方面,IronPDF 的渲染質量非常出色,可以保留來源文件的每個方面。
Telerik 不支持外部文件。此外,它也不支持 JavaScript。
相反,IronPDF 完全支持內部和外部的 CSS 和 JavaScript 聲明。IronPDF 可以根據需要開啟或關閉 JavaScript 處理。
總結如下是Telerik PdfProcessing的一些額外限制:
IronPDF 的主要功能有:
IronPDF 還有許多其他功能。您可以訪問 IronPDF 網站以獲取最佳信息。信息.
本文中,我們比較了IronPDF和Telerik PdfDocument Processing庫,發現IronPDF在HTML轉PDF方面遠勝於Telerik庫。
IronPDF是一個優秀的庫,適用於所有PDF相關操作。您可以在所有最新的.NET和.NET Core框架中創建、編輯和修改PDF文件。訪問 授權頁面 有關 IronPDF 產品套裝的分發和授權的更多信息。