產品比較 IronPDF與ExpertPDF之間的比較適用於.NET Curtis Chau 更新:11月 17, 2025 下載 IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 C# 的開發人員在讀取、寫入、建立或在不同檔案格式間轉換 PDF 時,總是面臨挑戰。 然而,隨著眾多函式庫的出現,這些問題都已迎刃而解,而這些函式庫的簡易整合也讓它們在 C# 應用程式中更受歡迎、更容易使用。 本文旨在比較兩種最受 .NET Framework 和 .NET Core 開發人員歡迎的 PDF 函式庫: IronPdf 專家 PDF 這兩個函式庫都是 .NET C# 函式庫,提供在 .NET 和 .NET Core 中產生、轉換和編輯 PDF 的方法。 主要的問題是決定哪一個 C# PDF 函式庫最適合我們的專案。 在這篇文章中,我們將以最全面的方式比較這兩個函式庫,並強調其突出的功能,以便您在選擇適合您專案的函式庫時,可以做出明智的決定。 首先,讓我們來看看這兩個函式庫都有哪些優點,接下來就開始進行比較。 IronPDF 圖書館。 IronPDF 是一套全面的 .NET PDF 函式庫解決方案,對 C# 開發人員尤其有利。 有了這個函式庫,您可以輕鬆地實現所有必要的功能,以 C# 語言建立出色的 PDF 閱讀器或 PDF 檢視器。 IronPDF for .NET 擁有一個 .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 文件 使用自訂登入憑證載入網頁 URL 無需 Adobe Acrobat Reader 的 PDF 編輯器 填寫和閱讀 PDF 完全可編輯的表單資料欄位 從 PDF 中萃取文字和影像 在任何現有頁面上標示 HTML 內容 新增 HTML 標頭與頁尾 新增註解並數位簽署 PDF 文件 操作 PDF 文件 載入和解析現有文件 合併和分割文件中的內容 新增水印、文字和資產 從多種檔案格式轉換 只需三行代碼即可轉換 ASPX WebForms 將 HTML 轉換為 PDF 檔案 圖片 (PNG、JPG、GIF、TIFF) 至 PDF 儲存與列印 以二進位資料或 MemoryStreams 儲存檔案 列印 CSS 媒體類型 將 PDF 檔案轉換為列印文件物件並列印,無需 Adobe ExpertPDF。 請瀏覽 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 支援網路字型,例如 open type 和 true type 檔案類型轉換: PDF 至文字轉換器 HTML 至 PDF 轉換器 HTML 至圖片轉換器 PDF 至圖片轉換器 RTF 至 PDF 轉換器 文章的其餘部分將涵蓋以下主題: 1.建立控制台專案 2.安裝 IronPdf 3.ExpertPDF 安裝 4.從 URL 建立 PDF 5.從 HTML 輸入字串建立 PDF 6.將多個 PDF 合併為單一 PDF 7.將圖片轉換為 PDF 8.授權與定價 9.總結 1.建立控制台專案 按照步驟使用 Visual Studio 2022 以 C# 建立控制台應用程式: 開啟 Visual Studio 2022 並按一下建立新專案 選擇 C# 主控台應用程式,然後按下一步 在下一個畫面中,輸入專案名稱,然後按一下下一步 為您的應用程式選擇 .NET Framework。 我們將採用最新的 6.0 版本。 現在我們的 Console 專案已經建立,可以測試我們的函式庫了。 然而,我們仍需要在專案中設定這些工具。 讓我們先安裝 IronPdf。 2. IronPDF 安裝。 有多種方式可以下載並安裝 IronPdf 函式庫。 這些工具如下: 1.使用 Visual Studio 2.直接下載 NuGet 套件 3.下載 IronPdf .DLL 函式庫 2.1.使用 Visual Studio Visual Studio 本身提供 NuGet 套件管理器,可在 C# 專案中安裝所有 NuGet 套件。 您可以透過以下任一方式取得: 專案功能表工具,或 在解決方案總管中右擊專案 選定後,瀏覽 IronPDF NuGet 套件,並進行安裝: 2.2.直接下載 NuGet 套件。 另一種方法是從 NuGet 網站下載 IronPDF。直接訪問 IronPDF NuGet 頁面並下載套件。 按照步驟進行: 前往 NuGet IronPDF 套件。 選擇"下載套件 按兩下下載的套件 然後,該套件將安裝 重新載入 Visual Studio 並開始使用 2.4.安裝 IronPdf:下載函式庫 您也可以直接從 IronPDF 網站下載 IronPdf .DLL 檔案。 點選 Download IronPDF DLL 進行安裝。 接下來,按照以下步驟在您的專案中引用 IronPdf: 右鍵按一下解決方案總管中的解決方案 選擇"新增參考資料 瀏覽 IronPdf.dll 函式庫 按一下"確定"即可完成! 全部完成! IronPdf 現在已經安裝完成,可以開始使用。 然而,在此之前,我們將安裝 ExpertPDF 進行比較。 3.ExpertPDF 安裝。 有兩種方式可以下載並安裝 ExpertPDF Library: 使用 Visual Studio NuGet Package Manager for .NET Framework、.NET Core、.NET 5、.NET 6 下載程式集 (較舊的 .NET Framework 版本) 我們要使用新的 .NET Framework,因此要使用 NuGet Package Manager 安裝 ExpertPDF。 3.1.使用 Visual Studio NuGet 套件管理員。 就像 IronPDF 一樣,您可以透過以下方式存取 NuGet Package Manager: 專案選單工具 在解決方案總管中右擊專案 選定後,瀏覽 ExpertPDF NuGet 套件,並進行安裝: 注意: ExpertPDF 僅支援 Windows 作業系統。 4.從 URL 建立 PDF. 這兩個函式庫都具有將 HTML 標記轉換為 PDF 的功能。 現在,讓我們逐一看看每個函式庫的 C# 程式碼。 4.1.使用 IronPDF 將 URL 轉換為 PDF。 IronPDF 在將現有 URL 中的 HTML 呈現成 PDF 時非常直接。 它對 CSS、JavaScript、圖片和表單的支援程度非常高。 以下程式碼範例可直接從網站 URL 建立 PDF。 // Import the IronPdf library using IronPdf; // Initialize a new renderer ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render the specified URL as a PDF var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/"); // Save the rendered PDF to a file pdf.SaveAs("url.pdf"); // Import the IronPdf library using IronPdf; // Initialize a new renderer ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render the specified URL as a PDF var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/"); // Save the rendered PDF to a file pdf.SaveAs("url.pdf"); ' Import the IronPdf library Imports IronPdf ' Initialize a new renderer Private renderer As New ChromePdfRenderer() ' Render the specified URL as a PDF Private pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/") ' Save the rendered PDF to a file pdf.SaveAs("url.pdf") $vbLabelText $csharpLabel 4.2.使用 ExpertPDF 將 URL 轉換為 PDF。 ExpertPDF 使用 savePdfFromUrlToFile 方法將 URL 轉換為 PDF,此方法快速、安全且有效率。 網頁的格式會保存為實際網頁瀏覽器上的格式。 // Import the ExpertPdf.HtmlToPdf namespace using ExpertPdf.HtmlToPdf; // Initialize a new PdfConverter PdfConverter pdfConverter = new PdfConverter(); // Use PdfConverter to save a webpage URL directly to a PDF file pdfConverter.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf"); // Import the ExpertPdf.HtmlToPdf namespace using ExpertPdf.HtmlToPdf; // Initialize a new PdfConverter PdfConverter pdfConverter = new PdfConverter(); // Use PdfConverter to save a webpage URL directly to a PDF file pdfConverter.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf"); ' Import the ExpertPdf.HtmlToPdf namespace Imports ExpertPdf.HtmlToPdf ' Initialize a new PdfConverter Private pdfConverter As New PdfConverter() ' Use PdfConverter to save a webpage URL directly to a PDF file pdfConverter.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf") $vbLabelText $csharpLabel 5.從 HTML 輸入字串建立 PDF IronPDF 和 Expert PDF 都提供從包含 HTML 的標記字串建立 PDF 的功能。 5.1.使用 IronPDF 輸入 HTML 字串。 以下程式碼片段示範如何使用 HTML 輸入字串渲染 PDF 文件影像。 // Import the IronPdf library using IronPdf; // Initialize a new renderer ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render a PDF from HTML string and save it var pdfDoc1 = renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>"); pdfDoc1.SaveAs("pixel-perfect.pdf"); // Render HTML with external assets and save it var pdfDoc2 = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\"); pdfDoc2.SaveAs("html-with-assets.pdf"); // Import the IronPdf library using IronPdf; // Initialize a new renderer ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render a PDF from HTML string and save it var pdfDoc1 = renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>"); pdfDoc1.SaveAs("pixel-perfect.pdf"); // Render HTML with external assets and save it var pdfDoc2 = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\"); pdfDoc2.SaveAs("html-with-assets.pdf"); ' Import the IronPdf library Imports IronPdf ' Initialize a new renderer Private renderer As New ChromePdfRenderer() ' Render a PDF from HTML string and save it Private pdfDoc1 = renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>") pdfDoc1.SaveAs("pixel-perfect.pdf") ' Render HTML with external assets and save it Dim pdfDoc2 = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\") pdfDoc2.SaveAs("html-with-assets.pdf") $vbLabelText $csharpLabel 5.2.使用 Expert PDF 輸入 HTML 字串。 ExpertPDF HTML To PDF 轉換器支援從 HTML 字串轉換為 PDF。 代碼為簡單且不言自明的 URL 至 PDF: // Import the ExpertPdf.HtmlToPdf namespace using ExpertPdf.HtmlToPdf; // Initialize a new PdfConverter PdfConverter pdfConverter = new PdfConverter(); // Use PdfConverter to save an HTML string to a PDF file pdfConverter.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf"); // Import the ExpertPdf.HtmlToPdf namespace using ExpertPdf.HtmlToPdf; // Initialize a new PdfConverter PdfConverter pdfConverter = new PdfConverter(); // Use PdfConverter to save an HTML string to a PDF file pdfConverter.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf"); ' Import the ExpertPdf.HtmlToPdf namespace Imports ExpertPdf.HtmlToPdf ' Initialize a new PdfConverter Private pdfConverter As New PdfConverter() ' Use PdfConverter to save an HTML string to a PDF file pdfConverter.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf") $vbLabelText $csharpLabel 第一個參數是實際的 HTML 字串,第二個參數是掃描文件要儲存的檔案名稱。 Bootstrap 文件範例 技術圖書館可從包含程式碼範例的清晰文件中獲益。 此 Bootstrap 5 演示展示了 IronPDF 渲染具有語法高亮、警示和結構化佈局的技術文件的能力。 using IronPdf; var renderer = new ChromePdfRenderer(); string technicalDocs = @" <!DOCTYPE html> <html> <head> <meta charset='utf-8'> <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'> <style> .code-block { background: #f8f9fa; border-left: 3px solid #0d6efd; padding: 15px; border-radius: 4px; } .api-method { font-family: 'Courier New', monospace; color: #0d6efd; } @media print { .card, .alert { page-break-inside: avoid; } } </style> </head> <body class='bg-light'> <div class='container py-4'> <div class='card shadow-sm mb-4'> <div class='card-header bg-dark text-white'> <h2 class='mb-0'>API Reference - HTML to PDF Conversion</h2> </div> <div class='card-body'> <h4>RenderHtmlAsPdf() Method</h4> <p class='lead'>Converts HTML content to PDF with full CSS3 and JavaScript support.</p> <div class='code-block mb-3'> <code class='api-method'>PdfDocument RenderHtmlAsPdf(string htmlContent)</code> </div> <div class='row mt-4'> <div class='col-md-6'> <h5 class='text-primary'>Parameters</h5> <table class='table table-sm table-bordered'> <tr> <td><code>htmlContent</code></td> <td>String containing HTML to convert</td> </tr> </table> </div> <div class='col-md-6'> <h5 class='text-success'>Returns</h5> <table class='table table-sm table-bordered'> <tr> <td><code>PdfDocument</code></td> <td>Generated PDF document object</td> </tr> </table> </div> </div> </div> </div> <div class='row g-3 mb-4'> <div class='col-md-4'> <div class='alert alert-success mb-0'> <h6 class='alert-heading'>✓ Supported Features</h6> <ul class='mb-0 small'> <li>HTML5 semantic tags</li> <li>CSS3 with Flexbox/Grid</li> <li>JavaScript execution</li> <li>External stylesheets</li> </ul> </div> </div> <div class='col-md-4'> <div class='alert alert-info mb-0'> <h6 class='alert-heading'>ⓘ Rendering Engine</h6> <ul class='mb-0 small'> <li>Chrome V8 Engine</li> <li>98% browser fidelity</li> <li>Sub-second rendering</li> <li>Async/await support</li> </ul> </div> </div> <div class='col-md-4'> <div class='alert alert-warning mb-0'> <h6 class='alert-heading'>⚠ ExpertPDF Notes</h6> <ul class='mb-0 small'> <li>Complex API structure</li> <li>Limited CSS3 support</li> <li>No native JavaScript</li> <li>Requires configuration</li> </ul> </div> </div> </div> <div class='card shadow-sm'> <div class='card-header bg-primary text-white'> <h5 class='mb-0'>Code Example Comparison</h5> </div> <div class='card-body'> <div class='row'> <div class='col-md-6'> <h6 class='text-primary'>IronPDF (Simple)</h6> <div class='code-block'> <pre class='mb-0'><code>var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("output.pdf");</code></pre> </div> <div class='badge bg-success mt-2'>3 Lines</div> </div> <div class='col-md-6'> <h6 class='text-warning'>ExpertPDF (Complex)</h6> <div class='code-block'> <pre class='mb-0'><code>var converter = new HtmlToPdfConverter(); converter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4; converter.NavigationTimeout = 60; byte[] result = converter.GetPdfBytesFromHtmlString(html); File.WriteAllBytes("output.pdf", result);</code></pre> </div> <div class='badge bg-warning text-dark mt-2'>5+ Lines</div> </div> </div> </div> <div class='card-footer text-muted'> <small><strong>Comparison:</strong> IronPDF provides a more intuitive API with less configuration overhead for common use cases.</small> </div> </div> </div> </body> </html>"; var pdf = renderer.RenderHtmlAsPdf(technicalDocs); pdf.SaveAs("technical-documentation.pdf"); using IronPdf; var renderer = new ChromePdfRenderer(); string technicalDocs = @" <!DOCTYPE html> <html> <head> <meta charset='utf-8'> <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'> <style> .code-block { background: #f8f9fa; border-left: 3px solid #0d6efd; padding: 15px; border-radius: 4px; } .api-method { font-family: 'Courier New', monospace; color: #0d6efd; } @media print { .card, .alert { page-break-inside: avoid; } } </style> </head> <body class='bg-light'> <div class='container py-4'> <div class='card shadow-sm mb-4'> <div class='card-header bg-dark text-white'> <h2 class='mb-0'>API Reference - HTML to PDF Conversion</h2> </div> <div class='card-body'> <h4>RenderHtmlAsPdf() Method</h4> <p class='lead'>Converts HTML content to PDF with full CSS3 and JavaScript support.</p> <div class='code-block mb-3'> <code class='api-method'>PdfDocument RenderHtmlAsPdf(string htmlContent)</code> </div> <div class='row mt-4'> <div class='col-md-6'> <h5 class='text-primary'>Parameters</h5> <table class='table table-sm table-bordered'> <tr> <td><code>htmlContent</code></td> <td>String containing HTML to convert</td> </tr> </table> </div> <div class='col-md-6'> <h5 class='text-success'>Returns</h5> <table class='table table-sm table-bordered'> <tr> <td><code>PdfDocument</code></td> <td>Generated PDF document object</td> </tr> </table> </div> </div> </div> </div> <div class='row g-3 mb-4'> <div class='col-md-4'> <div class='alert alert-success mb-0'> <h6 class='alert-heading'>✓ Supported Features</h6> <ul class='mb-0 small'> <li>HTML5 semantic tags</li> <li>CSS3 with Flexbox/Grid</li> <li>JavaScript execution</li> <li>External stylesheets</li> </ul> </div> </div> <div class='col-md-4'> <div class='alert alert-info mb-0'> <h6 class='alert-heading'>ⓘ Rendering Engine</h6> <ul class='mb-0 small'> <li>Chrome V8 Engine</li> <li>98% browser fidelity</li> <li>Sub-second rendering</li> <li>Async/await support</li> </ul> </div> </div> <div class='col-md-4'> <div class='alert alert-warning mb-0'> <h6 class='alert-heading'>⚠ ExpertPDF Notes</h6> <ul class='mb-0 small'> <li>Complex API structure</li> <li>Limited CSS3 support</li> <li>No native JavaScript</li> <li>Requires configuration</li> </ul> </div> </div> </div> <div class='card shadow-sm'> <div class='card-header bg-primary text-white'> <h5 class='mb-0'>Code Example Comparison</h5> </div> <div class='card-body'> <div class='row'> <div class='col-md-6'> <h6 class='text-primary'>IronPDF (Simple)</h6> <div class='code-block'> <pre class='mb-0'><code>var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("output.pdf");</code></pre> </div> <div class='badge bg-success mt-2'>3 Lines</div> </div> <div class='col-md-6'> <h6 class='text-warning'>ExpertPDF (Complex)</h6> <div class='code-block'> <pre class='mb-0'><code>var converter = new HtmlToPdfConverter(); converter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4; converter.NavigationTimeout = 60; byte[] result = converter.GetPdfBytesFromHtmlString(html); File.WriteAllBytes("output.pdf", result);</code></pre> </div> <div class='badge bg-warning text-dark mt-2'>5+ Lines</div> </div> </div> </div> <div class='card-footer text-muted'> <small><strong>Comparison:</strong> IronPDF provides a more intuitive API with less configuration overhead for common use cases.</small> </div> </div> </div> </body> </html>"; var pdf = renderer.RenderHtmlAsPdf(technicalDocs); pdf.SaveAs("technical-documentation.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 輸出:包含 Bootstrap 5 卡片、警示、表格和程式碼區塊的專業技術文件 PDF。 IronPdf 準確地渲染了所有排版、間距實用程式和網格佈局,展現了卓越的文件生成能力。 如需全面的 CSS 框架支援詳細資訊,請參閱 Bootstrap & Flexbox CSS 指南。 6.將多個 PDF 檔案合併為單一 PDF 檔案。 IronPDF 和 ExpertPDF 都提供將多個 PDF 檔合併為單一 PDF 檔的功能。此功能有助於整合分散的資料,並更有效率地透過網際網路傳送。 6.1.使用 IronPDF 進行合併。 以下程式碼會渲染由不同 HTML 字串所建立的兩個 PDF,然後使用 Merge 方法合併它們。 這是單行本,非常容易使用。 渲染時可在 PDF 設定中加入更多選項。 // Import the IronPdf library using IronPdf; // Define HTML strings to convert to PDF var htmlA = @"<p> [PDF_A] </p> <p> [PDF_A] 1st Page </p> <div style='page-break-after: always;'></div> <p> [PDF_A] 2nd Page</p>"; var htmlB = @"<p> [PDF_B] </p> <p> [PDF_B] 1st Page </p> <div style='page-break-after: always;'></div> <p> [PDF_B] 2nd Page</p>"; // Initialize a new renderer var renderer = new ChromePdfRenderer(); // Render HTML strings as PDFs var pdfDocA = renderer.RenderHtmlAsPdf(htmlA); var pdfDocB = renderer.RenderHtmlAsPdf(htmlB); // Merge the PDF documents var mergedPdf = PdfDocument.Merge(pdfDocA, pdfDocB); // Save the merged PDF mergedPdf.SaveAs("Merged.pdf"); // Import the IronPdf library using IronPdf; // Define HTML strings to convert to PDF var htmlA = @"<p> [PDF_A] </p> <p> [PDF_A] 1st Page </p> <div style='page-break-after: always;'></div> <p> [PDF_A] 2nd Page</p>"; var htmlB = @"<p> [PDF_B] </p> <p> [PDF_B] 1st Page </p> <div style='page-break-after: always;'></div> <p> [PDF_B] 2nd Page</p>"; // Initialize a new renderer var renderer = new ChromePdfRenderer(); // Render HTML strings as PDFs var pdfDocA = renderer.RenderHtmlAsPdf(htmlA); var pdfDocB = renderer.RenderHtmlAsPdf(htmlB); // Merge the PDF documents var mergedPdf = PdfDocument.Merge(pdfDocA, pdfDocB); // Save the merged PDF mergedPdf.SaveAs("Merged.pdf"); ' Import the IronPdf library Imports IronPdf ' Define HTML strings to convert to PDF Private htmlA = "<p> [PDF_A] </p> <p> [PDF_A] 1st Page </p> <div style='page-break-after: always;'></div> <p> [PDF_A] 2nd Page</p>" Private htmlB = "<p> [PDF_B] </p> <p> [PDF_B] 1st Page </p> <div style='page-break-after: always;'></div> <p> [PDF_B] 2nd Page</p>" ' Initialize a new renderer Private renderer = New ChromePdfRenderer() ' Render HTML strings as PDFs Private pdfDocA = renderer.RenderHtmlAsPdf(htmlA) Private pdfDocB = renderer.RenderHtmlAsPdf(htmlB) ' Merge the PDF documents Private mergedPdf = PdfDocument.Merge(pdfDocA, pdfDocB) ' Save the merged PDF mergedPdf.SaveAs("Merged.pdf") $vbLabelText $csharpLabel Merge 方法也有一個重載,可接受 Enumerable 物件形式的多個文件。 您可以在此合併 PDF 的 IronPDF 程式碼範例中看到其使用範例。 請注意,如果合併的 PDF 檔案包含可編輯的表單,合併後的 PDF 表單欄位會在名稱後加上索引編號。 6.2.使用 ExpertPDF 進行合併。 ExpertPDF 使用 Merge PDF 元件來完成這項任務。 必須從 NuGet Package Manager 安裝才能使用。 有一個 AppendPDFFile 方法,可將 PDF 檔案附加到 PDFMerge 類物件。 合併之前由 ExpertPDF 建立的兩個 PDF 的程式碼如下: // Import the ExpertPdf.MergePdf namespace using ExpertPdf.MergePdf; // Initialize a new PDFMerge object PDFMerge pdfMerge = new PDFMerge(); // Append PDF files to the merge object pdfMerge.AppendPDFFile("output.pdf"); pdfMerge.AppendPDFFile("html-to-pdf.pdf"); // Save the merged PDF to a file pdfMerge.SaveMergedPDFToFile("merged.pdf"); // Import the ExpertPdf.MergePdf namespace using ExpertPdf.MergePdf; // Initialize a new PDFMerge object PDFMerge pdfMerge = new PDFMerge(); // Append PDF files to the merge object pdfMerge.AppendPDFFile("output.pdf"); pdfMerge.AppendPDFFile("html-to-pdf.pdf"); // Save the merged PDF to a file pdfMerge.SaveMergedPDFToFile("merged.pdf"); ' Import the ExpertPdf.MergePdf namespace Imports ExpertPdf.MergePdf ' Initialize a new PDFMerge object Private pdfMerge As New PDFMerge() ' Append PDF files to the merge object pdfMerge.AppendPDFFile("output.pdf") pdfMerge.AppendPDFFile("html-to-pdf.pdf") ' Save the merged PDF to a file pdfMerge.SaveMergedPDFToFile("merged.pdf") $vbLabelText $csharpLabel 7.將圖片轉換為 PDF. IronPDF 具有將各種圖片轉換為 PDF 檔案的功能,而 ExpertPDF 則不提供此功能。 然而,ExpertPDF 可以從 PDF 檔案中提取圖片,也可以將 PDF 檔案轉換為圖片,IronPDF 也提供此功能。 7.1.使用 IronPDF 將影像轉換為 PDF. 在 IronPDF 中,使用 ImageToPdfConverter 類別,可以輕鬆地從一個或多個影像建立 PDF 文件。 您可以從應用程式中的任何資料夾載入圖片。 // Import the IronPdf namespace using IronPdf; // Specify the folder containing the image files var imageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets") .Where(file => file.EndsWith(".jpg") || file.EndsWith(".jpeg")); // Convert the images to a PDF document var pdfDocument = ImageToPdfConverter.ImageToPdf(imageFiles); // Save the PDF document pdfDocument.SaveAs(@"C:\project\composite.pdf"); // Import the IronPdf namespace using IronPdf; // Specify the folder containing the image files var imageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets") .Where(file => file.EndsWith(".jpg") || file.EndsWith(".jpeg")); // Convert the images to a PDF document var pdfDocument = ImageToPdfConverter.ImageToPdf(imageFiles); // Save the PDF document pdfDocument.SaveAs(@"C:\project\composite.pdf"); ' Import the IronPdf namespace Imports IronPdf ' Specify the folder containing the image files Private imageFiles = System.IO.Directory.EnumerateFiles("C:\project\assets").Where(Function(file) file.EndsWith(".jpg") OrElse file.EndsWith(".jpeg")) ' Convert the images to a PDF document Private pdfDocument = ImageToPdfConverter.ImageToPdf(imageFiles) ' Save the PDF document pdfDocument.SaveAs("C:\project\composite.pdf") $vbLabelText $csharpLabel 除了將各種影像轉換為 PDF 檔案外,IronPDF 還能將掃描文件、紙張文件和商業文件轉換為獨立影像。 它還可以從這些類型的檔案中擷取影像。 8.授權與定價 IronPDF 是一個完全開放的商用 C# PDF 函式庫,可在 IronPDF 網站取得。它對於私人開發是免費的,也可隨時授權用於商業用途。 我們提供多種授權,適用於單一專案、單一或多人開發人員、代理商和全球企業。 它也支援 SaaS 和 OEM 再發行。 。 所有授權均提供 30 天退款保證,以及一年的支援與產品更新。 許可證是永久性的,即一次性購買,沒有額外的費用。 適用於單一開發人員和單一專案的 Lite 套件起價為 $799 。 ExpertPDF為每位開發人員或每家公司提供購買授權。 您可以免費試用 ExpertPDF。 您可以查看下圖中的許可證功能清單。 ExpertComponents Toolkit Total 開發人員授權從 850 美元起,ExpertPDF Toolkit 從 750 美元起。您也可以購買單一元件。 ExpertPDF的完整定價表可在網站上找到。 9.結論 IronPDF 可在本地將 HTML 譯成 PDF,因此不需要網際網路連線。 在現實中,它會隱性地轉出一個真正符合標準的網頁瀏覽器的物件。 HTML 呈現完全精確,並採用向量格式,適用於最高標準的商業印刷。 輸出要乾淨,並產生高品質的 PDF。 它可以授權用於商業用途,其網站上列出了所有價格,沒有任何隱藏費用。 ExpertPDF 的 HTML-to-PDF Converter Library 是一款多功能工具,可以將網頁和 HTML 程式碼轉換為 PDF 文件,從 ASP.NET 網頁產生 PDF 報告,甚至可以使用電子簽名來簽署合約。 本手冊可免費使用,但也可取得額外功能的授權。 雖然這兩個函式庫都能處理 PDF 檔案以及從流行格式轉換,但 IronPDF 比 ExpertPDF 有一些優勢。 IronPDF 提供更廣泛的格式轉換,包括 XML、圖片和 AngularJS,以及更強大的 PDF 生成、格式化和編輯功能。 IronPDF 是節省時間的解決方案,建議追求效率的務實開發人員使用。 ExpertPDF 有獨立的元件,必須單獨安裝,而 IronPDF 則是一個完整的軟體,所有功能都集中在一個地方。 ExpertPDF 可能是只需要單一元件的專案的好選擇,例如 HTML 到 PDF 的轉換。 IronPDF 的套件提供終身授權,且無持續成本,而 ExpertPDF 則需要續約。 請注意ExpertPDF 是其各自擁有者的註冊商標。 本網站與 ExpertPDF 無任何關聯、背書或贊助。 所有產品名稱、標誌和品牌均為其各自擁有者的財產。 比較資料僅供參考,並反映撰寫時的公開資訊。 常見問題解答 如何在 C# 中將 HTML 轉換為 PDF? 您可以使用 IronPDF 的 RenderHtmlAsPdf 方法將 HTML 字串轉換成 PDF。您也可以使用 RenderHtmlFileAsPdf 將 HTML 檔案轉換成 PDF。 IronPDF 與 ExpertPDF 的主要差異為何? IronPDF 提供更廣泛的格式支援和整合功能,包括從 HTML 建立 PDF、編輯和格式轉換。ExpertPDF 提供直接的 HTML 至 PDF 轉換,並提供輸出檔案配置和數位簽章的選項。 我可以使用這些函式庫從 PDF 擷取文字和影像嗎? 是的,IronPDF 可讓您從 PDF 文件中抽取文字和影像,讓您在 .NET 應用程式中輕鬆操作和分析 PDF 內容。 這些 PDF 函式庫有哪些安裝選項? IronPDF 和 ExpertPDF 均可安裝於 Visual Studio 的 NuGet Package Manager。此外,IronPDF 的 .DLL 可直接從 IronPDF 網站獲得。 是否可以將多個 PDF 檔案合併為單一文件? 是的,IronPDF 提供了 Merge 方法,可將多個 PDF 合併為一個文件。ExpertPDF 也提供了一個 PDFMerge 元件來合併 PDF。 IronPDF 將 HTML 轉換為 PDF 是否需要網際網路連線? 不需要,IronPDF 將 HTML 轉換為 PDF 不需要網際網路連線,因此是離線應用程式的可靠選擇。 IronPDF 有哪些授權選項? IronPDF 提供多種授權選項,包括單一專案、開發者、代理商和企業授權。所有授權都是永久性的,並包含 30 天退款保證和一年的支援與更新。 ExpertPDF 可以處理 PDF 文件的數位簽名嗎? 是的,ExpertPDF 支援 PDF 文件的數位簽章,允許安全且經過驗證的 PDF 檔案。 C# 開發人員在處理 PDF 時會面臨哪些挑戰,這些函式庫又能提供哪些協助? C# 開發人員在閱讀、撰寫、建立和轉換 PDF 時常會遇到挑戰。IronPDF 和 ExpertPDF 等函式庫透過提供 HTML 至 PDF 轉換、PDF 編輯等功能強大的工具,簡化了這些工作,方便使用者輕鬆整合至 C# 應用程式。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新1月 7, 2026 Ghostscript GPL vs IronPDF:技術比較指南 探索 Ghostscript GPL 與 IronPDF 的主要差異。比較 AGPL 授權與商業授權、指令列開關與本機 .NET API,以及 HTML-to-PDF 功能。 閱讀更多 更新1月 5, 2026 哪個 ASP PDF 函式庫能為 .NET Core 開發帶來最大價值? 發現適用於 ASP.NET Core 應用程式的最佳 PDF 庫。比較 IronPDF 的 Chrome 引擎與 Aspose 和 Syncfusion 的替代方案。 閱讀更多 更新12月 20, 2025 IronPDF vs iTextSharp HTML to PDF with Header and Footer in PDF Document 比較 iTextSharp 和 IronPDF 在 PDF 中加入頁首和頁尾的功能。程式碼範例、頁碼和 HTML 標頭實作。 閱讀更多 使用Itextsharp在C#中向PDF添加數字簽名IronPDF的產品比較
更新1月 7, 2026 Ghostscript GPL vs IronPDF:技術比較指南 探索 Ghostscript GPL 與 IronPDF 的主要差異。比較 AGPL 授權與商業授權、指令列開關與本機 .NET API,以及 HTML-to-PDF 功能。 閱讀更多
更新1月 5, 2026 哪個 ASP PDF 函式庫能為 .NET Core 開發帶來最大價值? 發現適用於 ASP.NET Core 應用程式的最佳 PDF 庫。比較 IronPDF 的 Chrome 引擎與 Aspose 和 Syncfusion 的替代方案。 閱讀更多
更新12月 20, 2025 IronPDF vs iTextSharp HTML to PDF with Header and Footer in PDF Document 比較 iTextSharp 和 IronPDF 在 PDF 中加入頁首和頁尾的功能。程式碼範例、頁碼和 HTML 標頭實作。 閱讀更多