使用IRONPDF 如何使用IronPDF在C#中將HTML轉換為.NET 10中的PDF Curtis Chau 發表日期:10月 16, 2025 下載 IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 在 C# 中將HTML 轉換為 PDF是 .NET 開發人員建立企業或 SaaS 應用程式時最常見的需求之一。 無論您需要從網頁內容、HTML 文件或 HTML 字串產生 PDF 文件,將 HTML 轉換為專業 PDF 格式的能力對於產生報告、發票和其他可列印資產至關重要。 IronPDF庫是一個功能強大的 HTML 轉 PDF 轉換器,專為 .NET Framework 應用程式和現代 .NET 10 專案而建置。 它允許您輕鬆地將 HTML、CSS 樣式,甚至 JavaScript 渲染轉換為高品質、樣式完整的 PDF 文件——只需幾行 C# 程式碼即可完成。 為什麼選擇 IronPDF 進行 HTML 轉 PDF 轉換? 與需要手動在 PDF 畫布上繪製元素的舊式 PDF 庫不同,IronPDF 使用完整的 Chromium 引擎渲染 HTML 內容。這意味著您的 HTML 檔案、CSS 和圖像檔案將像瀏覽器一樣進行處理,從而精確地保留佈局、字體和 HTML 元素。 它非常適合: 從 Web 應用程式動態產生報告 將網頁或儀表板渲染為 PDF 文件 將 HTML 程式碼片段轉換為 PDF 文檔 從範本自動產生大規模 PDF 文件 對現有PDF文件進行操作,以新增印章或合併 IronPDF 作為一個完整的轉換庫,用於建立 PDF 文檔,為 .NET 開發人員提供簡單易用且強大的 PDF 生成控制功能。 1. 在 .NET 10 專案中安裝 IronPDF 首先,您需要建立一個新的.NET 10專案。 截至目前, .NET 10 仍處於預覽階段,但它與IronPDF完全相容。 我們將在這裡用它來示範 HTML 到 PDF 的轉換如何與最新的 .NET 功能和 IronPDF 基於 Chrome 的渲染引擎無縫協作。 現在,是時候安裝 IronPDF 了! 您可以透過 NuGet 解決方案套件管理器直接安裝 IronPDF。 還有其他安裝方式可供選擇。 在解決方案資源管理器中,開啟終端機或命令列介面 (CLI) 並執行: dotnet add package IronPdf dotnet add package IronPdf 'INSTANT VB TODO TASK: The following line uses invalid syntax: 'dotnet add package IronPdf $vbLabelText $csharpLabel 或使用 NuGet 套件管理器控制台: PM > Install-Package IronPdf 現在你可以開始寫程式了。 2. 基本的 HTML 轉 PDF 轉換 讓我們從一個 C# HTML 轉 PDF 的範例開始,該範例將 HTML 內容轉換為 PDF 文件。 using IronPdf; class Program { public static void Main() { var renderer = new ChromePdfRenderer(); string html = "<html><body><h1>HTML to PDF C# Example</h1><p>This demonstrates PDF conversion in .NET 10.</p></body></html>"; PdfDocument pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("basic_output.pdf"); } } using IronPdf; class Program { public static void Main() { var renderer = new ChromePdfRenderer(); string html = "<html><body><h1>HTML to PDF C# Example</h1><p>This demonstrates PDF conversion in .NET 10.</p></body></html>"; PdfDocument pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("basic_output.pdf"); } } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 解釋: ChromePdfRenderer 是主要的 HTML 轉 PDF 轉換器類別。 RenderHtmlAsPdf 方法將 HTML 字串轉換為 PDF 文件。 產生的 PDF 可以儲存為 PDF 文件,也可以作為流返回。 只用幾行 C# 程式碼,我們就建立了一個可用的 HTML 轉 PDF 轉換器。 3. 將 HTML 檔案和 URL 轉換為 PDF 一個。 轉換 HTML 文件 您可以將磁碟上的HTML 檔案(包括 CSS 或圖片等連結資源)轉換為 HTML 檔案: var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlFileAsPdf("template.html"); pdf.SaveAs("file_conversion.pdf"); var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlFileAsPdf("template.html"); pdf.SaveAs("file_conversion.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 此方法讀取您的本機 HTML 文件,並在可用時自動載入外部資源(CSS、JS、映像)。 b. 網頁轉換(URL轉換) 如果輸入的是網頁或現有網址,則直接渲染即可: var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com"); pdf.SaveAs("webpage_conversion.pdf"); var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironpdf.com"); pdf.SaveAs("webpage_conversion.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 上述程式碼執行 URL 直接轉換,使用完整的 JavaScript 渲染和 CSS 從指定的 URL 渲染 HTML 文件。 4. 進階範例:轉換帶有樣式和 JavaScript 的 HTML 內容 許多網頁依賴動態 HTML 元素、CSS 樣式和JavaScript渲染(圖表、儀表板等)。 IronPDF 完全支援此功能。 var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.WaitFor.RenderDelay(2000); // wait for dynamic JS renderer.RenderingOptions.MarginTop = 20; renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4; PdfDocument pdf = renderer.RenderHtmlFileAsPdf("Reports/sales.html"); pdf.SaveAs("styled_output.pdf"); var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.WaitFor.RenderDelay(2000); // wait for dynamic JS renderer.RenderingOptions.MarginTop = 20; renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4; PdfDocument pdf = renderer.RenderHtmlFileAsPdf("Reports/sales.html"); pdf.SaveAs("styled_output.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 上述程式碼確保 IronPDF 在渲染之前等待動態 Web 內容完全加載,從而實現準確的視覺保真度。 5. 新增頁首、頁尾和頁碼 您可以輕鬆地為產生的 PDF 文件添加專業的頁首和頁尾。 renderer.RenderingOptions.FirstPageNumber = 1; renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center; font-size:14px; margin-top:20px;'>Sales Report</div>" }; renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center; font-size:14px; margin-bottom:20px;'>Page {page} of {total-pages}</div>" }; renderer.RenderingOptions.FirstPageNumber = 1; renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center; font-size:14px; margin-top:20px;'>Sales Report</div>" }; renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center; font-size:14px; margin-bottom:20px;'>Page {page} of {total-pages}</div>" }; IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel IronPDF 將這些視為臨時 HTML 文件,因此您可以使用 CSS 設定其樣式並包含自訂數據,例如日期或公司名稱。 6. 從多個 HTML 程式碼片段產生 PDF 如果要透過合併多個 HTML 程式碼片段來產生 PDF 文件,可以將它們合併: var renderer = new ChromePdfRenderer(); PdfDocument part1 = renderer.RenderHtmlAsPdf("<h1>Section 1</h1>"); PdfDocument part2 = renderer.RenderHtmlAsPdf("<h1>Section 2</h1>"); var merged = PdfDocument.Merge(part1, part2); merged.SaveAs("Merged.pdf"); var renderer = new ChromePdfRenderer(); PdfDocument part1 = renderer.RenderHtmlAsPdf("<h1>Section 1</h1>"); PdfDocument part2 = renderer.RenderHtmlAsPdf("<h1>Section 2</h1>"); var merged = PdfDocument.Merge(part1, part2); merged.SaveAs("Merged.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 當您使用不同的 HTML 程式碼片段建立多部分報告時,這有助於提高報告的完整性。 7. 在 Web API 中將 HTML 轉換為 PDF 在 ASP.NET Web API 中,可以使用 MemoryStream 產生並返回 PDF 文檔,而無需將其儲存到磁碟: [HttpGet("download")] public IActionResult GetPdf() { var renderer = new ChromePdfRenderer(); string html = "<h1>Web Report</h1><p>Generated dynamically.</p>"; var pdf = renderer.RenderHtmlAsPdf(html); var bytes = pdf.BinaryData; return File(bytes, "application/pdf", "report.pdf"); } [HttpGet("download")] public IActionResult GetPdf() { var renderer = new ChromePdfRenderer(); string html = "<h1>Web Report</h1><p>Generated dynamically.</p>"; var pdf = renderer.RenderHtmlAsPdf(html); var bytes = pdf.BinaryData; return File(bytes, "application/pdf", "report.pdf"); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 這種模式非常適合在 .NET 10 Web 應用程式中產生伺服器端 PDF。 8. 自訂 HTML 渲染選項 您可以控制 HTML 元素和連結資源的渲染方式: renderer.RenderingOptions.BaseUrl = "https://mywebsite.com/"; renderer.RenderingOptions.CustomHeaders.Add("Authorization", "Bearer token"); renderer.RenderingOptions.WaitFor.NavigationTimeout = 10000; renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.BaseUrl = "https://mywebsite.com/"; renderer.RenderingOptions.CustomHeaders.Add("Authorization", "Bearer token"); renderer.RenderingOptions.WaitFor.NavigationTimeout = 10000; renderer.RenderingOptions.EnableJavaScript = true; IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 當使用外部資源渲染網頁或執行網頁抓取並隨後進行 PDF 轉換時,這非常有用。 9. 命令列工具和控制台範例 您也可以建立一個用於批次將 HTML 轉換為 PDF 的小型命令列工具: using IronPdf; using System; class Program { public static void Main(string[] args) { string inputFile = args[0]; string outputPath = args[1]; var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlFileAsPdf(inputFile); pdf.SaveAs(outputPath); Console.WriteLine("PDF generated successfully!"); } } using IronPdf; using System; class Program { public static void Main(string[] args) { string inputFile = args[0]; string outputPath = args[1]; var renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlFileAsPdf(inputFile); pdf.SaveAs(outputPath); Console.WriteLine("PDF generated successfully!"); } } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 從命令列介面 (CLI) 運行: dotnet run "input.html" "output.pdf" 你剛剛為 .NET 開發人員建立了一個簡單的命令列 PDF 轉換器。 10. 使用非同步模式的高階 .NET 範例 您也可以在現代 .NET 10 應用程式中使用非同步模式: public static async Task Main() { var renderer = new ChromePdfRenderer(); string url = "https://example.com/dashboard"; PdfDocument pdf = await Task.Run(() => renderer.RenderUrlAsPdfAsync(url)); pdf.SaveAs("async_output.pdf"); } public static async Task Main() { var renderer = new ChromePdfRenderer(); string url = "https://example.com/dashboard"; PdfDocument pdf = await Task.Run(() => renderer.RenderUrlAsPdfAsync(url)); pdf.SaveAs("async_output.pdf"); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 這對於處理大量 PDF 產生的可擴展系統或雲端 API 來說非常有用。 11. 大規模 PDF 產生的最佳實踐 產生多個 PDF 時,重複使用 ChromePdfRenderer 實例。 將暫存檔案儲存在速度快的固態硬碟 (SSD) 位置。 使用非同步任務進行批次 PDF 產生。 避免在不需要時過度渲染 JavaScript。 驗證您的 HTML 輸入文件,以防止轉換過程中發生錯誤。 這些最佳化措施可確保企業級 .NET 解決方案中 PDF 轉換的流暢性。 12. 結論 透過 IronPDF 和 .NET 10,無論您處理的是 HTML 字串、本機 HTML 檔案還是現有 URL,將 HTML 內容轉換為精美專業的 PDF 檔案都變得異常簡單。 從簡單的程式碼片段到大規模的 PDF 生成,IronPDF 為您提供了一個完整的 HTML 轉 PDF 轉換器,支援 JavaScript、CSS、自訂標頭和連結資源。 只需幾行程式碼,您就可以產生 PDF 文件、自動產生報告,或將 PDF 轉換器庫直接嵌入到您的 .NET 應用程式中。 立即使用IronPDF 免費試用版,開始體驗您的 HTML 轉 PDF 專案。 立即下載,體驗如何輕鬆地從 HTML 內容產生高品質的 PDF 檔案。 常見問題解答 在 C# 中將 HTML 轉換為 PDF 的主要用途是什麼? 在 C# 中將 HTML 轉換為 PDF 的主要用途是從網頁內容、HTML 文件或 HTML 字串產生專業的 PDF 檔案。這對於在企業或 SaaS 應用程式中建立報表、發票及其他可列印資產而言是非常重要的。 為什麼 HTML 到 PDF 的轉換對 .NET 開發人員很重要? HTML 至 PDF 的轉換對 .NET 開發人員而言非常重要,因為這可讓他們將產生文件的功能整合到應用程式中,這對於產生高品質、可分享及可列印的文件(如報告和發票)而言至關重要。 IronPDF 可以處理大型 HTML 文件轉換為 PDF 嗎? 是的,IronPDF 可以高效地處理大型 HTML 文件並將其轉換為 PDF,而不會影響性能或品質。 IronPDF 是否支持 HTML 字符串到 PDF 的转换? IronPDF 支援將 HTML 字串轉換為 PDF,讓開發人員可以直接從 HTML 內容動態產生 PDF 文件。 使用 IronPdf 進行 HTML 至 PDF 的轉換,可讓哪種類型的應用程式獲益? 企業和 SaaS 應用程式從使用 IronPDF 進行 HTML 至 PDF 的轉換中獲益良多,因為這可讓他們自動建立報告和發票等專業文件。 IronPDF 如何確保從 HTML 輸出高品質的 PDF? IronPDF 透過使用先進的渲染技術,將 HTML、CSS 和 JavaScript 精確地轉換成專業外觀的 PDF,以確保高品質的 PDF 輸出。 是否可以使用 IronPDF 自訂由 HTML 產生的 PDF 的外觀? 是的,IronPdf 允許廣泛自訂由 HTML 產生的 PDF 的外觀,包括版面、字型和樣式,以符合特定的設計需求。 IronPDF 可以直接將網頁轉換為 PDF 嗎? IronPDF 可將網頁直接轉換為 PDF,讓開發人員輕鬆地將即時網頁內容轉換為靜態、可分享的 PDF 文件。 IronPDF 是否支持在 PDF 文档中集成图形和图像? IronPDF 支援整合圖形和影像,確保轉換後的 PDF 文件能維持原始 HTML 內容的視覺元素。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 發表日期 12月 18, 2025 .NET PDF API 教學課程(面向 .NET 開發人員) 如何使用 IronPDF 建立 .NET PDF API 閱讀更多 發表日期 12月 18, 2025 如何使用 Aspose C# 和 IronPDF 建立 PDF 本指南將一步步教您如何使用 Aspose C# 和 IronPDF 建立 PDF,專為開發人員設計。 閱讀更多 發表日期 12月 18, 2025 使用 IronPDF 建立 .NET Core PDF 產生器 在 .NET Core 中使用 IronPDF 構建強大的 PDF 生成器。將 HTML 轉換為 PDF,創建發票並生成具有像素完美渲染的報告。 閱讀更多 如何在 .NET 中合併 PDF 檔案如何在C#中生成數據矩陣條碼
發表日期 12月 18, 2025 如何使用 Aspose C# 和 IronPDF 建立 PDF 本指南將一步步教您如何使用 Aspose C# 和 IronPDF 建立 PDF,專為開發人員設計。 閱讀更多
發表日期 12月 18, 2025 使用 IronPDF 建立 .NET Core PDF 產生器 在 .NET Core 中使用 IronPDF 構建強大的 PDF 生成器。將 HTML 轉換為 PDF,創建發票並生成具有像素完美渲染的報告。 閱讀更多