使用IRONPDF 如何使用 IronPDF for .NET 在 ASP.NET 中使用 C# 將 HTML 轉換為 PDF Curtis Chau 發表日期:11月 27, 2025 下載 IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 在當今快節奏的 ASP.NET 環境中,您的應用程式在產生發票或報告等關鍵文件時不能減慢速度。 你需要一種能夠輕鬆將 HTML 轉換為 PDF 的方法,並保證每次轉換都能在所有裝置上獲得完美的格式。 IronPDF是專為應對這項挑戰而建立的 C# PDF 庫。 它利用強大的基於 Chrome 的渲染引擎,將您的動態 HTML 程式碼轉換為像素級完美的 PDF 文件。 我們將引導您完成將 IronPDF 整合到您的 .NET 專案中的簡單步驟,並立即開始儲存專業級 PDF 檔案。 如何在 ASP.NET Core 中快速將 HTML 轉換為 PDF? 在 ASP.NET Core 中開始進行 HTML 到 PDF 的轉換只需要幾行程式碼。 首先,安裝 IronPDF NuGet 套件管理器控制台套件: Install-Package IronPdf 那麼,你想學習如何在 ASP.NET 中使用 C# 將 HTML 轉換為 PDF 嗎? 以下是一個完整的程式碼片段,示範如何在 ASP.NET Core MVC 控制器中將 HTML 字串轉換為 PDF 文件,以幫助您入門: using IronPdf; using Microsoft.AspNetCore.Mvc; // your program.cs file var builder = WebApplication.CreateBuilder(args); builder.Services.AddControllersWithViews(); var app = builder.Build(); app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); app.Run(); // in your controller file public class PdfController : Controller { public IActionResult GeneratePdf() { var renderer = new ChromePdfRenderer(); // Convert HTML string to PDF string HTML = @" <h1>Invoice #2024-001</h1> <p>Generated on: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p> <table> <tr><th>Item</th><th>Price</th></tr> <tr><td>Professional License</td><td>$799</td></tr> </table>"; var PDF = renderer.RenderHtmlAsPdf(html); // Return PDF as file download return File(pdf.BinaryData, "application/pdf", "invoice.pdf"); } } using IronPdf; using Microsoft.AspNetCore.Mvc; // your program.cs file var builder = WebApplication.CreateBuilder(args); builder.Services.AddControllersWithViews(); var app = builder.Build(); app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); app.Run(); // in your controller file public class PdfController : Controller { public IActionResult GeneratePdf() { var renderer = new ChromePdfRenderer(); // Convert HTML string to PDF string HTML = @" <h1>Invoice #2024-001</h1> <p>Generated on: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p> <table> <tr><th>Item</th><th>Price</th></tr> <tr><td>Professional License</td><td>$799</td></tr> </table>"; var PDF = renderer.RenderHtmlAsPdf(html); // Return PDF as file download return File(pdf.BinaryData, "application/pdf", "invoice.pdf"); } } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 輸出 PDF 檔案 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 1 - 與"如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF"相關的 7 張圖片中的第 1 張 新增圖片 alt 文字 這段程式碼創建了一個簡單的控制器,可以直接從 HTML 字串產生 PDF 文件。 ChromePdfRenderer 類別處理所有複雜的渲染,確保您的 HTML 結構、CSS 樣式甚至 JavaScript 在最終的 PDF 輸出中正確渲染。 針對不同HTML來源文件,有哪些基本方法? IronPDF 提供了三種將 HTML 內容轉換為 PDF 格式的主要方法,每種方法都針對您在 ASP.NET 開發中會遇到的特定場景而設計。 動態轉換 HTML 字串 處理動態內容(例如資料庫驅動的報表)時,可以使用 RenderHtmlAsPdf 輕鬆地直接轉換 HTML 字串: var renderer = new ChromePdfRenderer(); string htmlContent = BuildDynamicHtml(); // Your method to generate HTML var PDF = renderer.RenderHtmlAsPdf(htmlContent); pdf.SaveAs("dynamic-report.pdf"); var renderer = new ChromePdfRenderer(); string htmlContent = BuildDynamicHtml(); // Your method to generate HTML var PDF = renderer.RenderHtmlAsPdf(htmlContent); pdf.SaveAs("dynamic-report.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel PDF輸出 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 2 - HTML 字串到 PDF 輸出 這種方法非常適合從填充了即時資料、表單提交或任何動態生成的 HTML 內容的 HTML 頁面模板生成 PDF 文件。 從磁碟轉換 HTML 文件 對於以檔案形式儲存的靜態 HTML 模板,可以使用 RenderHtmlFileAsPdf 直接轉換 HTML 檔案: var renderer = new ChromePdfRenderer(); var PDF = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report-template.html"); pdf.SaveAs("report.pdf"); var renderer = new ChromePdfRenderer(); var PDF = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report-template.html"); pdf.SaveAs("report.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 此方法能夠有效率地處理現有的 HTML 文件,自動解析 CSS 樣式、圖片和外部資源的相對 URL。 將 URL 轉換為 PDF 若要擷取整個網頁或將現有 URL 渲染為 PDF,請使用 URL 轉換方法: var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.WaitFor.RenderDelay(1000); // Wait an extra second for JavaScript to load renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen; var PDF = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page"); pdf.SaveAs("webpage.pdf"); var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.WaitFor.RenderDelay(1000); // Wait an extra second for JavaScript to load renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen; var PDF = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page"); pdf.SaveAs("webpage.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 輸出 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 3 - URL 到 PDF 輸出 這項強大的功能支援複雜的 JavaScript 渲染,使其成為轉換單頁應用程式或從指定 URL 動態載入的 Web 內容的理想選擇。 如何處理表單資料和 POST 請求? 在 ASP.NET 應用程式中,在產生 PDF 之前對表單資料進行處理是一種常見的做法。 以下是如何處理 POST 方法提交並從提交的資料產生 PDF 的方法: [HttpPost] public IActionResult ProcessFormToPdf(OrderModel model) { var renderer = new ChromePdfRenderer(); // Build HTML from form data string HTML = $@" <h2>Order Confirmation</h2> <p>Customer: {model.CustomerName}</p> <p>Order Date: {model.OrderDate:yyyy-MM-dd}</p> <ul> {string.Join("", model.Items.Select(i => $"<li>{i.Name} - ${i.Price}</li>"))} </ul> <p><strong>Total: ${model.Total}</strong></p>"; var PDF = renderer.RenderHtmlAsPdf(html); // Save to server and return download var fileName = $"order-{model.OrderId}.pdf"; return File(pdf.BinaryData, "application/pdf", fileName); } [HttpPost] public IActionResult ProcessFormToPdf(OrderModel model) { var renderer = new ChromePdfRenderer(); // Build HTML from form data string HTML = $@" <h2>Order Confirmation</h2> <p>Customer: {model.CustomerName}</p> <p>Order Date: {model.OrderDate:yyyy-MM-dd}</p> <ul> {string.Join("", model.Items.Select(i => $"<li>{i.Name} - ${i.Price}</li>"))} </ul> <p><strong>Total: ${model.Total}</strong></p>"; var PDF = renderer.RenderHtmlAsPdf(html); // Save to server and return download var fileName = $"order-{model.OrderId}.pdf"; return File(pdf.BinaryData, "application/pdf", fileName); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 範例視圖 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 4 - 範例表單 UI 範例輸出 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 5 - 從表單渲染的範例 PDF 輸出 哪些進階功能可以增強 PDF 生成? 新增頁首、頁尾和浮水印 專業的PDF文件通常需要頁首、頁尾和浮水印。 IronPDF 強大的編輯功能讓這些新增操作變得非常簡單,操作 PDF 文件也變得輕而易舉。 var renderer = new ChromePdfRenderer(); // Configure headers and footers renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter { MaxHeight = 25, HtmlFragment = "<div style='text-align:center'>Annual Report 2024</div>" }; renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter { MaxHeight = 20, HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>" }; // Generate PDF var PDF = renderer.RenderHtmlAsPdf(htmlContent); // Add watermark pdf.ApplyWatermark("<h2 style='color:red;opacity:0.3'>CONFIDENTIAL</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center); pdf.SaveAs("report-with-watermark.pdf"); var renderer = new ChromePdfRenderer(); // Configure headers and footers renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter { MaxHeight = 25, HtmlFragment = "<div style='text-align:center'>Annual Report 2024</div>" }; renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter { MaxHeight = 20, HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>" }; // Generate PDF var PDF = renderer.RenderHtmlAsPdf(htmlContent); // Add watermark pdf.ApplyWatermark("<h2 style='color:red;opacity:0.3'>CONFIDENTIAL</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center); pdf.SaveAs("report-with-watermark.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 水印輸出 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 6 - 產生的 PDF 已新增浮水印和頁首/頁腳 這些功能將基本的 HTML 到 PDF 轉換轉變為專業的文檔生成,非常適合合約、報告和官方文件。 優化 CSS 和印刷媒體 為確保 PDF 輸出符合預期,請利用 CSS 列印媒體查詢和響應式設計原則: var renderer = new ChromePdfRenderer(); // Configure CSS media type renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print; // Set viewport for responsive designs renderer.RenderingOptions.ViewPortWidth = 1024; string HTML = @" <style> @media print { .no-print { display: none; } body { font-size: 12pt; } .page-break { page-break-after: always; } } @page { size: A4; margin: 1cm; } </style> <div class='content'> <h1>Professional Report</h1> <div class='page-break'></div> <h2>Section 2</h2> </div>"; var PDF = renderer.RenderHtmlAsPdf(html); var renderer = new ChromePdfRenderer(); // Configure CSS media type renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print; // Set viewport for responsive designs renderer.RenderingOptions.ViewPortWidth = 1024; string HTML = @" <style> @media print { .no-print { display: none; } body { font-size: 12pt; } .page-break { page-break-after: always; } } @page { size: A4; margin: 1cm; } </style> <div class='content'> <h1>Professional Report</h1> <div class='page-break'></div> <h2>Section 2</h2> </div>"; var PDF = renderer.RenderHtmlAsPdf(html); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel PDF輸出 如何在 ASP.NET 中使用 C# 和 IronPDF 將 HTML 轉換為 PDF:圖 7 - 帶有自訂 CSS 格式的 PDF 使用列印 CSS 可確保您的 PDF 文件保持專業格式,同時隱藏不必要的網頁元素,例如導覽選單或互動式按鈕。 可以使用 CSS 控制頁面內分頁符號等功能,以確保在目前頁面上實現最佳渲染效果。 為什麼選擇 IronPDF 進行 ASP.NET PDF 產生? IronPDF 以 Chrome 為基礎的渲染引擎可確保將 HTML 精確轉換為 PDF,並完全支援現代 Web 標準。 該程式庫能夠處理其他 PDF 轉換器難以處理的複雜 JavaScript、CSS3 動畫和響應式佈局。 整合只需要幾行程式碼,非常適合在 .NET 專案或 .NET 應用程式中進行快速開發。 ChromePdfRenderer 類別透過其 RenderingOptions 屬性提供廣泛的自訂功能,可讓您控制紙張大小、邊距、JavaScript 執行和渲染延遲。 這種靈活性確保您的 PDF 輸出符合精確的規範,無論是產生簡單的發票還是複雜的多頁報告。 該庫甚至可以以相同的保真度渲染整個網頁或較小的 HTML 片段,而不會留下任何臨時檔案。 這一切使其成為您HTML轉PDF轉換器的強大選擇。 結論 使用 IronPDF 在 ASP.NET C# 中將 HTML 轉換為 PDF,可以簡化文件產生工作流程,同時保持完美的視覺保真度。 該庫的簡單 API 和強大的渲染功能使其成為任何需要生成 PDF 的 ASP.NET Core 應用程式的理想解決方案。 無論您是為 .NET Core、.NET Framework 開發,還是建立行動應用程序,它都是完成此任務的完美 .NET 封裝器。 您也可以透過命令列或直接在 Visual Studio 中使用解決方案資源管理器來使用它。 您經常會在類似 static async Task Main 的方法中使用類似 var client(或 var renderer)和字串 url(或檔案名稱)的模式,以便直接從輸入的 HTML 或 url 以程式設計方式儲存 PDF。 立即開始免費試用,將您的 HTML 程式碼轉換為專業的 PDF 文件。 對於生產環境部署,請探索我們的授權選項,找到最適合您專案需求的方案。 常見問題解答 如何在 ASP.NET Core 中將 HTML 轉換為 PDF? 您可以使用 IronPDF 在 ASP.NET Core 中將 HTML 轉換為 PDF。它提供簡單的 API,可確保完美的格式和專業的結果。 IronPDF 為何適合用於 HTML 至 PDF 的轉換? IronPDF 適合將 HTML 轉換為 PDF,因為它採用了功能強大的 Chrome 演算引擎,可確保維持原始版面與風格的像素級完美 PDF。 是否可以在 ASP.NET 中使用 IronPDF 生成发票和报告? 是的,IronPDF 可以將 HTML 內容轉換為格式精確的 PDF,從而生成發票和報告,因此非常適合商業應用。 IronPDF 是否支持 PDF 生成的响应式设计? IronPDF 透過精確地將 HTML 內容渲染成能適應各種裝置和螢幕尺寸的 PDF,支援回應式設計。 IronPdf 能否處理複雜的 HTML 內容? IronPdf 能夠處理複雜的 HTML 內容,包括 CSS 和 JavaScript,確保生成的 PDF 與原始網頁設計相符。 IronPDF 如何確保快速生成 PDF? IronPDF 可利用其高效的 Chrome 渲染引擎確保快速生成 PDF,該引擎可快速準確地處理 HTML,而不會降低 ASP.NET 應用程式的速度。 在快節奏的 ASP.NET 環境中使用 IronPDF 有什麼好處? 在快節奏的 ASP.NET 環境中,IronPDF 可提供快速、可靠的 HTML 至 PDF 轉換,確保您的應用程式維持高效能,並提供專業品質的文件。 IronPDF 是否提供對不同檔案格式的支援? IronPdf 主要著重於將 HTML 轉換為 PDF,但也支援合併、分割和編輯 PDF,提供文件管理的多功能解決方案。 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,創建發票並生成具有像素完美渲染的報告。 閱讀更多 如何使用 IronPDF 將 PDF 轉換為 TIFF VB .NETASP Create PDF on the Fly:在 .NE...
發表日期 12月 18, 2025 如何使用 Aspose C# 和 IronPDF 建立 PDF 本指南將一步步教您如何使用 Aspose C# 和 IronPDF 建立 PDF,專為開發人員設計。 閱讀更多
發表日期 12月 18, 2025 使用 IronPDF 建立 .NET Core PDF 產生器 在 .NET Core 中使用 IronPDF 構建強大的 PDF 生成器。將 HTML 轉換為 PDF,創建發票並生成具有像素完美渲染的報告。 閱讀更多