Milan Jovanovic 的回应:为什么 IronPDF 是 .NET 实际 PDF 生成的首选工具
由 Chipego Mweemba Kalinda 撰写 - Support Engineer, Iron Software
我们阅读了 Milan Jovanović 的文章,如何在 ASP.NET Core 中轻松创建 PDF 文档。 Milan 出色地将流行的 .NET PDF 库与 IronPDF 进行了比较,为开发人员提供了当前形势的坚实概况。
在 Iron Software,我们感谢 Milan 的透明度和真实世界的见解。 作为IronPDF团队的一员,我想跟进一个回应,不仅是为了强调IronPDF的优势,还要为我们的产品决策背后的"为什么"提供更多背景,特别是针对在生产级系统上工作的开发者。
IronPDF 是为 HTML 到 PDF 的渲染而构建的
不同于需要您在 C# 布局代码中定义文档结构的库,IronPDF 从 HTML、CSS 和 JavaScript 渲染,就像浏览器一样。 您可以使用以下方式构建文档:
- Razor 视图
- MVC + 视图模型
- Blazor 组件
- 手写的 HTML 模板
这种方法提供了完全的设计自由,重用现有的网页组件,以及像素级的输出,这对发票、报告、证书等尤为重要。
Razor 视图 + 强类型 = 易维护的 PDF
在文章中,有一个如何使用强类型 Razor 视图生成动态发票的出色示例。 这正是我们希望 IronPDF 在 ASP.NET Core 应用中使用的方式。
他的处理方式:
// Convert a Razor view into an HTML string
var html = ConvertRazorViewToHtml(invoice);
// Create a new PDF renderer instance
var renderer = new ChromePdfRenderer();
// Render the HTML to a PDF document
var pdf = renderer.RenderHtmlAsPdf(html);
// Save the PDF document to a file with a unique invoice number
pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");// Convert a Razor view into an HTML string
var html = ConvertRazorViewToHtml(invoice);
// Create a new PDF renderer instance
var renderer = new ChromePdfRenderer();
// Render the HTML to a PDF document
var pdf = renderer.RenderHtmlAsPdf(html);
// Save the PDF document to a file with a unique invoice number
pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf");' Convert a Razor view into an HTML string
Dim html = ConvertRazorViewToHtml(invoice)
' Create a new PDF renderer instance
Dim renderer = New ChromePdfRenderer()
' Render the HTML to a PDF document
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Save the PDF document to a file with a unique invoice number
pdf.SaveAs($"invoice-{invoice.InvoiceNumber}.pdf")我们喜欢这种模式,因为它:
- 易于阅读和维护
- 遵循标准 .NET 架构
- 可随着项目复杂性扩展
这不仅仅是为了制作 PDF; 而是为了使它们成为您现有开发流的一部分。
超越渲染的功能
Milan 还触及了另一个关键的业务需求:合并多个 PDF 文件。 这在会计、审计或捆绑客户文件时很常见。
对于 IronPDF 来说,这只需一行代码:
// Merge multiple PDF files into a single PDF document
var merged = PdfDocument.Merge(pdf1, pdf2, pdf3);
// Save the merged PDF document
merged.SaveAs("merged.pdf");// Merge multiple PDF files into a single PDF document
var merged = PdfDocument.Merge(pdf1, pdf2, pdf3);
// Save the merged PDF document
merged.SaveAs("merged.pdf");' Merge multiple PDF files into a single PDF document
Dim merged = PdfDocument.Merge(pdf1, pdf2, pdf3)
' Save the merged PDF document
merged.SaveAs("merged.pdf")但我们不仅止步于此。 IronPDF 还包括:
- PDF/A 导出(用于合规和存档)
- 使用证书进行数字签名
- PDF 编辑(注释、书签、水印)
- 安全性(密码保护、加密)
- 页眉/页脚/页码支持
- 从 Markdown、图像和URL 创建 PDF
这种全栈功能意味着您无需将多个工具拼接在一起,因为 IronPDF 处理整个文档生命周期。
为生产环境设计,而不仅仅是原型
IronPDF 不仅对开发者友好; 它也为实际系统中的部署而构建。 我们已将其优化用于:
- .NET Core、.NET 6/7/8+
- Linux、Windows、Docker、Azure
- Web 应用、桌面应用、后台服务
没有浏览器依赖。 没有额外的安装脚本。只需一次 NuGet 安装,您就准备好了。
我们还提供详尽的文档和来自工程师的实践支持(如我自己!)以帮助进行部署、解决边缘案例及调整性能。
最终想法:用对的工具做对的事情
Milan 在他的文章结尾用了一句名言:
"最困难的部分是选择正确的工具来完成工作。"
我们完全同意。
- 对于代码优先的静态布局呢? QuestPDF 很稳固。
- 对于动态内容、Razor 集成、HTML/CSS 保真度和文档安全性呢? IronPDF 是为工作而设计的工具。
再次感谢 Milan Jovanović 突出了 IronPDF。 我们一直在倾听,不断改进,并始终在这里帮助像你这样的开发人员交付生产就绪的 PDF 解决方案。
尝试 IronPDF
- 从 NuGet 安装:
Install-Package IronPdf - 探索文档:https://ironpdf.com/docs/