跳至页脚内容
产品比较

如何使用IronPDF在C#中将HTML转换为.NET 10的PDF

.NET MAUI使团队可以跨Windows和macOS 部署单一代码库,这使得它成为业务桌面应用程序(如现场服务工具、销售点系统和操作仪表盘)的热门选择。 这些应用程序已经在XAML中呈现结构化屏幕,用户通常需要将他们所看到的内容保存为可移植文档。 IronPDF通过一个方法调用将当前的MAUI页面转换为PDF,因此团队已经构建的UI变成报告。

需求显现的地方

现场检查员在XAML表单上完成工作。 销售人员在屏幕上制作报价单。 经理查看KPI仪表板。 每一个都以相同的方式结束:有人想要一份整洁、可分享的记录来提供给客户或后勤部门。将该屏幕重建为单独的报告模板意味着随着时间的推移,两个布局会逐渐不同。直接将文档指向现有页面可以避免这种维护。

一页一个文档

IronPDF通过其Chrome引擎将MAUI ContentPage 渲染成PDF,保留字体、颜色和布局。 RenderContentPageToPdf 方法处理转换,结果是一个标准 PdfDocument,可以保存或编辑。

using IronPdf;
using IronPdf.Extensions.Maui;

private async void PrintToPdf(object sender, EventArgs e)
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
    {
        HtmlFragment = "<h1>Inspection Report</h1>"
    };

    PdfDocument pdf = await renderer.RenderContentPageToPdf<MainPage, App>();
    pdf.SaveAs("inspection-report.pdf");
}
using IronPdf;
using IronPdf.Extensions.Maui;

private async void PrintToPdf(object sender, EventArgs e)
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
    {
        HtmlFragment = "<h1>Inspection Report</h1>"
    };

    PdfDocument pdf = await renderer.RenderContentPageToPdf<MainPage, App>();
    pdf.SaveAs("inspection-report.pdf");
}
Imports IronPdf
Imports IronPdf.Extensions.Maui

Private Async Sub PrintToPdf(sender As Object, e As EventArgs)
    Dim renderer As New ChromePdfRenderer()
    renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter With {
        .HtmlFragment = "<h1>Inspection Report</h1>"
    }

    Dim pdf As PdfDocument = Await renderer.RenderContentPageToPdf(Of MainPage, App)()
    pdf.SaveAs("inspection-report.pdf")
End Sub
$vbLabelText   $csharpLabel

将其连接到XAML文件中的按钮是唯一需要的UI工作:

<Button
    Text="Save as PDF"
    Clicked="PrintToPdf"
    HorizontalOptions="Center" />
<Button
    Text="Save as PDF"
    Clicked="PrintToPdf"
    HorizontalOptions="Center" />
XML

在您连线之前

一些细节决定了该功能是否干净地发布:

  • 扩展包: RenderContentPageToPdf 存在于 IronPdf.Extensions.Maui 包中,该包位于主要的IronPdf包之上。 两者都是必需的。
  • 异步处理: 方法返回一个任务,因此等待它可以保持界面响应,同时渲染复杂页面。 按钮上的加载指示器可以改善体验。
  • 保存位置: 使用文件选择器或平台适用目录,而不是硬编码路径,因为相同的代码在Windows和macOS上运行。
  • 平台范围: MAUI PDF生成针对桌面和Web。 不支持移动平台。

一个按钮和一个方法调用

这就是整个功能:一个按钮,一个调用。 团队将发票导出、检查报告和仪表板快照添加到MAUI桌面应用程序中,而无需单独的报告层。 因为输出是一个 PdfDocument,所以在保存之前,可以进行页码压缩等进一步操作。 完整的方法详情在XAML至PDF指南中。

常见问题解答

如何使用IronPDF将MAUI页面导出为PDF?

安装IronPdfIronPdf.Extensions.Maui NuGet包。创建ChromePdfRenderer,调用await renderer.RenderContentPageToPdf<TPage, TApp>(),并保存生成的PdfDocument

IronPDF是否支持Windows和macOS上的MAUI?

是的。IronPDF的MAUI扩展针对桌面平台 - Windows和macOS。移动平台(iOS和Android)不支持。

我需要单独的报告模板来从MAUI应用程序生成PDF吗?

不需要。IronPDF通过其Chrome引擎渲染现有的XAML ContentPage为PDF,保留字体、颜色和布局。您已经构建的页面成为文档,无需维护重复的模板。

生成MAUI PDF需要哪些NuGet包?

您需要IronPdf(主包)和IronPdf.Extensions.Maui(MAUI特定的扩展)。RenderContentPageToPdf方法定义在扩展包中。

我可以在渲染MAUI页面后的PDF中添加页眉、页脚或进行后处理吗?

可以。RenderContentPageToPdf返回一个标准的PdfDocument对象。您可以在调用之前通过RenderingOptions.HtmlHeaderHtmlFooter添加页眉和页脚,并在保存之前进行进一步编辑,如页码或压缩。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

钢铁支援团队

我们每周 5 天,每天 24 小时在线。
聊天
电子邮件
打电话给我