行业新闻

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>
$vbLabelText   $csharpLabel

然后,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");
$vbLabelText   $csharpLabel

三行 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 安装:

开始30天免费试用