Milan Jovanović 在 ASP .NET Core 中创建 PDF 文档——IronPDF 是他的首选库

Milan 是一位软件架构师、微软 MVP,也是.NET生态系统中最受尊敬的人物之一,他发表了一篇深入探讨.NET Core中 PDF 生成的文章。 他演示了多个实际应用场景,包括动态文档创建、PDF 合并以及从 API 端点提供文件。
他选择哪个图书馆来阅读所有这些作品? IronPDF 。 用他自己的话说: "IronPDF是我在商业项目中使用最多的库。"
让我们一起来看看他具体是如何使用它的。
方法:使用Razor视图的 HTML 模板
生成 PDF 文件的更常见方法是使用 HTML 模板。
它是将ASP.NET Core MVC Razor视图与 IronPDF 的渲染引擎相结合。通过使用强类型视图,他可以在运行时将 C# 对象直接传递到模板中,从而生成动态的、数据驱动的文档。
以下是该模式的实际应用。 首先, Razor视图定义了文档布局:
@model ViewModels.InoviceViewModel
<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
@foreach(var lineItem in Model.LineItems)
{
<li>@lineItem.Name | @lineItem.Price</li>
}
</ul>
@model ViewModels.InoviceViewModel
<div>Invoice number: @Model.InvoiceNumber</div>
<div>Invoice date: @Model.InvoiceDate</div>
<br/>
<span>Line items:</span>
<ul>
@foreach(var lineItem in Model.LineItems)
{
<li>@lineItem.Name | @lineItem.Price</li>
}
</ul>然后,IronPDF 的ChromePdfRenderer将渲染后的 HTML 转换为精美的 PDF:
var html = ConvertRazorViewToHtml(invoice);
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");var html = ConvertRazorViewToHtml(invoice);
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");三行 C# 代码。 Razor视图处理所有布局逻辑,CSS 处理样式, IronPDF处理转换。 正如米兰所说,"事情就是这么简单。"
米兰为何选择此方案而非其他方案?
Milan 曾在多个商业项目中使用过 PDF 库,他之所以偏爱IronPDF ,是因为他在文章中强调了几个关键因素。
Chromium渲染引擎可提供一致的渲染效果。IronPDF使用与Chrome相同的引擎渲染HTML,这意味着您的PDF输出与在浏览器中看到的内容完全一致。
CSS 让您可以完全控制格式。您无需学习专有的布局 API,只需使用与编写任何网页相同的 CSS 代码即可。 Flexbox、网格布局、自定义字体、响应式间距,所有这些都会直接反映到 PDF 输出中。
实际案例:合并多个PDF文件
Milan 详细讲解了一个常见的业务需求,即将多个 PDF 文件合并成一个文档。 想想那些需要整理成册进行会计核算的月度收据,或者需要汇编成最终交付成果的报告章节。
实际案例:通过 API 提供 PDF 文件
Milan 还展示了IronPDF如何自然地融入ASP.NET Core 的极简 API 模式。 从端点返回动态生成的 PDF 文件。
阅读米兰的完整文章
Milan 的完整分析涵盖了其他实现细节和代码示例,如果您正在评估.NET项目的 PDF 生成方法,这些内容值得探索。
自己试试看
IronPDF可免费用于开发用途,因此您可以毫无顾虑地在自己的项目中测试 Milan 的模式。 通过 NuGet 安装:
