產品比較

IronPDF 和 ExpertPDF for .NET 的比較

發佈 2023年3月12日
分享:

C#的開發人員在讀取、寫入、創建或將PDF轉換為不同文件格式時一直面臨挑戰。 然而,隨著眾多函式庫的出現,這些問題已經得到解決,這些函式庫的簡單整合讓它們在C#應用程式中變得更加流行且易於使用。

本文旨在比較兩個最受 .NET Framework 和 .NET Core 開發人員歡迎的 PDF 庫:

  • IronPDF
  • 專家PDF

    這兩個庫都是 .NET C# 庫,提供用於生成、轉換和編輯 PDF 的方法,適用於 .NET 和 .NET Core。 主要問題是決定哪一個 C# PDF 函式庫最適合我們的專案。 在本文中,我們將以最全面的方式比較這兩個庫,強調它們的突出功能,讓您在為項目選擇合適的庫時做出明智的決策。

    首先,讓我們看看這兩個函式庫各自提供了什麼,然後再進行比較。

IronPDF 庫

IronPDF 是一個全面的 .NET PDF 庫解決方案,對 C# 開發者特別有利。 使用此函式庫,您可以輕鬆實現所有必要的功能,以在 C# 中創建一個優秀的 PDF 閱讀器或 PDF 檢視器。

IronPDF 擁有一個 .NET Chromium 引擎,用於將 HTML 內容渲染為 PDF 文件,使設計或定位 PDF 更加輕鬆,無需複雜的 API。它的 HTML 到 PDF 轉換器能夠使用 HTML5、CSS、JavaScript 和圖像創建 .NET PDF 庫。 此外,它允許您輕鬆編輯 PDF、添加頁眉和頁腳,並從 PDF 中提取圖片。 此外,它使閱讀 PDF 文本變得簡單易行。

功能

建立 PDF 檔案 (HTML 轉 PDF)

  • 從 HTML、CSS 和 JavaScript 創建 PDF 文件
  • 從網站 URL 生成 PDF 文件
  • 使用自訂登入憑證載入網頁 URLs

無需 Adobe Acrobat Reader 的 PDF 編輯器

  • 填寫和讀取 PDF 完全可編輯的表單數據欄位
  • 從 PDF 提取文本和圖像
  • 將 HTML 內容加蓋於任何現有頁面上
  • 添加 HTML 頁首和頁尾
  • 添加註釋並數位簽署 PDF 文件

操作 PDF 文件

  • 載入和解析現有文件
  • 合併和分割文件中的內容
  • 添加水印、文字和資產

從多種檔案格式轉換

  • 只需三行代碼即可轉換 ASPX WebForms
  • 將 HTML 轉換為 PDF 文件
  • 圖像(PNG,JPG,GIF,TIFF)匯出為 PDF

保存和列印

  • 在二進位資料或 MemoryStreams 中儲存檔案
  • 列印 CSS 媒體類型
  • 將 PDF 文件轉換為打印文檔對象並不需使用 Adobe 即可打印

專家PDF

請造訪 ExpertPDF 的官方網站以獲取詳細資訊了解有關他們的 .NET 庫的更多資訊,該庫為開發人員提供即時從 HTML 轉換為 PDF 的功能。 如果您需要生成 PDF 報告或製作 PDF 閱讀器,您不必再使用複雜的報告生成軟體。

ExpertPDF 易於使用,但同時也是一個功能強大的 PDF 編輯器。 它包含一個高級的 HTML 到 PDF 轉換器,可以在幾分鐘內實現到任何 .NET 應用程式中。 它適用於 .NET Framework、.NET Core、.NET 5 和 .NET 6。

這是功能強大的 .NET 程式庫,可協助您在 .NET Framework 或 .NET Core 應用程式中從任何網頁 URL、原始 HTML 標記、字串或檔案創建 PDF 檢視器和文檔。

卓越功能

以下是重要功能:

  • 將 URL 網頁轉換為 PDF
  • 將 HTML 字串轉換為 PDF
  • 多個輸出檔案選項
  • 設置頁邊距和尺寸
  • 設置頁眉和頁腳
  • 添加自動和自訂的分頁符號
  • 僅將網頁的特定部分轉換為PDF
  • 在轉換為 PDF 時隱藏頁面的特定元素
  • 將多個網頁合併成單一 PDF
  • 將需要身份驗證的網頁轉換為 PDF
  • 選擇 CSS 媒體(螢幕或列印)渲染類型
  • 書籤支持
  • 數位簽署支援
  • 檢索 PDF 中的 HTML 元素位置
  • 支持最新的HTML5/CSS3
  • 支持網頁字體,如 OpenType 和 TrueType
  • 文件類型轉換:

    • PDF 轉文本轉換器

    • HTML 到 PDF 轉換器

    • HTML 轉換成圖片工具

    • PDF 轉換成圖像工具

    • RTF 轉 PDF 轉換器

    本文的其餘部分將涵蓋以下主題:

  1. 建立一個控制台專案

  2. IronPDF 安裝

  3. ExpertPDF 安裝

  4. 從網址建立 PDF

  5. 從 HTML 輸入字串建立 PDF

  6. 將多個 PDF 合併成單個 PDF

  7. 將圖片轉換為 PDF

  8. 授權和定價

  9. 結論

1. 建立一個主控台專案

按照以下步驟使用 Visual Studio 2022 在 C# 中建立一個控制台應用程式:

  • 打開 Visual Studio 2022 並點擊創建新項目

    IronPDF 與 ExpertPDF for .NET 的比較:圖 1:Visual Studio

    Visual Studio 2022

  • 選擇 C# 主控台應用程式並點擊下一步。

    IronPDF 與 ExpertPDF for .NET 的比較:圖 2:新專案對話框

    新專案對話框

  • 接下來的畫面,輸入您的專案名稱並點擊下一步

    IronPDF 與 ExpertPDF for .NET 的比較:圖 3:Web 表單

    網頁表單

  • 為您的應用程式選擇.NET Framework。 我們將使用最新版本6.0。
    IronPDF 和 ExpertPDF for .NET 的比較: 圖4:其他信息

    附加資訊

    現在我們的控制台專案已創建完成,我們準備好測試我們的函式庫。 然而,我們仍需將它們整合到我們的專案中。 首先安裝IronPDF。

2. IronPDF 安裝

有多種方式可以下載和安裝IronPDF庫。 如下:

  1. 使用 Visual Studio

  2. 直接下載 NuGet 套件

  3. 下載 IronPDF .DLL 函式庫

2.1. 使用 Visual Studio

Visual Studio 本身提供了 NuGet 套件管理器來安裝 C# 專案中的所有 NuGet 套件。 您可以透過以下方式訪問:

  • 專案選單工具,或
  • 在方案總管中右鍵點擊專案

    IronPDF 與 ExpertPDF for .NET 的比較:圖 5:解決方案總管

    解決方案總管

    A Comparison between IronPDF and ExpertPDF for .NET: Figure 6: Project Menu > Manage NuGet Packages

    專案選單 > 管理 NuGet 套件

    選擇後,瀏覽 IronPDF NuGet 套件並安裝,如下圖所示:

    IronPDF與ExpertPDF for .NET的比較:圖7:從NuGet Package安裝IronPDF

    從 NuGet 套件安裝 IronPDF

2.2. 直接下載 NuGet 套件

另一種方法是從 NuGet 網站下載 IronPDF。訪問IronPDF NuGet 頁面直接下載套件。 按照以下步驟:

  • 移動到NuGet IronPDF 套件
  • 選擇「下載套件」
  • 雙擊下載的套件
  • 然後將安裝該套件。
  • 重新加載 Visual Studio 並開始使用

2.4. 安裝 IronPDF:下載庫文件

您也可以直接從網站下載 IronPDF 的 .DLL 檔案。IronPDF 網站. 點擊下載 IronPDF DLL安裝。

接下來,按照以下步驟在您的專案中引用IronPDF:

  • 在解決方案總管中右鍵點擊解決方案
  • 選擇「參考資料」選項
  • 瀏覽 IronPDF.dll 庫
  • 點擊確定,完成。!

    全部完成! IronPDF 現已安裝完成,準備就緒。 不過,在此之前,我們將安裝ExpertPDF以進行比較。

3. ExpertPDF 安裝

有兩種方式下載和安裝 ExpertPDF Library:

  • 使用 Visual Studio NuGet 套件管理器安裝於 .NET Framework、.NET Core、.NET 5、.NET 6
  • 下載組件(舊版 .NET Framework)

    我們將使用新的 .NET Framework,因此我們將使用 NuGet Package Manager 安裝 ExpertPDF。

3.1. 使用 Visual Studio NuGet 套件管理器

就像 IronPDF 一樣,您可以通過以下方式訪問 NuGet 套件管理器:

  • 專案選單工具
  • 在方案總管中右鍵點擊專案

    IronPDF 與 ExpertPDF for .NET 的比較: 圖 8:方案總管

    解決方案總管

    A Comparison between IronPDF and ExpertPDF for .NET: Figure 9: Project Menu > Manage NuGet Packages

    專案選單 > 管理 NuGet 套件

    選擇後,瀏覽並安裝ExpertPDF NuGet套件,如下所示:

    在IronPDF和ExpertPDF for .NET之間的比較:圖10:ExpertPDF套件

    ExpertPDF 套件

    注意:ExpertPDF 僅支援 Windows 作業系統。

4. 從 URL 建立 PDF

這兩個庫都能將HTML標記轉換為PDF。 現在,讓我們一一看看每個庫的 C# 程式碼。

4.1. 使用 IronPDF 將 URL 轉換為 PDF

IronPDF 在將現有 URL 的 HTML 渲染為 PDF 時非常簡單明瞭。 它對 CSS、JavaScript、圖片和表單提供了非常高的支持。

以下範例程式碼從網站 URL 直接建立 PDF。

using IronPdf;

ChromePdfRenderer Renderer = new ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
 
Pdf.SaveAs("url.pdf");
using IronPdf;

ChromePdfRenderer Renderer = new ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
 
Pdf.SaveAs("url.pdf");
Imports IronPdf

Private Renderer As New ChromePdfRenderer()
Private Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
'
Pdf.SaveAs("url.pdf")
VB   C#
IronPDF與ExpertPDF for .NET之比較:圖11:URL到PDF輸出

使用 IronPDF 將 URL 轉換成 PDF

4.2. 使用 ExpertPDF 將 URL 轉換為 PDF

ExpertPDF 使用 savePdfFromUrlToFile 方法將 URL 轉換為 PDF,該方法快速、安全且高效。 頁面的格式在實際的網絡瀏覽器上保持不變。

using ExpertPdf.HtmlToPdf;

PdfConverter pd = new PdfConverter();
pd.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf");
using ExpertPdf.HtmlToPdf;

PdfConverter pd = new PdfConverter();
pd.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf");
Imports ExpertPdf.HtmlToPdf

Private pd As New PdfConverter()
pd.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf")
VB   C#
IronPDF 和 ExpertPDF for .NET 之間的比較: 圖 12: 使用 ExpertPDF 將 URL 轉為 PDF 的輸出結果

URL to PDF with ExpertPDF

5. 從 HTML 輸入字符串創建 PDF

IronPDF 和 Expert PDF 均提供從包含 HTML 的標記字符串創建 PDF 的功能。

5.1. 使用 IronPDF 的 HTML 輸入字串

以下程式碼片段演示了如何使用 HTML 輸入字串來渲染 PDF 文件圖像。

using IronPdf;

var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf");

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
var PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
PDF.SaveAs("html-with-assets.pdf");
using IronPdf;

var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf");

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
var PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
PDF.SaveAs("html-with-assets.pdf");
Imports IronPdf

Private Renderer = New ChromePdfRenderer()
Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf")

' Load external html assets: images, css and javascript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
Dim PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
PDF.SaveAs("html-with-assets.pdf")
VB   C#

5.2. 使用 Expert PDF 的 HTML 輸入字串

ExpertPDF HTML To PDF 轉換器支援從 HTML 字串轉換為 PDF。 程式碼簡單且自我解釋,用於將 URL 轉換為 PDF:

using ExpertPdf.HtmlToPdf;

PdfConverter pd = new PdfConverter();

pd.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf");
using ExpertPdf.HtmlToPdf;

PdfConverter pd = new PdfConverter();

pd.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf");
Imports ExpertPdf.HtmlToPdf

Private pd As New PdfConverter()

pd.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf")
VB   C#

第一個參數是真正的 HTML 字串,第二個參數是將保存掃描文件的檔案名。

6. 合併多個 PDF 檔案成為單一 PDF 檔案

IronPDF 和 ExpertPDF 都提供將多個 PDF 文件合併成單一 PDF 文件的功能。這項功能對於整合分散的數據並更有效地通過互聯網發送非常有用。

6.1. 使用 IronPDF 合併

以下程式碼呈現由不同 HTML 字串創建的兩個 PDF,然後使用 Merge 方法合併它們。 這一行程式碼非常容易使用。 渲染時可以向 PDF 設定添加更多選項。

using IronPdf;

var html_a = @"<p> [PDF_A] </p>
        <p> [PDF_A] 1st Page </p>
        <div style='page-break-after: always;'></div>
        <p> [PDF_A] 2nd Page</p>";

var html_b = @"<p> [PDF_B] </p>
        <p> [PDF_B] 1st Page </p>
        <div style='page-break-after: always;'></div>
        <p> [PDF_B] 2nd Page</p>";

var renderer = new ChromePdfRenderer();

var pdfdoc_a = renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = renderer.RenderHtmlAsPdf(html_b);
var merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

merged.SaveAs("Merged.pdf");
using IronPdf;

var html_a = @"<p> [PDF_A] </p>
        <p> [PDF_A] 1st Page </p>
        <div style='page-break-after: always;'></div>
        <p> [PDF_A] 2nd Page</p>";

var html_b = @"<p> [PDF_B] </p>
        <p> [PDF_B] 1st Page </p>
        <div style='page-break-after: always;'></div>
        <p> [PDF_B] 2nd Page</p>";

var renderer = new ChromePdfRenderer();

var pdfdoc_a = renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = renderer.RenderHtmlAsPdf(html_b);
var merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b);

merged.SaveAs("Merged.pdf");
Imports IronPdf

Private html_a = "<p> [PDF_A] </p>
        <p> [PDF_A] 1st Page </p>
        <div style='page-break-after: always;'></div>
        <p> [PDF_A] 2nd Page</p>"

Private html_b = "<p> [PDF_B] </p>
        <p> [PDF_B] 1st Page </p>
        <div style='page-break-after: always;'></div>
        <p> [PDF_B] 2nd Page</p>"

Private renderer = New ChromePdfRenderer()

Private pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
Private merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)

merged.SaveAs("Merged.pdf")
VB   C#

Merge 方法還提供了一個重載,允許接受多個以可枚舉物件形式表示的文件。 您可以在此中查看其使用範例IronPDF 合併 PDF 的程式碼範例.

請注意,如果合併的 PDF 文件包含可編輯的表單,則生成的 PDF 的表單欄位名稱將附加索引號碼。

6.2. 使用 ExpertPDF 合併

ExpertPDF 使用合併 PDF 元件來完成此任務。 這必須從 NuGet 套件管理器安裝才能使用。 有一個 AppendPDFFile 方法可以將 PDF 檔案附加到 PDFMerge 類別物件中。 將先前由 ExpertPDF 創建的兩個 PDF 合併的代碼如下所示:

using ExpertPdf.MergePdf;

PDFMerge pDF = new PDFMerge();
pDF.AppendPDFFile("output.pdf");
pDF.AppendPDFFile("html-to-pdf.pdf");
pDF.SaveMergedPDFToFile("merged.pdf");
using ExpertPdf.MergePdf;

PDFMerge pDF = new PDFMerge();
pDF.AppendPDFFile("output.pdf");
pDF.AppendPDFFile("html-to-pdf.pdf");
pDF.SaveMergedPDFToFile("merged.pdf");
Imports ExpertPdf.MergePdf

Private pDF As New PDFMerge()
pDF.AppendPDFFile("output.pdf")
pDF.AppendPDFFile("html-to-pdf.pdf")
pDF.SaveMergedPDFToFile("merged.pdf")
VB   C#

7. 將圖片轉換為PDF

IronPDF 能夠將各種圖像轉換為 PDF 文件,而 ExpertPDF 並不提供此功能。 然而,ExpertPDF 可以從 PDF 文件中提取圖像,並且還可以將 PDF 文件轉換為圖像,這也是 IronPDF 提供的功能。

7.1. 使用 IronPDF 將圖像轉換為 PDF

在 IronPDF 中,可以使用 ImageToPdfConverter 類從一個或多個圖像輕鬆地創建 PDF 文件。 您可以從應用程式中的任何資料夾加載圖像。

// One or more images as IEnumerable.  This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg") 
 f.EndsWith(".jpeg"));

// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\composite.pdf");

//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
// One or more images as IEnumerable.  This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg") 
 f.EndsWith(".jpeg"));

// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\composite.pdf");

//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

除了將各種圖片轉換為 PDF 檔案外,IronPDF 還可以將掃描的文件、紙質文件和商業文件轉換為單獨的圖片。 它還可以從這些類型的文件中提取圖像。

8. 授權與定價

IronPDF 是一款完全開放的商用C# PDF程式庫可在 IronPDF 網站上獲取。它對於私人開發是免費的,並且可以隨時獲得商業用途的授權。 多種授權可用適用於單個專案、單個或多個開發人員、代理機構和全球企業。 它還支持 SaaS 和 OEM 重新分發。

IronPDF和ExpertPDF for .NET的比較:圖13:IronPDF 授權

IronPDF 授權選項

所有許可證均提供 30 天退款保證,並附帶一年的支援和產品更新。 這些授權是永久性的,這意味著只需一次性購買,沒有額外的費用。 單個開發者和單個專案的 Lite 套件價格從 $749 起。

ExpertPDF 提供按開發者或公司購買授權。 您可以免費試用 ExpertPDF. 您可以在下圖中查看許可證功能列表。

IronPDF 與 ExpertPDF for .NET 的比較:圖14:ExpertPDF 許可證

ExpertPDF 授權選項

ExpertComponents Toolkit Total 開發者授權從 $850 起,ExpertPDF Toolkit 從 $750 起。您也可以購買單個元件。 這ExpertPDF 的完整定價表可在網站上獲得。

9. 結論

IronPDF 本地渲染 HTML 到 PDF,因此不需要網際網路連線。 實際上,它隱式啟動一個真正符合標準的網頁瀏覽器物件。 HTML 渲染完全準確且為向量格式,符合商業印刷的最高標準。 輸出乾淨而且生成了高品質的PDF。 它可以獲得商業用途的許可,並且所有價格均已在其網站上列出,沒有任何隱藏費用。

ExpertPDF 的 HTML-to-PDF 轉換器庫是一個多功能工具,可以將網頁和 HTML 代碼轉換為 PDF 文件,從 ASP.NET 網頁生成 PDF 報告,甚至使用電子簽名簽署合同。 使用是免費的,但也可以授權獲取額外功能。

雖然這兩個庫都能夠處理 PDF 文件並從流行格式進行轉換,但 IronPDF 相較於 ExpertPDF 有一些優勢。 IronPDF 提供更廣泛的格式轉換,包括 XML、圖像和 AngularJS,並提供更強大的生成、格式化和編輯 PDF 功能。 IronPDF 是一個節省時間的解決方案,推薦給追求效率的務實開發者。

ExpertPDF 由需單獨安裝的各個組成部分構成,而 IronPDF 是一款將所有功能集成於一處的完整軟體。 ExpertPDF可能是僅需單一組件(例如HTML到PDF轉換)的專案的好選擇。 IronPDF 的套件提供終身許可證,沒有持續費用,而 ExpertPDF 需要續約。

< 上一頁
使用 Itextsharp 在 C# 中為 PDF 添加數字簽名
下一個 >
使用 IronPDF 進行產品比較

準備開始了嗎? 版本: 2024.12 剛剛發布

免費 NuGet 下載 總下載次數: 11,622,374 查看許可證 >