Ver PDFs en MAUI para C# .NET
En la era moderna del desarrollo multiplataforma, ofrecer a los usuarios la posibilidad de ver documentos PDF directamente en su aplicación no es sólo una comodidad, sino una necesidad. Con IronPDF Viewer, puedes incrustar la funcionalidad de visualización de PDF en tu aplicación MAUI.
En este artículo, aprenderemos a integrar IronPDF Viewer dentro de una aplicación MAUI para permitir a los usuarios la posibilidad de ver, guardar e imprimir PDFs.
Visión general
Cómo ver PDFs en C# .NET MAUI APPs
- Descargue e instale la biblioteca IronPDF Viewer
- Integrar IronPDF Viewer en una aplicación MAUI
- Añadir una página de visor de PDF añadiendo XAML o C# ContentPage
- Cargar un PDF al iniciarse por nombre de archivo, matriz de bytes y secuencia
- Configurar la barra de herramientas
Descargue e instale la biblioteca del visor IronPDF
Visual Studio - Gestor de paquetes NuGet
En Visual Studio, haz clic con el botón derecho del ratón en el explorador de soluciones de tu proyecto y selecciona Manage NuGet Packages...
, Desde ahí, puedes buscar IronPdf.Viewer.Maui e instalar la última versión en tu solución. Alternativamente, puede abrir la consola de NuGet Package Manager navegando a Herramientas > NuGet Packet Manager > Package Manager Console
e introduciendo el siguiente comando:
Install-Package IronPdf.Viewer.Maui
Instalar con NuGet
Instalar-Paquete IronPdf.Viewer.Maui
Descargar DLL
Instalar manualmente en su proyecto
Integrar IronPDF Viewer en una aplicación MAUI
En las siguientes secciones, demostraremos cómo integrar IronPDF Viewer en una aplicación MAUI predeterminada.
Configurar
Antes de añadir IronPDF Viewer a tu proyecto MAUI, asegúrate primero de que no está orientado a las plataformas iOS y Android. Puede comprobarlo haciendo clic con el botón derecho en el archivo del proyecto y seleccionando Propiedades. Desmarque las casillas de verificación Objetivo la plataforma iOS y Objetivo la plataforma Android subrayadas en la imagen de abajo si aún no están desmarcadas. Para que este cambio se aplique correctamente, es posible que tenga que guardar el proyecto después de desmarcar y reiniciar Visual Studio.
Después de desobjetivar las plataformas iOS y Android, ve a tu archivo MauiProgram.cs y añade el siguiente código para inicializar el visor:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-1.cs
using IronPdf.Viewer.Maui;
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
// other configuration options ...
.ConfigureIronPdfView(); // configure the viewer on app start-up
return builder.Build();
}
}
Imports IronPdf.Viewer.Maui
Public Module MauiProgram
Public Function CreateMauiApp() As MauiApp
Dim builder = MauiApp.CreateBuilder()
builder.UseMauiApp(Of App)().ConfigureIronPdfView() ' configure the viewer on app start-up
Return builder.Build()
End Function
End Module
Por defecto, el Visor IronPDF mostrará un banner en la parte inferior derecha de la vista. Para eliminar esta vista, añada su IronPDF (o Iron Suite) a ConfigureIronPdfView
de esta manera:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-2.cs
.ConfigureIronPdfView("YOUR-LICENSE-KEY");
IRON VB CONVERTER ERROR developers@ironsoftware.com
Añadir una página de visor de PDF
En esta sección, aprenderemos a crear una página de Visor PDF, integrar IronPDF Viewer y crear una pestaña para él en una aplicación MAUI. Demostraremos cómo hacer esto tanto con XAML como con C# ContentPage
.
Pasos
Para añadir una nueva página a su proyecto, haga clic con el botón derecho del ratón en el proyecto y vaya a
Añadir > Nuevo elemento...
.Navega a la sección
.NET MAUI
. Para crear una página XAML, selecciona.NET MAUI ContentPage (XAML)
. Para un archivo C#, selecciona.NET MAUI ContentPage (C#)
. Dale a tu archivo el nombre PdfViewerPage, y haz clic enAdd
.- En el archivo XAML, añade el siguiente código y guarda:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...
xmlns:ipv="clr-namespace:IronPdf.Viewer.Maui;assembly=IronPdf.Viewer.Maui"
...>
<ipv:IronPdfView x:Name="pdfView"/>
</ContentPage>
Si en cambio has creado una ContentPage
en C#, añade el siguiente código en su lugar y guarda:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-3.cs
using IronPdf.Viewer.Maui;
public class MainPage : ContentPage
{
private readonly IronPdfView pdfView;
public MainPage()
{
InitializeComponent();
this.pdfView = new IronPdfView { Options = IronPdfViewOptions.All };
Content = this.pdfView;
}
}
Imports IronPdf.Viewer.Maui
Public Class MainPage
Inherits ContentPage
Private ReadOnly pdfView As IronPdfView
Public Sub New()
InitializeComponent()
Me.pdfView = New IronPdfView With {.Options = IronPdfViewOptions.All}
Content = Me.pdfView
End Sub
End Class
- En su archivo AppShell.xaml, añada lo siguiente:
<?xml version="1.0" encoding="UTF-8" ?>
<Shell ...
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
...>
<TabBar x:Name="AppTabBar">
<Tab Title="Home">
<ShellContent ContentTemplate="{DataTemplate local:MainPage}" Route="MainPage"/>
</Tab>
<Tab Title="PDF Viewer">
<ShellContent ContentTemplate="{DataTemplate local:PdfViewerPage}" Route="PDFViewer"/>
</Tab>
</TabBar>
</Shell>
Guarde el proyecto, compílelo y ejecútelo. Debería ver pestañas en la esquina superior izquierda, como se muestra a continuación, y al hacer clic en la pestaña "Visor de PDF" se abrirá el Visor IronPDF.
Cargar un PDF al arrancar
Al iniciar la aplicación, IronPDF Viewer pedirá al usuario que abra un PDF de forma predeterminada. También es posible que abra un PDF automáticamente al iniciarse. Hay tres formas de cargar un PDF al iniciarse: mediante un nombre de archivo, a través de una matriz de bytes y a través de un flujo.
Cargar por nombre de archivo
Para cargar un PDF por nombre de archivo, puede especificar el origen del archivo PDF en la etiqueta IronPdfView
del archivo XAML. A continuación se muestra un ejemplo:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...
xmlns:ipv="clr-namespace:IronPdf.Viewer.Maui;assembly=IronPdf.Viewer.Maui"
...>
<ipv:IronPdfView Source="C:/path/to/my/example.pdf" />
</ContentPage>
También puede cargar el PDF por nombre de archivo utilizando el método IronPdfViewSource.FromFile
en una ContentPage
de C#:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-4.cs
// We assume an IronPdfView instance is created previously called pdfView
pdfView.Source = IronPdfViewSource.FromFile("C:/path/to/my/example.pdf");
' We assume an IronPdfView instance is created previously called pdfView
pdfView.Source = IronPdfViewSource.FromFile("C:/path/to/my/example.pdf")
Carga a través de matriz de bytes
Para algunos casos de uso, puede ser conveniente cargar una matriz de bytes de un PDF. Esto no es posible desde XAML, pero sí en C#. Para ello, basta con utilizar el método IronPdfViewSource.FromBytes
. A continuación se muestra un ejemplo de cómo utilizar este método:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-5.cs
pdfView.Source = IronPdfViewSource.FromBytes(File.ReadAllBytes("~/Downloads/example.pdf"));
pdfView.Source = IronPdfViewSource.FromBytes(File.ReadAllBytes("~/Downloads/example.pdf"))
Carga a través de la corriente
Del mismo modo, puede ser más conveniente que los PDF se carguen a través de un flujo en algunos casos de uso. Esto no es posible desde XAML, pero sí en C#. Para ello, basta con utilizar el método IronPdfViewSource.FromStream
. A continuación se muestra un ejemplo de cómo utilizar este método:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-6.cs
pdfView.Source = IronPdfViewSource.FromStream(File.OpenRead("~/Downloads/example.pdf"));
pdfView.Source = IronPdfViewSource.FromStream(File.OpenRead("~/Downloads/example.pdf"))
Configurar la barra de herramientas
Con IronPDF Viewer, puede elegir qué opciones mostrar en la barra de herramientas. Las opciones disponibles son:
- Vista en miniatura
- Visualización del nombre del archivo
- Búsqueda de texto
- Navegación por el número de página
- Zoom
- Ajustar a la anchura
- Ajuste a la altura
- Girar en el sentido de las agujas del reloj
- Girar en sentido antihorario
- Abrir expediente
- Descargar archivo
- Imprimir archivo
- Mostrar anotaciones
Vista de dos páginas
Por defecto, IronPDF Viewer mostrará la barra de herramientas que se muestra a continuación:
En la vista por defecto, las opciones de visualización de nombre de archivo, búsqueda de texto y rotación en sentido contrario a las agujas del reloj están desactivadas. Para mostrarlo todo, establece el parámetro
Option
de la etiquetaIronPdfView
en el XAML para que seaAll
:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...
xmlns:ipv="clr-namespace:IronPdf.Viewer.Maui;assembly=IronPdf.Viewer.Maui"
...>
<ipv:IronPdfView x:Name="pdfView" Options="All"/>
</ContentPage>
Alternativamente, podría conseguir lo mismo en C#:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-7.cs
pdfView.Options = IronPdfViewOptions.All;
pdfView.Options = IronPdfViewOptions.All
Que mostrará lo siguiente:
Si no desea mostrar nada, configure la opción como Ninguna
. La barra de herramientas no aparecerá si Opciones
se establece en esta opción:
Puede elegir las opciones específicas que desea mostrar. Por ejemplo, si quieres mostrar sólo las opciones de miniatura y abrir archivo, modifica el parámetro Options
de IronPdfView
en XAML de la siguiente manera:
<ipv:IronPdfView x:Name="pdfView" Options="Thumbs, Open"/>
Del mismo modo, en C#:
:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-8.cs
pdfView.Options = IronPdfViewOptions.Thumbs | IronPdfViewOptions.Open;
pdfView.Options = IronPdfViewOptions.Thumbs Or IronPdfViewOptions.Open
Que mostrará lo siguiente:
Conclusión
En este tutorial, aprendimos a integrar IronPDF Viewer en una aplicación MAUI y a personalizar su barra de herramientas según tus necesidades.
Este visor viene con nuestro producto IronPDF. Si desea solicitar alguna función o tiene alguna pregunta general sobre IronPDF Viewer (o IronPDF)por favor contacte con nuestro equipo de asistencia. Estaremos encantados de ayudarle.