在 C# MAUI 中將 XAML 轉換為 PDF
IronPDF 讓您只需幾行程式碼,即可在 .NET MAUI 應用程式中將 XAML 頁面轉換為 PDF。 透過使用 RenderContentPageToPdf 方法,您可以將 MAUI 應用程式的使用者介面轉換為適用於桌面及網頁平台的 Professional PDF 文件。
.NET MAUI(多平台應用程式使用者介面)是一個用於建構原生裝置應用程式的跨平台框架。 它基於 Xamarin.Forms 並屬於統一的 .NET 6 生態系統。 它讓 .NET 應用程式開發人員能夠使用通用的 UI 元件和單一程式碼庫,為桌面、網頁和行動平台建立應用程式。 MAUI 亦允許您在必要時加入特定平台的程式碼與資源。
IronPDF 讓您能從 MAUI 頁面生成 PDF 文件,使在這些應用程式中建立 PDF 檔案/頁面成為可能。 無論您是在 Windows 還是 macOS 上進行開發,IronPDF 都能提供一致的 PDF 生成功能。 然而,IronPDF 目前不支援行動平台。
MAUI 應用程式中的 PDF 生成流程採用 IronPDF 的 Chrome 渲染引擎,確保您的 XAML 版面配置能精確轉換為 PDF 格式。 這使其非常適合用於生成報告、發票,或任何需要保留您的 MAUI 應用程式使用者介面視覺完整性的文件。
快速入門:在 .NET MAUI 中使用 IronPDF 將 XAML 轉換為 PDF
using IronPDF 在 .NET MAUI 中將您的 XAML 頁面轉換為 PDF。 只需幾行程式碼,您就能將 MAUI 應用程式的內容轉為專業級的 PDF 文件。 本指南提供了一個簡明範例,讓您能快速上手,並運用 IronPDF 高效的渲染功能。 請繼續閱讀,了解如何將 PDF 生成功能無縫整合至您的桌面及網頁應用程式中。
var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf<MainPage,App>().SaveAs("page.pdf");
var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf<MainPage,App>().SaveAs("page.pdf");
簡化工作流程(5 個步驟)
- 下載適用於 MAUI 的 IronPDF C# 函式庫
- 修改
MainPage.xaml.cs檔案,改為使用RenderContentPageToPdf方法 - 更新
MainPage.xaml檔案中的按鈕,以觸發新功能 - 匯出 PDF 文件,或透過 PDF 檢視器在 MAUI 應用程式中檢視
- 下載 MAUI 範例專案以快速上手
使用 IronPDF 與 MAUI 時,我需要哪些擴充套件?
IronPdf.Extensions.Maui 套件是 IronPdf 主套件的擴充套件。 由於這是個擴充套件,因此仍需 IronPdf 主套件,才能將 MAUI 應用程式的內容頁面渲染為 PDF 文件。 此擴充套件專門用於彌合 MAUI 基於 XAML 的 UI 框架與 IronPDF 的 PDF 生成功能之間的差距。
此擴充套件負責將 MAUI ContentPage 物件轉換為可渲染為 PDF 的 HTML。 它能保留您的 MAUI 頁面的版面配置與樣式,同時提供 IronPDF 的所有進階功能,例如自訂邊距、自訂紙張尺寸以及 PDF 壓縮。
Install-Package IronPdf.Extensions.Maui
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》中的 PDF 檢視器來儲存或檢視該物件。
ChromePdfRenderer 類別透過其 RenderingOptions 屬性提供廣泛的自訂選項。 您可以設定頁面邊距、紙張方向、啟用 JavaScript 執行,以及更多功能。 這些選項可確保您的 PDF 輸出完全符合您的需求。
:path=/static-assets/pdf/content-code-examples/how-to/xaml-to-pdf-maui-mainpage-xaml-cs.cs
using IronPdf.Extensions.Maui;
namespace mauiSample;
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
private void PrintToPdf(object sender, EventArgs e)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Apply HTML header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
HtmlFragment = "<h1>Header</h1>",
};
// Render PDF from Maui Page
PdfDocument pdf = renderer.RenderContentPageToPdf<MainPage, App>().Result;
pdf.SaveAs(@"C:\Users\lyty1\Downloads\contentPageToPdf.pdf");
}
}
Imports IronPdf.Extensions.Maui
Namespace mauiSample
Partial Public Class MainPage
Inherits ContentPage
Public Sub New()
InitializeComponent()
End Sub
Private Sub PrintToPdf(ByVal sender As Object, ByVal e As EventArgs)
Dim renderer As New ChromePdfRenderer()
' Apply HTML header
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {.HtmlFragment = "<h1>Header</h1>"}
' Render PDF from Maui Page
Dim pdf As PdfDocument = renderer.RenderContentPageToPdf(Of MainPage, App)().Result
pdf.SaveAs("C:\Users\lyty1\Downloads\contentPageToPdf.pdf")
End Sub
End Class
End Namespace
此外,您可能已注意到,透過 XAML 渲染還能讓您完全使用 RenderingOptions 中所有可用的功能。 這包括添加文字及 HTML 頁首與頁尾。 您還可為圖片加蓋水印、添加頁碼,甚至自訂頁面的尺寸與版面配置。 使用此方法建立 PDF 時,所有這些選項皆可使用。
RenderContentPageToPdf 方法預設為非同步,並會傳回一個 Task<PdfDocument>。 這使得 PDF 生成能夠以非阻塞方式進行,在處理複雜版面配置或同時生成多個 PDF 時特別有用。 此方法會自動將 XAML 視覺元素轉換為對應的 PDF 格式,並完整保留顏色、字型及版面結構。
XAML 檔案需要進行哪些變更?
在 MainPage.xaml 檔案中,將預設的 OnCounterClicked 函式替換為新的 PrintToPdf 函式。 點擊此按鈕將執行 PrintToPdf 方法並建立 PDF 檔案。 透過這項簡單的修改,您的 MAUI 應用程式只需極少的程式碼變更,即可轉變為 PDF 產生器。
<Button
x:Name="PrintToPdfBtn"
Text="Print to pdf"
SemanticProperties.Hint="Click to print page as PDF"
Clicked="PrintToPdf"
HorizontalOptions="Center" />
<Button
x:Name="PrintToPdfBtn"
Text="Print to pdf"
SemanticProperties.Hint="Click to print page as PDF"
Clicked="PrintToPdf"
HorizontalOptions="Center" />
該按鈕可使用標準的 MAUI 樣式屬性進行樣式設定,您還可以在 PDF 生成期間添加額外的視覺回饋,例如載入指示器。 這能確保在 PDF 建立過程中提供流暢的使用者體驗。
生成的 PDF 檔案會是什麼樣子?
在儲存 PDF 檔案之前,您可以利用 PdfDocument 提供的功能對其進行更多修改。 您可以合併頁面、拆分頁面或旋轉頁面。 您也可以在 PDF 中添加註解和書籤。 此外,您可設定 PDF 元資料(例如作者、標題和關鍵字),以改善文件的組織與可搜尋性。
生成的 PDF 將完整保留您的 MAUI 頁面的視覺層級與樣式,包括字型、顏色及版面配置規範。 這使其非常適合用於製作應用程式畫面的可列印版本,或根據應用程式的使用者介面生成報告。
哪裡可以下載完整的 MAUI 範例專案?
您可以下載本指南的完整程式碼。該檔案為 ZIP 檔,您可在 Visual Studio 中將其開啟為 .NET MAUI App 專案。 範例專案包含所有必要的依賴項,並展示將 IronPDF 整合至您的 MAUI 應用程式的最佳實務。
範例專案已設定為可在 Windows 和 macOS 桌面平台運作,展現 MAUI 與 IronPDF 的跨平台能力。 內容包含各種 PDF 生成情境的範例,並示範如何處理不同的頁面版面配置與內容類型。
請前往我們的教學頁面探索更多可能性:轉換 PDF。 您可能也有興趣參考我們的 PDF 壓縮指南,以優化用於網路發佈的 PDF 檔案;或瞭解如何在 Blazor Servers 中建立 PDF,以因應基於網路的 PDF 生成情境。
常見問題
什麼是 .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?
using 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 應用程式中採用其 Chrome 渲染引擎進行 PDF 生成。這確保您的 XAML 佈局能精確轉換為 PDF 格式,同時保留 MAUI 應用程式使用者介面的視覺完整性。

