使用IRONPDF 如何在 .NET Core 中創建 PDF 文件 Curtis Chau 發表日期:10月 27, 2025 Download IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article 以程式化的方式建立 PDF 文件是現代 Web 應用程式中的一種常見方法和經常性需求。 無論您是在建立發票、報告還是任何基於文件的系統,了解如何在 ASP 應用程式和 .NET Core 中有效地建立 PDF 文件是必要的。 在本教程中,我們將探討使用 IronPDF 處理 .NET Core 創建 PDF 文件任務的最佳方法。 這是一個強大的 .NET Core 程式庫,簡化了 PDF 生成能力。 如需詳細的技術資訊,請參閱官方文件。 開始使用 IronPDF IronPDF是一個全面的 .NET Core PDF 程式庫,能將複雜的 PDF 創建轉變為簡單的操作。 與傳統方法需要手動繪製元素不同,IronPDF 利用 HTML 標記和 CSS 生成能符合您設計需求的 PDF 文件。 要在您的 .NET Core 程式庫專案中開始建立 PDF,請使用 Visual Studio 的套件管理器主控台,運行以下命令來安裝 IronPDF NuGet 套件: Install-Package IronPdf 此簡單安裝能立即為您的 Web 應用提供強大的 PDF 生成能力。 建立您的第一個 PDF 文件 讓我們創建一個簡單的 PDF 文件以了解基本知識。 以下示例展示了生成具有格式化內容的 PDF: using IronPdf; // Create a new ChromePdfRenderer object var renderer = new ChromePdfRenderer(); // Define HTML content with styling var html = @" <html> <body style='font-family: Arial; margin: 40px;'> <h1>Hello World PDF Document</h1> <p>This is your first PDF file created with IronPDF!</p> </body> </html>"; // Generate PDF from HTML var pdf = renderer.RenderHtmlAsPdf(html); // Save the PDF document pdf.SaveAs("output.pdf"); using IronPdf; // Create a new ChromePdfRenderer object var renderer = new ChromePdfRenderer(); // Define HTML content with styling var html = @" <html> <body style='font-family: Arial; margin: 40px;'> <h1>Hello World PDF Document</h1> <p>This is your first PDF file created with IronPDF!</p> </body> </html>"; // Generate PDF from HTML var pdf = renderer.RenderHtmlAsPdf(html); // Save the PDF document pdf.SaveAs("output.pdf"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 此程式碼創建了一個新的 PdfDocument 對象,該對象將通過渲染 HTML 內容來創建新的 PDF。 ChromePdfRenderer 處理轉換,確保您的 PDF 文件保持一致的格式。 輸出 使用高級功能將 HTML 轉換為 PDF IronPDF 擅長將複雜的網頁和 HTML 內容轉換為專業的 PDF 文件。 以下代碼探討了如何創建具有更多高級功能(如表格、圖像和樣式元素)的新 PDF 文件: public void CreateAdvancedPdf() { var renderer = new ChromePdfRenderer(); // Configure rendering options renderer.RenderingOptions.MarginTop = 25; renderer.RenderingOptions.MarginBottom = 25; var html = @" <html> <head> <style> table { width: 100%; border-collapse: collapse; } th, td { padding: 10px; border: 1px solid #ddd; } th { background-color: #f2f2f2; } </style> </head> <body> <h2>Sales Report</h2> <table> <tr> <th>Product</th> <th>Quantity</th> <th>Total</th> </tr> <tr> <td>Software License</td> <td>10</td> <td>$500</td> </tr> </table> </body> </html>"; // Create PDF file var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("report.pdf"); } public void CreateAdvancedPdf() { var renderer = new ChromePdfRenderer(); // Configure rendering options renderer.RenderingOptions.MarginTop = 25; renderer.RenderingOptions.MarginBottom = 25; var html = @" <html> <head> <style> table { width: 100%; border-collapse: collapse; } th, td { padding: 10px; border: 1px solid #ddd; } th { background-color: #f2f2f2; } </style> </head> <body> <h2>Sales Report</h2> <table> <tr> <th>Product</th> <th>Quantity</th> <th>Total</th> </tr> <tr> <td>Software License</td> <td>10</td> <td>$500</td> </tr> </table> </body> </html>"; // Create PDF file var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("report.pdf"); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 此示例展示了如何創建具有格式化表格的 PDF 文件,演示了 IronPDF 處理複雜佈局和 CSS 樣式的能力。 輸出 在 ASP.NET Core 應用程式中工作 在 ASP.NET Core MVC 視圖中集成 PDF 生成是直接的。 這裡是一個從控制器生成 PDF 的項目實現示例: using Microsoft.AspNetCore.Mvc; using IronPdf; using System.IO; public class DocumentController : Controller { public IActionResult GeneratePdf() { var renderer = new ChromePdfRenderer(); // Create HTML content var html = "<h1>Invoice</h1><p>Thank you for your purchase!</p>"; // Generate PDF var pdf = renderer.RenderHtmlAsPdf(html); byte[] pdfBytes = pdf.BinaryData; // Return PDF file using the byte array, setting the content type to PDF return File(pdfBytes, "application/pdf", "document.pdf"); } } } using Microsoft.AspNetCore.Mvc; using IronPdf; using System.IO; public class DocumentController : Controller { public IActionResult GeneratePdf() { var renderer = new ChromePdfRenderer(); // Create HTML content var html = "<h1>Invoice</h1><p>Thank you for your purchase!</p>"; // Generate PDF var pdf = renderer.RenderHtmlAsPdf(html); byte[] pdfBytes = pdf.BinaryData; // Return PDF file using the byte array, setting the content type to PDF return File(pdfBytes, "application/pdf", "document.pdf"); } } } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 此控制器方法生成一個 PDF 文件,並作為可下載文件返回,非常適合在 Web 應用程式中的服務器端處理。 您還可以通過使用新的 MemoryStream 對象來處理 PDF 文件的創建。 輸出 高級 PDF 生成技術 IronPDF 支持許多高級功能來創建 PDF 文件。 您可以添加頁眉、頁腳、頁碼,甚至合併多個 PDF 文件: public void CreatePdfWithHeaderFooter() { var renderer = new ChromePdfRenderer(); // Add header renderer.RenderingOptions.TextHeader = new TextHeaderFooter { CenterText = "Company Report", DrawDividerLine = true }; // Add footer with page numbers renderer.RenderingOptions.TextFooter = new TextHeaderFooter { CenterText = "Page {page} of {total-pages}", DrawDividerLine = true }; var html = "<h1>Annual Report</h1><p>Content goes here...</p>"; var pdf = renderer.RenderHtmlAsPdf(html); // Save the new document pdf.SaveAs("report-with-header.pdf"); } // Merge multiple PDFs public void MergePdfFiles() { var renderer = new ChromePdfRenderer(); var pdf1 = renderer.RenderHtmlAsPdf("<p>First Document</p>"); var pdf2 = renderer.RenderHtmlAsPdf("<p>Second Document</p>"); // Merge PDF documents var merged = PdfDocument.Merge(pdf1, pdf2); merged.SaveAs("merged.pdf"); } // Example of iterating over something, illustrating 'int i' and 'index' public void ProcessMultipleFiles(string[] filePaths) { for (int i = 0; i < filePaths.Length; i++) { // Use 'i' as an index to process each source file var source file = filePaths[i]; Console.WriteLine($"Processing file at index {i}: {source file}"); // Imagine code here to load or process the file // var pdf = PdfDocument.FromFile(sourceFile); // load } } public void CreatePdfWithHeaderFooter() { var renderer = new ChromePdfRenderer(); // Add header renderer.RenderingOptions.TextHeader = new TextHeaderFooter { CenterText = "Company Report", DrawDividerLine = true }; // Add footer with page numbers renderer.RenderingOptions.TextFooter = new TextHeaderFooter { CenterText = "Page {page} of {total-pages}", DrawDividerLine = true }; var html = "<h1>Annual Report</h1><p>Content goes here...</p>"; var pdf = renderer.RenderHtmlAsPdf(html); // Save the new document pdf.SaveAs("report-with-header.pdf"); } // Merge multiple PDFs public void MergePdfFiles() { var renderer = new ChromePdfRenderer(); var pdf1 = renderer.RenderHtmlAsPdf("<p>First Document</p>"); var pdf2 = renderer.RenderHtmlAsPdf("<p>Second Document</p>"); // Merge PDF documents var merged = PdfDocument.Merge(pdf1, pdf2); merged.SaveAs("merged.pdf"); } // Example of iterating over something, illustrating 'int i' and 'index' public void ProcessMultipleFiles(string[] filePaths) { for (int i = 0; i < filePaths.Length; i++) { // Use 'i' as an index to process each source file var source file = filePaths[i]; Console.WriteLine($"Processing file at index {i}: {source file}"); // Imagine code here to load or process the file // var pdf = PdfDocument.FromFile(sourceFile); // load } } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 這些示例展示了為您的 PDF 文件添加專業裝飾以及將多個文件合併為單一文件。 輸出 With Custom Header and Footer 與表單和動態內容一起工作 IronPDF 可以創建包含表單字段的互動式 PDF 文件: public void CreatePdfWithForm() { var html = @" <!DOCTYPE html> <html> <head> <title>PDF Test Form</title> <style> body { font-family: Arial, sans-serif; margin: 20px; background-color: #f4f4f4; } .form-container { width: 400px; padding: 20px; border: 1px solid #ccc; border-radius: 8px; background-color: #fff; box-shadow: 2px 2px 5px rgba(0,0,0,0.1); } .form-group { margin-bottom: 15px; } label { display: block; /* Make label take up full width */ margin-bottom: 5px; font-weight: bold; color: #333; } input[type='text'], textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; box-sizing: border-box; /* Include padding and border in the element's total width and height */ } textarea { height: 100px; resize: vertical; } .checkbox-group { display: flex; align-items: center; } .checkbox-group label { display: inline; font-weight: normal; margin-left: 8px; } </style> </head> <body> <div class='form-container'> <h2>Document Generation Test Form</h2> <form> <div class='form-group'> <label for='fullName'>Full Name:</label> </div> <div class='form-group'> <label for='comments'>Comments/Feedback:</label> <textarea id='comments' name='comments' placeholder='Type your feedback here...'></textarea> </div> <div class='form-group checkbox-group'> <label for='agree'>I agree to the terms and conditions.</label> </div> <button style='padding: 10px 15px; background-color: #007bff; color: white; border: none; border-radius: 4px; cursor: pointer;'> Test Button Rendering </button> </form> </div> </body> </html>"; var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.CreatePdfFormsFromHtml = true; var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("form.pdf"); } public void CreatePdfWithForm() { var html = @" <!DOCTYPE html> <html> <head> <title>PDF Test Form</title> <style> body { font-family: Arial, sans-serif; margin: 20px; background-color: #f4f4f4; } .form-container { width: 400px; padding: 20px; border: 1px solid #ccc; border-radius: 8px; background-color: #fff; box-shadow: 2px 2px 5px rgba(0,0,0,0.1); } .form-group { margin-bottom: 15px; } label { display: block; /* Make label take up full width */ margin-bottom: 5px; font-weight: bold; color: #333; } input[type='text'], textarea { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; box-sizing: border-box; /* Include padding and border in the element's total width and height */ } textarea { height: 100px; resize: vertical; } .checkbox-group { display: flex; align-items: center; } .checkbox-group label { display: inline; font-weight: normal; margin-left: 8px; } </style> </head> <body> <div class='form-container'> <h2>Document Generation Test Form</h2> <form> <div class='form-group'> <label for='fullName'>Full Name:</label> </div> <div class='form-group'> <label for='comments'>Comments/Feedback:</label> <textarea id='comments' name='comments' placeholder='Type your feedback here...'></textarea> </div> <div class='form-group checkbox-group'> <label for='agree'>I agree to the terms and conditions.</label> </div> <button style='padding: 10px 15px; background-color: #007bff; color: white; border: none; border-radius: 4px; cursor: pointer;'> Test Button Rendering </button> </form> </div> </body> </html>"; var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.CreatePdfFormsFromHtml = true; var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("form.pdf"); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 這創建了一個包含用戶可填寫表單字段的交互式 PDF,適合需要用戶輸入的應用程式。 代碼還顯示了在生成的內容中如何使用 HTML 連結。 輸出 PDF with Editable Form 最佳實踐與錯誤處理 在生產中生成 PDF 文件時,請實施適當的錯誤處理: try { var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("output.pdf"); } catch (Exception ex) { // Log error and handle appropriately Console.WriteLine($"PDF generation failed: {ex.Message}"); } try { var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("output.pdf"); } catch (Exception ex) { // Log error and handle appropriately Console.WriteLine($"PDF generation failed: {ex.Message}"); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 始終驗證輸入數據並優雅地處理異常,以確保在應用中可靠生成 PDF。 結論 IronPDF 將在 .NET Core 中創建 PDF 文件的複雜工作轉變為簡單、可管理的過程。 從基本文件創建到表單、圖像和頁面管理等高級功能,此 .NET 程式庫提供了完整的工具來以程式化方式生成 PDF 文件。 通過使用將 HTML 轉換的常用方法,您可以快速載入數據並下載完成的文件。 無論您是在構建簡單報告還是複雜的多頁文件,IronPDF 直觀的 API 和強大的渲染引擎都使它成為 .NET 開發人員的理想選擇。 立即開始在您的 ASP.NET Core 應用中使用 IronPDF 的免費試用版來創建專業的 PDF 文件。 準備好增強您的應用程序的 PDF 生成能力了嗎? 開始使用 IronPDF,體驗創建 PDF 多麼簡單。 常見問題解答 什麼是IronPDF? IronPDF 是針對 ASP.NET 應用程序設計的強大 .NET Core 庫,簡化了 PDF 文檔的創建和操作。 我如何在 .NET Core 中創建 PDF 文檔? 你可以通過使用 IronPDF 庫在 .NET Core 中創建 PDF 文檔,該庫提供簡便的方法,允許在應用程序中編程生成 PDF。 我可以使用 IronPDF 創建哪些類型的文檔? 通過 IronPDF,你可以創建各種文檔類型,包括發票、報告以及任何其他需要生成 PDF 的基於文檔的系統。 IronPDF 適合 ASP.NET 應用程序嗎? 是的,IronPDF 特別適合 ASP.NET 應用程序,提供無縫集成和高效的 PDF 創建功能。 我可以在哪找到 IronPDF 的官方文件? IronPDF 的官方文件可在 Iron Software 網站上獲得,提供全面的技術細節和使用指南。 使用 IronPDF 創建 PDF 的好處是什麼? 使用 IronPDF 的好處包括易於使用、強大的功能,以及能夠在 .NET Core 應用程序中編程生成高質量的 PDF。 IronPDF 能處理複雜的 PDF 生成任務嗎? 是的,IronPDF 能夠處理複雜的 PDF 生成任務,非常適合需要高級 PDF 操作和創建的應用程序。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 發表日期 11月 13, 2025 如何在 C# 中合併兩個 PDF 位元組數組 使用 IronPDF 在 C# 中合併兩個 PDF 位元組數組。學習如何透過簡單的程式碼範例,將來自位元組數組、記憶體流和資料庫的多個 PDF 文件合併在一起。 閱讀更多 發表日期 11月 13, 2025 如何在 ASP.NET MVC 中創建 PDF 檢視器 為 ASP.NET MVC 應用程式構建一個強大的 PDF 檢視器。顯示 PDF 文件,將視圖轉換為 PDF,使用 IronPDF 添加互動功能。 閱讀更多 發表日期 11月 13, 2025 如何建立 .NET HTML 轉 PDF 轉換器 學習如何在.NET中使用IronPDF將HTML轉換為PDF。 閱讀更多 如何在 C# 中比較兩個 PDF 文件如何在 C# 中動態生成 PDF
發表日期 11月 13, 2025 如何在 C# 中合併兩個 PDF 位元組數組 使用 IronPDF 在 C# 中合併兩個 PDF 位元組數組。學習如何透過簡單的程式碼範例,將來自位元組數組、記憶體流和資料庫的多個 PDF 文件合併在一起。 閱讀更多
發表日期 11月 13, 2025 如何在 ASP.NET MVC 中創建 PDF 檢視器 為 ASP.NET MVC 應用程式構建一個強大的 PDF 檢視器。顯示 PDF 文件,將視圖轉換為 PDF,使用 IronPDF 添加互動功能。 閱讀更多