Affichage de PDFs dans MAUI pour C# .NET

Chaknith Bin
Chaknith Bin
septembre 4, 2023
Mise à jour janvier 13, 2025
Partager:
This article was translated from English: Does it need improvement?
Translated
View the article in English

Bannière du visualiseur IronPDF

À l'ère du développement multiplateforme, offrir aux utilisateurs la possibilité de visualiser des documents PDF directement dans votre application n'est pas seulement une commodité, mais une nécessité. Avec le IronPDF Viewer, vous pouvez intégrer la fonctionnalité de visualisation de PDF dans votre application MAUI.

Dans cet article, nous allons apprendre à intégrer IronPDF Viewer dans une application MAUI pour permettre aux utilisateurs de visualiser, enregistrer et imprimer des PDF.


Vue d'ensemble


Télécharger et installer la bibliothèque IronPDF Viewer

Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit.

Première étape :
green arrow pointer

Visual Studio - NuGet Package Manager

Dans Visual Studio, faites un clic droit sur l'explorateur de solutions de votre projet et sélectionnez Gérer les packages NuGet.... De là, vous pouvez rechercher IronPdf.Viewer.Maui et installer la dernière version dans votre solution. Alternativement, vous pouvez ouvrir la console du gestionnaire de packages NuGet en naviguant vers Outils > Gestionnaire de packages NuGet > Console du gestionnaire de packages et en entrant la commande suivante :

Install-Package IronPdf.Viewer.Maui

Intégrer IronPDF Viewer dans une application MAUI

Dans les sections suivantes, nous allons montrer comment intégrer IronPDF Viewer dans une application MAUI par défaut.

Mise en place

Avant d'ajouter IronPDF Viewer à votre projet MAUI, assurez-vous d'abord qu'il ne cible pas les plateformes iOS et Android. Vous pouvez vérifier cela en faisant un clic droit sur le fichier du projet et en sélectionnant Propriétés. Décochez les cases Cibler la plateforme iOS et Cibler la plateforme Android surlignées dans l'image ci-dessous si elles ne sont pas déjà décochées. Pour que cette modification soit appliquée avec succès, il se peut que vous deviez enregistrer le projet après avoir décoché la case et redémarrer Visual Studio.

Écran des propriétés

Après avoir déciblé les plateformes iOS et Android, allez dans votre fichier MauiProgram.cs et ajoutez le code suivant pour initialiser la visionneuse :

: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();
    }
}

Par défaut, le visualisateur IronPDF affiche une bannière en bas à droite de l'écran. Pour supprimer cette vue, ajoutez votre clé de licence IronPDF (ou Iron Suite) à ConfigureIronPdfView comme suit :

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-2.cs
.ConfigureIronPdfView("YOUR-LICENSE-KEY");

Ajouter une page de visualisation PDF

Dans cette section, nous allons apprendre à créer une page de visualisation de PDF, à intégrer IronPDF Viewer et à lui créer un onglet dans une application MAUI. Nous allons démontrer comment le faire avec un ContentPage en XAML et C#.

Les étapes

  1. Ajoutez une nouvelle page à votre projet en faisant un clic droit sur votre projet, puis naviguez vers Add > New Item...

    Ajouter un nouvel élément

  2. Accédez à la section .NET MAUI. Pour créer une page XAML, sélectionnez .NET MAUI ContentPage (XAML). Pour un fichier C#, sélectionnez .NET MAUI ContentPage (C#). Donnez à votre fichier le nom PdfViewerPage, puis cliquez sur Add.

    .NET MAUI `ContentPage`

  3. Dans le fichier XAML, ajoutez le code suivant et enregistrez :
<?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>
XML

Si vous avez créé un ContentPage de C# à la place, ajoutez le code suivant et enregistrez :

: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;
    }
}
  1. Dans votre fichier AppShell.xaml, ajoutez ce qui suit :
<?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>
XML
  1. Sauvegardez votre projet, puis compilez et exécutez. Vous devriez voir des onglets dans le coin supérieur gauche comme indiqué ci-dessous, et en cliquant sur l'onglet "PDF Viewer", vous ouvrirez la visionneuse IronPDF.

    Visionneuse par défaut IronPDF

Charger un PDF au démarrage

Au démarrage de l'application, IronPDF Viewer invitera l'utilisateur à ouvrir un PDF par défaut. Il est également possible d'ouvrir automatiquement un PDF au démarrage. Il existe trois façons de charger un PDF au démarrage : par un nom de fichier, par un tableau d'octets et par un flux.

Chargement par nom de fichier

Pour charger un PDF par nom de fichier, vous pouvez spécifier la source du fichier PDF dans la balise IronPdfView dans le fichier XAML. Un exemple de ceci est montré ci-dessous :

<?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>
XML

Alternativement, vous pouvez charger le PDF par nom de fichier en utilisant la méthode IronPdfViewSource.FromFile dans une ContentPage en 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");

Chargement à travers un tableau d'octets

Dans certains cas d'utilisation, il peut être souhaitable de charger un tableau d'octets d'un PDF. Cela n'est pas possible en XAML, mais l'est en C#. Vous pouvez y parvenir en utilisant simplement la méthode IronPdfViewSource.FromBytes. Un exemple d'utilisation de cette méthode est présenté ci-dessous :

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-5.cs
pdfView.Source = IronPdfViewSource.FromBytes(File.ReadAllBytes("~/Downloads/example.pdf"));

Chargement par le biais d'un cours d'eau

De même, il peut être plus souhaitable que les PDF soient chargés par le biais d'un flux dans certains cas d'utilisation. Cela n'est pas possible en XAML, mais l'est en C#. Vous pouvez y parvenir en utilisant simplement la méthode IronPdfViewSource.FromStream. Un exemple d'utilisation de cette méthode est présenté ci-dessous :

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-6.cs
pdfView.Source = IronPdfViewSource.FromStream(File.OpenRead("~/Downloads/example.pdf"));

Configurer la barre d'outils

Avec IronPDF Viewer, vous pouvez choisir les options à afficher dans la barre d'outils. Les options disponibles sont les suivantes :

  • Vue en miniature
  • Affichage du nom de fichier
  • Recherche de texte
  • Navigation par numéro de page
  • Zoom
  • Adaptation à la largeur
  • Adaptation à la taille
  • Rotation dans le sens des aiguilles d'une montre
  • Rotation dans le sens inverse des aiguilles d'une montre
  • Ouvrir un fichier
  • Télécharger le fichier
  • Imprimer le fichier
  • Afficher les annotations
  • Vue à deux pages

    Par défaut, IronPDF Viewer affiche la barre d'outils ci-dessous :

    Barre d'outils par défaut

    Dans la vue par défaut, les options d'affichage du nom de fichier, de recherche de texte et de rotation dans le sens inverse des aiguilles d'une montre sont toutes désactivées. Pour tout afficher, définissez le paramètre Option de la balise IronPdfView dans le XAML sur All :

<?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>
XML

Vous pouvez également réaliser la même chose en C# :

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-7.cs
pdfView.Options = IronPdfViewOptions.All;

Ce qui affichera ce qui suit :

Barre d'outils complète

Si vous ne souhaitez rien afficher, définissez l'option sur None. La barre d'outils n'apparaîtra pas si Options sont réglées ainsi :

Pas de barre d'outils

Vous pouvez choisir les options spécifiques que vous souhaitez afficher. Par exemple, si vous souhaitez afficher uniquement les options de vignette et d'ouverture de fichier, modifiez le paramètre Options de IronPdfView en XAML comme ceci :

<ipv:IronPdfView x:Name="pdfView" Options="Thumbs, Open"/>
XML

De même, en C# :

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-8.cs
pdfView.Options = IronPdfViewOptions.Thumbs | IronPdfViewOptions.Open;

Ce qui affichera ce qui suit :

Barre d'outils avec des options de vignettes et d'ouverture de fichier

Conclusion

Dans ce tutoriel, nous avons appris à intégrer IronPDF Viewer dans une application MAUI et à personnaliser sa barre d'outils en fonction de vos besoins.

Cette visionneuse est fournie avec notre produit IronPDF. Si vous souhaitez faire une demande de fonctionnalité ou avez des questions générales sur IronPDF Viewer (ou IronPDF), veuillez contacter notre équipe de support. Nous nous ferons un plaisir de vous aider.

Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.