如何在 NET MAUI 中将 XAML 转换为 PDF

在 C# MAUI 中将 XAML 转换为 PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF 允许您使用几行代码将 .NET MAUI 应用程序中的 XAML 页面转换为 PDF。 通过使用RenderContentPageToPdf方法,您可以将 MAUI 应用程序的 UI 更改为适用于桌面和 Web 平台的专业 PDF 文档。

.NET MAUI (多平台应用程序用户界面) 是一个用于构建原生设备应用程序的跨平台框架。 它扩展自 Xamarin.Forms,是统一 .NET 6 生态系统的一部分。 它允许 .NET 应用程序开发人员使用通用 UI 组件和单一代码库为桌面、Web 和移动平台创建应用程序。 MAUI 还允许您在必要时添加特定于平台的代码和资源。

IronPDF 允许您从 MAUI 页面生成 PDF 文档,从而使这些应用程序中创建 PDF 文件/页面成为可能。 无论您是在Windows还是macOS上进行开发,IronPDF 都能提供一致的 PDF 生成功能。 不过,IronPdf 目前不支持移动平台。

MAUI 应用程序中的 PDF 生成过程使用 IronPDF 的 Chrome 渲染引擎,确保您的 XAML 布局能够准确地转换为 PDF 格式。 因此,它非常适合生成报告、发票或任何需要保持 MAUI 应用程序用户界面视觉完整性的文档。

快速入门:在 .NET MAUI 中使用 IronPDF 将 XAML 转换为 PDF

使用 IronPDF 在 .NET MAUI 中将您的 XAML 页面转换为 PDF。 只需几行代码,即可将 MAUI 应用程序的内容更改为专业品质的 PDF 文档。 本指南提供了一个简单的示例,帮助您快速上手,使用 IronPDF 的高效渲染功能。 按照以下步骤,即可将 PDF 生成功能顺利集成到您的桌面和 Web 应用程序中。

var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf<MainPage,App>().SaveAs("page.pdf");
var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf<MainPage,App>().SaveAs("page.pdf");
$vbLabelText   $csharpLabel

最简工作流程(5个步骤)

1.下载适用于 MAUI 的 IronPDF C# 库

  1. 修改MainPage.xaml.cs文件,使用RenderContentPageToPdf方法
  2. 更新MainPage.xaml文件中的按钮以触发新功能
  3. 导出 PDF 文档,或使用 MAUI 应用中的 PDF 查看器查看 PDF 文档。
  4. 下载 MAUI 示例项目,快速入门

使用 MAUI 的 IronPDF 需要哪些扩展包? `IronPdf.Extensions.Maui` 包是 `IronPdf` 主包的扩展。 由于是扩展,因此仍需要 IronPDF 主包将 MAUI 应用程序的内容页面渲染为 PDF 文档。 该扩展包专门弥合了 MAUI 基于 XAML 的 UI 框架和 IronPDF 的 PDF 生成功能之间的差距。 该扩展包将 MAUI ContentPage 对象转换为可渲染为 PDF 的 HTML。 它保留了 MAUI 页面的布局和样式,同时提供对 IronPDF 所有高级功能的访问,如 [自定义页边距](/how-to/自定义页边距/)、[自定义纸张大小](/how-to/自定义纸张大小/)和 [PDF压缩](/how-to/pdf-compression/)。 ```shell Install-Package IronPdf.Extensions.Maui ``` 安装扩展包后,您将获得 `RenderContentPageToPdf` 方法的访问权限,该方法是转换 MAUI 页面的关键。 这种方法对性能进行了优化,并在转换过程中保持了 XAML 布局的视觉保真度。

如何将 MAUI 页面渲染为 PDF?

我应该先修改哪个代码文件? - 从 `MainPage.xaml` 文件转到其代码文件 `MainPage.xaml.cs`。 - 将名为 `OnCounterClicked` 的函数更改为 `PrintToPdf`。 使用下面的代码示例。 要将您的 MAUI 页面转换为 PDF,请使用 `RenderContentPageToPdf` 方法。 可通过实例化 `ChromePdfRenderer` 类访问该方法。 该方法将为您提供一个 `PdfDocument` 对象,您可以使用 `SaveAs` 方法或使用 [在 MAUI 中查看 PDF](/tutorials/pdf-viewing/) 的 PDF 查看器保存或查看。 `ChromePdfRenderer` 类通过其 `RenderingOptions` 属性提供了大量自定义选项。 您可以设置页边距、纸张方向、启用 JavaScript 执行等。 这些选项可确保您的 PDF 输出符合您的确切要求。 ```csharp :path=/static-assets/pdf/content-code-examples/how-to/xaml-to-pdf-maui-mainpage-xaml-cs.cs ``` 此外,正如您可能已经注意到的那样,从 XAML 渲染还让您可以完全访问 `RenderingOptions` 中的所有功能。 这包括添加 [文本和 HTML 页眉和页脚](/how-to/headers-and-footers/)。 您还可以[盖章图像](/tutorials/csharp-edit-pdf-complete-tutorial/#stamper-abstract-class)、添加[页码](/how-to/page-numbers/),甚至可以自定义页面的尺寸和布局。 使用该方法创建 PDF 时,这些选项均可用。 `RenderContentPageToPdf` 方法默认为异步,返回一个 Task<`PdfDocument`>。 该工具允许无阻塞生成 PDF,这在处理复杂布局或同时生成多个 PDF 时特别有用。 该方法可自动处理 XAML 可视化元素到 PDF 对应元素的转换,同时保留颜色、字体和布局结构。

我需要对 XAML 文件进行哪些修改? 在 `MainPage.xaml` 文件中,用新的 `PrintToPdf` 函数替换默认的 `OnCounterClicked` 函数。 单击此按钮将运行 `PrintToPdf` 方法并创建 PDF。 这一简单的修改只需修改极少的代码,即可将您的 MAUI 应用程序转换为 PDF 生成器。 ```xml

常见问题解答

什么是 .NET MAUI,它与 PDF 生成有何关系?

.NET MAUI(多平台应用程序用户界面)是从 Xamarin.Forms 扩展而来的用于构建本地设备应用程序的跨平台框架。IronPDF 与 .NET MAUI 应用程序集成,可使用 RenderContentPageToPdf 方法从 XAML 页面生成 PDF,使开发人员能够将 MAUI 应用程序的 UI 转变为专业的 PDF 文档。

MAUI 应用程序中的 PDF 生成支持哪些平台?

IronPDF 目前支持在桌面(Windows 和 macOS)和网络平台的 MAUI 应用程序中生成 PDF。IronPdf 目前不支持移动平台的 MAUI PDF 生成。

在 MAUI 中将 XAML 转换为 PDF 需要哪些扩展包?

您需要 IronPdf.Extensions.Maui 包和主 IronPdf 包。该扩展包专门将 MAUI 基于 XAML 的 UI 框架与 IronPDF 的 PDF 生成功能连接起来,处理将 MAUI ContentPage 对象转换为可渲染为 PDF 的 HTML。

如何用 C# 将 MAUI XAML 页面转换为 PDF?

使用 IronPDF 将 MAUI XAML 页面转换为 PDF 非常简单。只需一行代码,您就可以使用 RenderContentPageToPdf 方法:var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf().SaveAs('page.pdf').这就利用了 IronPDF 的 Chrome 渲染引擎,将 XAML 布局准确地转化为 PDF 格式。

在 MAUI 应用程序中生成 PDF 的基本步骤是什么?

基本工作流程包括1)下载用于 MAUI 的 IronPDF C# 库;2)修改 MainPage.xaml.cs 文件以使用 RenderContentPageToPdf 方法;3)更新 MainPage.xaml 中的按钮以触发该函数;4)导出 PDF 文档或在 MAUI 应用程序中查看该文档;5)可选择下载 IronPDF 的示例 MAUI 项目以快速入门。

PDF 转换过程使用什么渲染引擎?

IronPDF 在 MAUI 应用程序中的 PDF 生成过程中使用其 Chrome 渲染引擎。这可确保将您的 XAML 布局准确地翻译成 PDF 格式,同时保持 MAUI 应用程序用户界面的视觉完整性。

Curtis Chau
技术作家

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

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

准备开始了吗?
Nuget 下载 17,012,929 | 版本: 2025.12 刚刚发布