Cómo convertir XAML a PDF en MAUI
.NET MAUI (Interfaz de usuario de aplicaciones multiplataforma) es un marco multiplataforma para desarrollar aplicaciones nativas para dispositivos. Es una extensión de Xamarin.Forms y forma parte del ecosistema unificado de .NET 6. Permite a los desarrolladores de aplicaciones .NET crear aplicaciones para plataformas de escritorio, web y móviles utilizando componentes de interfaz de usuario comunes y un único código base. MAUI también te permite añadir código y recursos específicos de la plataforma cuando sea necesario.
IronPdf permite generar documentos PDF a partir de páginas MAUI, haciendo posible la creación de archivos/páginas PDF en estas aplicaciones. Sin embargo, IronPdf no es compatible actualmente con plataformas móviles.
Cómo convertir XAML a PDF en MAUI
- Descargar la biblioteca IronPdf C# para MAUI
- Modifica el archivo MainPage.xaml.cs para usar el método
RenderContentPageToPdf
- Actualiza el botón en el archivo MainPage.xaml para activar la nueva función
- Exportar el documento PDF o verlo en la aplicación MAUI utilizando un visor de PDF
- Descargar el proyecto MAUI de muestra para un inicio rápido
Paquete de extensión IronPdf
El paquete IronPdf.Extensions.Maui es la extensión del paquete principal IronPdf. Al tratarse de una extensión, el paquete principal IronPdf sigue siendo necesario para convertir la página de contenido de una aplicación MAUI en un documento PDF.
PM > Install-Package IronPdf.Extensions.Maui
Instalar con NuGet
Install-Package IronPdf.Extensions.Maui
Renderizar Página MAUI a PDF
Editar archivo MainPage.xaml.cs
- Vaya del archivo MainPage.xaml a su archivo de código, MainPage.xaml.cs.
Cambia la función llamada OnCounterClicked a PrintToPdf. Utilice el código de ejemplo que figura a continuación.
Para convertir su página MAUI a un PDF, utilice el método
RenderContentPageToPdf
. El método puede accederse instanciando la clase ChromePdfRenderer. Este método le proporcionará un objeto PdfDocument, que puede guardar o ver utilizando el métodoSaveAs
o un visor de PDF con Visualización de PDFs en MAUI.Atención
El métodoRenderContentPageToPdf
aún no admite la vinculación de datos.
: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
Además, como habrás notado, renderizar desde XAML también te da acceso completo a todas las funcionalidades disponibles en RenderingOptions. Esto incluye agregar encabezados y pies de página de texto y HTML. También puede estampar imágenes, añadir números de página e incluso personalizar el tamaño y el diseño de la página. Todas estas opciones están disponibles cuando se utiliza este método para crear un PDF.
Editar archivo MainPage.xaml
En el archivo MainPage.xaml, reemplaza la función predeterminada OnCounterClicked con la nueva función PrintToPdf. Al hacer clic en este botón se ejecutará el método PrintToPdf y se creará el 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" />
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<Button x:Name="PrintToPdfBtn" Text="Print to pdf" SemanticProperties.Hint="Click to print page as PDF" Clicked="PrintToPdf" HorizontalOptions="Center" />
Salida PDF
Antes de guardar su archivo PDF, puede realizar más cambios en él utilizando los métodos disponibles en PdfDocument. Puede combinar páginas, separarlas o rotarlas. También puedes agregar anotaciones y marcadores a tu PDF.
Descargar proyecto de aplicación .NET MAUI
Puedes descargar el código completo de esta guía. Viene como un archivo comprimido que puedes abrir en Visual Studio como un proyecto de aplicación .NET MAUI.