使用IRONPDF DotNet Core 生成 PDF 文件 Curtis Chau 已更新:2026年1月21日 下载 IronPDF NuGet 下载 DLL 下载 Windows 安装程序 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在 Grok 中打开 向 Grok 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 要在 .NET Core 中生成 PDF 文件,可以使用 IronPDF 的ChromePdfRenderer只需几行代码即可将 HTML 字符串、网页或 Razor 视图转换为 PDF 文档,同时保留所有 CSS 样式和 JavaScript 功能。 在 .NET Core 应用程序中创建 PDF 文档是构建需要生成发票、报告和其他业务文档的Web 应用程序时的常见需求。 IronPDF 提供了一个高效的PDF 库,它通过其Chrome 渲染引擎简化了 ASP.NET Core 中的 PDF 生成,每次都能生成像素级完美的 PDF 文件。在本指南中,您将了解如何在 .NET 环境中处理各种PDF 生成任务,从简单的 HTML 转换到复杂的报表生成。 DotNet Core 如何生成 PDF 文件? IronPDF 使用基于 Google Chrome 的WebKit 渲染引擎将 HTML 内容渲染成 PDF 文件。 这种方法意味着您可以利用现有的 HTML 和 CSS 知识来创建 PDF,而无需学习复杂的PDF 生成功能或应对陡峭的学习曲线。 PDF 库可自动处理网页转换,支持JavaScript 执行和响应式 CSS 。 该库的流畅 API 允许您从HTML 页面、URL 或 HTML 内容字符串生成 PDF 文档。 IronPDF 在将 HTML 转换为 PDF 时,能够保留复杂的布局、 CSS 样式、JavaScript 执行,甚至动态网页内容。 这使其成为需要在应用程序中具备功能丰富的PDF 转换功能的.NET 开发人员的理想选择。 该库擅长生成精确无误的PDF 文件,并能保持字体渲染和国际语言支持。 渲染过程采用与 Google Chrome 相同的技术,确保您的HTML 转 PDF 转换效果与用户在现代浏览器中看到的效果一致。 这包括对CSS3 功能、网络字体、 SVG 图形,甚至WebGL 内容的支持。 Chrome渲染引擎相比传统的PDF生成方法,性能有了显著提升。 如何通过 NuGet 包管理器安装 IronPDF? 使用 IronPDF 只需通过NuGet 包管理器进行一次安装即可。 在 Visual Studio 中打开包管理器控制台并运行以下命令: Install-Package IronPdf 对于Docker 部署或Linux 环境,您可能需要额外的依赖项。 IronPDF 还支持macOS和Windows 平台,使其能够灵活应用于各种开发环境。 该库可以与Azure 部署和AWS Lambda 函数无缝协作。 对于使用容器化应用程序的开发人员来说,IronPDF 提供Docker 支持,并且可以作为远程容器运行。 该库还提供了一个Windows 安装程序,用于手动安装。 部署到云平台时,您可以遵循Azure Functions或AWS 部署的特定指南。 如何从 HTML 字符串生成 PDF 文档? 创建 PDF 文档最简单的方法是直接转换 HTML 内容。 以下是一个基本的"Hello World"示例,演示如何生成PDF: using IronPdf; // Create a PDF from HTML string var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>"); pdf.SaveAs("hello.pdf"); using IronPdf; // Create a PDF from HTML string var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>"); pdf.SaveAs("hello.pdf"); Imports IronPdf ' Create a PDF from HTML string Dim renderer As New ChromePdfRenderer() Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>") pdf.SaveAs("hello.pdf") $vbLabelText $csharpLabel 上面的代码只用了几行代码就创建了一个新的 PDF 文档。 ChromePdfRenderer类提供了从 HTML 生成 PDF 的核心功能。 pdf对象包含您的 PDF 文档,可以保存到文件路径或导出到内存。 您还可以向 PDF 文件添加标题、作者和关键词等元数据。 渲染器支持多种渲染选项,允许您自定义 PDF 输出。 您可以配置自定义边距、设置纸张尺寸、控制页面方向和调整视口设置。 这些选项可确保您的 PDF 文件符合专业文档的特定格式要求。 如何使用 CSS 样式创建更复杂的 PDF? 为了更详细地演示HTML 转 PDF 的功能,让我们创建一个包含 HTML 标记和 CSS 样式的发票文档: using IronPdf; var html = @" <html> <head> <style> body { font-family: Arial, sans-serif; font-size: 14px; } .invoice-header { background-color: #2c3e50; color: white; padding: 20px; font-family: 'Helvetica', sans-serif; } .invoice-details { margin: 20px 0; } table { width: 100%; border-collapse: collapse; } th, td { padding: 12px; text-align: left; border-bottom: 1px solid #ddd; } .total { font-size: 1.2em; font-weight: bold; text-align: right; } </style> </head> <body> <div class='invoice-header'> <h1>Invoice #2024-001</h1> <p>Date: January 15, 2024</p> </div> <div class='invoice-details'> <h3>Bill To: John Doe</h3> <table> <tr> <th>Item</th> <th>Quantity</th> <th>Price</th> </tr> <tr> <td>Professional License</td> <td>1</td> <td>$799</td> </tr> </table> <p class='total'>Total: $799.00</p> </div> </body> </html>"; var renderer = new ChromePdfRenderer(); // Configure rendering options for the PDF document renderer.RenderingOptions.MarginTop = 10; renderer.RenderingOptions.MarginBottom = 10; var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("invoice.pdf"); using IronPdf; var html = @" <html> <head> <style> body { font-family: Arial, sans-serif; font-size: 14px; } .invoice-header { background-color: #2c3e50; color: white; padding: 20px; font-family: 'Helvetica', sans-serif; } .invoice-details { margin: 20px 0; } table { width: 100%; border-collapse: collapse; } th, td { padding: 12px; text-align: left; border-bottom: 1px solid #ddd; } .total { font-size: 1.2em; font-weight: bold; text-align: right; } </style> </head> <body> <div class='invoice-header'> <h1>Invoice #2024-001</h1> <p>Date: January 15, 2024</p> </div> <div class='invoice-details'> <h3>Bill To: John Doe</h3> <table> <tr> <th>Item</th> <th>Quantity</th> <th>Price</th> </tr> <tr> <td>Professional License</td> <td>1</td> <td>$799</td> </tr> </table> <p class='total'>Total: $799.00</p> </div> </body> </html>"; var renderer = new ChromePdfRenderer(); // Configure rendering options for the PDF document renderer.RenderingOptions.MarginTop = 10; renderer.RenderingOptions.MarginBottom = 10; var pdf = renderer.RenderHtmlAsPdf(html); pdf.SaveAs("invoice.pdf"); Imports IronPdf Dim html As String = " <html> <head> <style> body { font-family: Arial, sans-serif; font-size: 14px; } .invoice-header { background-color: #2c3e50; color: white; padding: 20px; font-family: 'Helvetica', sans-serif; } .invoice-details { margin: 20px 0; } table { width: 100%; border-collapse: collapse; } th, td { padding: 12px; text-align: left; border-bottom: 1px solid #ddd; } .total { font-size: 1.2em; font-weight: bold; text-align: right; } </style> </head> <body> <div class='invoice-header'> <h1>Invoice #2024-001</h1> <p>Date: January 15, 2024</p> </div> <div class='invoice-details'> <h3>Bill To: John Doe</h3> <table> <tr> <th>Item</th> <th>Quantity</th> <th>Price</th> </tr> <tr> <td>Professional License</td> <td>1</td> <td>$799</td> </tr> </table> <p class='total'>Total: $799.00</p> </div> </body> </html>" Dim renderer As New ChromePdfRenderer() ' Configure rendering options for the PDF document renderer.RenderingOptions.MarginTop = 10 renderer.RenderingOptions.MarginBottom = 10 Dim pdf = renderer.RenderHtmlAsPdf(html) pdf.SaveAs("invoice.pdf") $vbLabelText $csharpLabel 此示例展示了 IronPDF 处理带有 CSS 样式的复杂布局的能力,包括字体大小和字体系列设置。 PDF 库处理 HTML 标记以创建 PDF,从而保持 HTML 页面的确切外观。 该代码展示了 ASP.NET Core 应用程序如何为业务文档生成 PDF 输出。 您还可以添加自定义边距、设置自定义纸张尺寸或应用页面方向设置。 为了提升样式效果,IronPDF 支持Google 字体和网页图标,让您能够创建视觉效果出色的 PDF 文件。 该库还可以处理复杂文档设计中的背景层和前景层。 您可以为现有 PDF 文件添加自定义水印或内容。 生成的 PDF 看起来像什么? ![PDF 发票显示发票 #2024-001,日期为 2024 年 1 月 15 日,显示购买专业许可证的价格为 749.00 美元,标题部分为深蓝色。 该发票展示了从 HTML 到 PDF 转换过程中保留的 CSS 样式,包括自定义字体、颜色和表格格式。 如何将网页转换为 PDF 文件? IronPDF 在从实时网页生成 PDF 方面表现出色。 此功能对于需要动态捕获 Web 内容的ASP.NET Core Web 应用程序尤其有用。 PDF库可以从任何URL生成PDF文件: using IronPdf; var renderer = new ChromePdfRenderer(); // Render a webpage URL to PDF var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_78___"); // Save the PDF document pdf.SaveAs("webpage.pdf"); using IronPdf; var renderer = new ChromePdfRenderer(); // Render a webpage URL to PDF var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_78___"); // Save the PDF document pdf.SaveAs("webpage.pdf"); Imports IronPdf Dim renderer = New ChromePdfRenderer() ' Render a webpage URL to PDF Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_78___") ' Save the PDF document pdf.SaveAs("webpage.pdf") $vbLabelText $csharpLabel 该库在生成 PDF 时会自动处理JavaScript 执行、外部资源和响应式设计。 renderer对象提供了对高级功能的访问,用于自定义网页转换为 PDF 的方式。 对于安全网站,您可以处理TLS 身份验证和cookie 。 var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.ViewPortWidth = 1920; renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen; renderer.RenderingOptions.WaitFor.RenderDelay(1000); // Wait for dynamic content // Render a webpage URL to PDF var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_79___"); // Save the PDF document pdf.SaveAs("webpage.pdf"); var renderer = new ChromePdfRenderer(); renderer.RenderingOptions.ViewPortWidth = 1920; renderer.RenderingOptions.EnableJavaScript = true; renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen; renderer.RenderingOptions.WaitFor.RenderDelay(1000); // Wait for dynamic content // Render a webpage URL to PDF var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_79___"); // Save the PDF document pdf.SaveAs("webpage.pdf"); Dim renderer = New ChromePdfRenderer() renderer.RenderingOptions.ViewPortWidth = 1920 renderer.RenderingOptions.EnableJavaScript = True renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen renderer.RenderingOptions.WaitFor.RenderDelay(1000) ' Wait for dynamic content ' Render a webpage URL to PDF Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_79___") ' Save the PDF document pdf.SaveAs("webpage.pdf") $vbLabelText $csharpLabel 这些自定义选项可确保动态内容在 PDF 转换之前完全加载,从而生成准确的 PDF 文件。 该代码演示了 ASP.NET Core 如何从网页生成 PDF,并实现完美的渲染效果。 您还可以使用WaitFor 方法来处理复杂的 JavaScript 应用程序,或为响应式设计配置视口设置。 对于需要身份验证的页面,IronPDF 支持HTTP 请求标头和自定义 cookie 。 该库为处理JavaScript 密集型网站提供了复杂的选项,包括支持Angular 应用程序、图表渲染和自定义 JavaScript 执行。 您可以配置渲染延迟,以确保所有动态内容在转换前正确加载。 ![分屏对比,左侧为在网页浏览器中渲染的维基百科主页,右侧为使用 .NET Core 中的 IronPDF 转换的 PDF 文件。 PDF 版本保留了所有格式、图像和布局结构,展现了高保真 HTML 转 PDF 转换能力。 如何在 ASP.NET Core Web 应用程序中创建 PDF 文档? 将 PDF 生成集成到 ASP.NET Core 应用程序非常简单。 PDF 库可与 ASP.NET Core 控制器无缝协作,生成 PDF 文件。 以下是一个用于创建 PDF 文件的 API 端点示例: using Microsoft.AspNetCore.Mvc; using IronPdf; [ApiController] [Route("api/[controller]")] public class PdfController : ControllerBase { [HttpGet("generate-report")] public IActionResult GenerateReport() { var html = @" <h1>Monthly Sales Report</h1> <p>Generated on: " + DateTime.Now.ToString() + @"</p> <table> <tr><th>Product</th><th>Sales</th></tr> <tr><td>Product A</td><td>$5,000</td></tr> <tr><td>Product B</td><td>$3,500</td></tr> </table>"; var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); // Return PDF file to browser return File(pdf.BinaryData, "application/pdf", "output.pdf"); } } using Microsoft.AspNetCore.Mvc; using IronPdf; [ApiController] [Route("api/[controller]")] public class PdfController : ControllerBase { [HttpGet("generate-report")] public IActionResult GenerateReport() { var html = @" <h1>Monthly Sales Report</h1> <p>Generated on: " + DateTime.Now.ToString() + @"</p> <table> <tr><th>Product</th><th>Sales</th></tr> <tr><td>Product A</td><td>$5,000</td></tr> <tr><td>Product B</td><td>$3,500</td></tr> </table>"; var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); // Return PDF file to browser return File(pdf.BinaryData, "application/pdf", "output.pdf"); } } Imports Microsoft.AspNetCore.Mvc Imports IronPdf <ApiController> <Route("api/[controller]")> Public Class PdfController Inherits ControllerBase <HttpGet("generate-report")> Public Function GenerateReport() As IActionResult Dim html As String = " <h1>Monthly Sales Report</h1> <p>Generated on: " & DateTime.Now.ToString() & "</p> <table> <tr><th>Product</th><th>Sales</th></tr> <tr><td>Product A</td><td>$5,000</td></tr> <tr><td>Product B</td><td>$3,500</td></tr> </table>" Dim renderer As New ChromePdfRenderer() Dim pdf = renderer.RenderHtmlAsPdf(html) ' Return PDF file to browser Return File(pdf.BinaryData, "application/pdf", "output.pdf") End Function End Class $vbLabelText $csharpLabel 此控制器操作会创建一个新文档并将 PDF 直接发送到浏览器。 return 语句使用 .NET Core 框架的内置文件响应处理。 ASP.NET Core Web 应用程序可以轻松生成报表、发票和其他文档的 PDF。 您可以通过添加页眉和页脚、页码或水印来改进您的 PDF 文件。 对于生产应用,可以考虑实现异步 PDF 生成,以提高性能和可扩展性。 您还可以使用多线程功能进行批量处理。 该库支持内存流操作,可在云环境中高效利用资源。 ASP.NET 生成的 PDF 是什么样子的? ! PDF 查看器显示了 2025 年 10 月 30 日生成的月度销售报告,其中包含产品 A(5,000 美元)和产品 B(3,500 美元)的销售数据。该报告展示了由 ASP.NET Core 控制器操作生成的简洁表格格式和专业布局。 对于 MVC 应用程序,您还可以从Razor 视图渲染 HTML 以创建 PDF : [HttpGet] public async Task<IActionResult> DownloadInvoice(int id) { // Get invoice data from database var model = await GetInvoiceData(id); // Render Razor view to HTML string var html = await RenderViewToString("Invoice", model); // Convert HTML to PDF document var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); // Return PDF file with appropriate file path return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf"); } [HttpGet] public async Task<IActionResult> DownloadInvoice(int id) { // Get invoice data from database var model = await GetInvoiceData(id); // Render Razor view to HTML string var html = await RenderViewToString("Invoice", model); // Convert HTML to PDF document var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(html); // Return PDF file with appropriate file path return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf"); } <Attribute(HttpGet)> Public Async Function DownloadInvoice(id As Integer) As Task(Of IActionResult) ' Get invoice data from database Dim model = Await GetInvoiceData(id) ' Render Razor view to HTML string Dim html = Await RenderViewToString("Invoice", model) ' Convert HTML to PDF document Dim renderer = New ChromePdfRenderer() Dim pdf = renderer.RenderHtmlAsPdf(html) ' Return PDF file with appropriate file path Return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf") End Function $vbLabelText $csharpLabel 本示例展示了 ASP.NET Core 如何与 IronPDF 集成,以从Razor 模板生成 PDF。 从视图呈现的页面将成为专业的 PDF 文档。 对于Razor Pages 应用程序,您也有类似的选项。 您还可以从Blazor 组件或MAUI 应用程序生成 PDF。 该库为不同的 ASP.NET Core 场景提供专门支持,包括 MVC Core 中的CSHTML 到 PDF 转换、 MVC 框架集成和ASPX 页面渲染。 对于现代应用程序,IronPDF 支持Blazor Server集成和MAUI PDF 查看。 有哪些高级PDF生成功能? IronPDF 提供众多用于专业 PDF 生成的高级功能。 您可以合并多个 PDF 文件,添加数字签名,使用密码实现 PDF 安全性,或者创建符合 PDF/A 标准的文档以进行长期存档。 该库还支持创建和填写PDF 表单,使其成为自动化文档处理的理想选择。 对于性能要求极高的应用,IronPDF 提供异步方法和多线程支持。 您还可以通过压缩或线性化来提高 PDF 文件的浏览速度,从而加快网页浏览速度。 该库可处理图像转换,包括支持SVG 图形和Base64 编码图像。 其他高级功能包括: 用于文本提取的PDF 解析 -注释支持 书签管理 -附件处理 用于调试的自定义日志记录 PDF DOM 对象 -灰度 PDF 文件,实现经济高效的打印 安全功能包括: 加密和解密 -支持 HSM 的数字签名 PDF 清理 PDF/UA 格式,符合无障碍访问要求 ZUGFeRD 发票自动处理 .NET Core 中 PDF 生成的下一步是什么? IronPDF 使在 .NET Core 中生成 PDF 变得简单高效。 其 Chrome 渲染引擎可确保从 HTML 内容创建 PDF 时的精确保真度,而用户友好的 API 则消除了与 PDF 操作相关的典型学习曲线。 PDF 库为 ASP.NET Core 开发人员提供完整的文档和积极维护的支持。 它支持在各种平台上部署,包括Azure Functions 、 AWS Lambda和Docker 容器。 无论您是在为商业用途创建 PDF,还是在构建企业 Web 应用程序,IronPDF 提供了专业 PDF 创建所需的工具,并有商业许可选项可用。 该库凭借其现代化的 API 设计和卓越的渲染能力,比其他 PDF 解决方案更具竞争优势。 立即开始免费试用,我们提供的许可选项适用于各种规模的团队,从个人开发人员到企业部署。 IronPDF 还提供详细的教程和代码示例,帮助您快速上手,满足您的 PDF 生成需求。 常见问题解答 如何在 .NET Core 中生成 PDF 文档? 您可以使用 IronPDF 在 .NET Core 中生成 PDF 文档,该工具允许您使用其先进的 Chrome 渲染引擎从 HTML、URL 和 Razor 视图创建 PDF。 使用 IronPDF 进行 PDF 生成的优势是什么? IronPDF 提供了若干优势,包括易于集成、支持像素完美渲染和从多种来源如 HTML 和 URL 创建 PDF 的能力,非常适合需要 PDF 生成的 Web 应用程序。 IronPDF可以处理复杂的PDF生成任务吗? 是的,IronPDF 专为处理 .NET 环境中复杂的 PDF 生成任务而设计,为开发人员提供创建详细和准确 PDF 文档所需的工具。 Chrome 渲染引擎在 IronPDF 中的作用是什么? html 转 pdf asp.net core IronPDF 适合用于生成发票和报告等业务文档吗? 绝对适合,IronPDF 非常适合用于生成发票和报告等业务文档,提供精确的渲染和对多种文档格式的支持。 IronPDF 可以将哪些类型的输入转换为 PDF? IronPDF 可以将 HTML、URL 和 Razor 视图等输入转换为 PDF 文档,提供内容创建的灵活性。 IronPDF 支持 ASP.NET Core 应用程序吗? 是的,IronPDF 与 ASP.NET Core 应用程序完全兼容,使开发人员能够无缝集成 PDF 生成功能到他们的 Web 项目中。 IronPDF 在 Web 应用程序中的一些常见用例是什么? IronPDF 的常见用例包括为 Web 应用程序生成发票、报告及任何其他业务文档所需的 PDF。 Curtis Chau 立即与工程团队聊天 技术作家 Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。 相关文章 已更新2026年1月22日 如何使用 IronPDF 在 .NET 中创建 PDF 文档:完整指南 发现为开发人员创建PDF文件的有效方法。提升您的编码技能并简化您的项目。立即阅读文章! 阅读更多 已更新2026年1月21日 如何在 VB.NET 中合并 PDF 文件:完整教程 使用IronPDF合并PDF VB NET。学习使用简单的VB.NET代码将多个PDF文件合并为一个文档。包括逐步示例。 阅读更多 已更新2026年1月21日 C# PDFWriter 教程:在 .NET 中创建 PDF 文档 使用这份逐步指南了解如何高效地使用C# PDFWriter创建PDF。阅读文章提升您的技能! 阅读更多 在 C# 和 VB.NET 中将 PDF 转换为 TIFF如何用 C# 将 PDF 转换为字...
已更新2026年1月21日 如何在 VB.NET 中合并 PDF 文件:完整教程 使用IronPDF合并PDF VB NET。学习使用简单的VB.NET代码将多个PDF文件合并为一个文档。包括逐步示例。 阅读更多