UTILISATION D'IRONPDF

Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants)

Cet article explique comment utiliser IronPDF pour enregistrer des fichiers PDF à partir d'une application Windows Forms ou d'une application .NET.

La bibliothèque IronPDF est une bibliothèque .NET qui fournit des classes et des méthodes faciles à utiliser pour générer et travailler avec des fichiers PDF dans des applications C#. Il permet aux développeurs de créer, de modifier et d'enregistrer des fichiers PDF avec seulement quelques lignes de code, ce qui en fait un excellent choix pour les applications Windows Forms.

Étape 1 : Créer une nouvelle application Windows Forms

Tout d'abord, créez un nouveau projet Visual Studio. Voici les étapes à suivre pour créer une nouvelle application C# Windows Forms dans Visual Studio 2022

  1. Ouvrez Visual Studio 2022 comme indiqué ci-dessous.

    Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 1 : Visual Studio 2022

    Visual Studio 2022

  2. Cliquez sur "Créer un nouveau projet" sur la page d'accueil ou allez dans "Fichier" > "Nouveau" > "Projet".

  3. Dans la boîte de dialogue "Créer un nouveau projet", sélectionnez "Windows Forms App" ou "Windows Forms App (.NET Framework)" sous "Créer un nouveau projet" comme indiqué ci-dessous.

    Comment sauvegarder un fichier PDF en C# (Tutoriel pour débutants), Figure 2 : Nouvelle application Forms

    Nouvelle application de formulaires

  4. Saisissez un nom pour votre projet et choisissez un emplacement pour l'enregistrer.

    Comment sauvegarder un fichier PDF en C# (Tutoriel pour débutants), Figure 3 : Emplacement du projet

    Emplacement du projet

  5. Choisissez .NET Framework. Sélectionnez .NET 7.0 dans le menu déroulant.

  6. Cliquez sur le bouton Créer.

    Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 4 : Informations supplémentaires

    Informations supplémentaires

  7. Visual Studio crée un nouveau projet d'application C# Windows Forms pour vous, avec un formulaire par défaut nommé "Form1" ajouté au projet comme indiqué ci-dessous.

    Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 5 : Projet Form1

    Projet Form1

    C'est tout ! Nous allons maintenant commencer à construire l'application Windows Forms à l'aide du concepteur, en ajoutant des contrôles et des fonctionnalités pour créer et enregistrer un document PDF.

Étape 2 : Conception du formulaire

Vous pouvez concevoir le formulaire selon vos préférences. Ce tutoriel va créer un design minimaliste en ajoutant deux étiquettes, une zone de texte riche et deux boutons.

Comment enregistrer un fichier PDF en C# (Tutoriel débutant), Figure 6 : Ajouter des boutons au formulaire

Ajouter des boutons au formulaire

Étape 3 : Installer IronPDF

L'étape suivante consiste à installer IronPDF dans ce projet afin d'utiliser ses riches fonctionnalités.

IronPDF peut être installé à l'aide du gestionnaire de paquets NuGet dans Visual Studio. Vous pouvez accéder à la console du gestionnaire de packages NuGet en allant dans Outils > Gestionnaire de packages NuGet > Console du gestionnaire de packages.

Tapez la commande suivante et appuyez sur Entrée :

Install-Package IronPdf

Cette commande télécharge et installe le paquetage IronPDF dans votre projet. Une fois installé, nous pouvons commencer à utiliser IronPDF.

Ecrire du code pour créer et sauvegarder un fichier PDF

Pour commencer le flux, écrivez deux méthodes : Save_Click et getFilePath dans la classe Form1.cs. Ces méthodes sont utilisées ensemble pour enregistrer le contenu d'une zone de texte sous forme de fichier PDF en utilisant la bibliothèque ChromePdfRenderer Class. Passons en revue chaque méthode pour en comprendre le fonctionnement.

Méthode Save_Click (Créer un document PDF)

La méthode suivante est un gestionnaire d'événement pour un événement de clic sur un bouton. L'objectif de cette méthode est d'enregistrer le contenu d'une zone de texte dans un fichier PDF.

private void Save_Click(object sender, EventArgs e)
{
    // Get the file path to save the PDF file.
    string filename = getFilePath();

    // If the file path is not empty or null, proceed with saving the PDF file.
    if (!String.IsNullOrEmpty(filePath))
    {
        // Create a new instance of the ChromePdfRenderer class.
        var renderer = new ChromePdfRenderer();

        // Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
        var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);

        // Save the PDF document to the specified file path using the SaveAs method.
        pdfDocument.SaveAs(filename);

        // Show a message box to indicate that the PDF file has been saved successfully.
        MessageBox.Show("PDF has been saved Successfully!");
    }
}
private void Save_Click(object sender, EventArgs e)
{
    // Get the file path to save the PDF file.
    string filename = getFilePath();

    // If the file path is not empty or null, proceed with saving the PDF file.
    if (!String.IsNullOrEmpty(filePath))
    {
        // Create a new instance of the ChromePdfRenderer class.
        var renderer = new ChromePdfRenderer();

        // Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
        var pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text);

        // Save the PDF document to the specified file path using the SaveAs method.
        pdfDocument.SaveAs(filename);

        // Show a message box to indicate that the PDF file has been saved successfully.
        MessageBox.Show("PDF has been saved Successfully!");
    }
}
Private Sub Save_Click(ByVal sender As Object, ByVal e As EventArgs)
	' Get the file path to save the PDF file.
	Dim filename As String = getFilePath()

	' If the file path is not empty or null, proceed with saving the PDF file.
	If Not String.IsNullOrEmpty(filePath) Then
		' Create a new instance of the ChromePdfRenderer class.
		Dim renderer = New ChromePdfRenderer()

		' Render the file contents of the text box as a PDF document using the ChromePdfRenderer.
		Dim pdfDocument = renderer.RenderHtmlAsPdf(pdfContent.Text)

		' Save the PDF document to the specified file path using the SaveAs method.
		pdfDocument.SaveAs(filename)

		' Show a message box to indicate that the PDF file has been saved successfully.
		MessageBox.Show("PDF has been saved Successfully!")
	End If
End Sub
$vbLabelText   $csharpLabel

Voici une description étape par étape de cette méthode :

  1. La méthode appelle la méthode getFilePath pour obtenir le chemin d'accès où le fichier PDF sera enregistré.

  2. Si le chemin d'accès au fichier n'est pas vide ou nul, la méthode procède à l'enregistrement du fichier PDF.

  3. La méthode crée une nouvelle instance de la classe ChromePdfRenderer. Il s'agit d'une bibliothèque qui permet de convertir du contenu HTML en documents PDF à l'aide du moteur du navigateur Google Chrome.

  4. La méthode utilise ensuite la méthode RenderHtmlAsPdf de la classe ChromePdfRenderer pour convertir le contenu HTML de la boîte de texte pdfContent en document PDF. Ce document PDF est attribué à la Variable PdfDocument.

  5. La méthode enregistre le document PDF vers le chemin de fichier spécifié en utilisant la Méthode SaveAs de la classe PdfDocument.

  6. Enfin, la méthode affiche une boîte de message indiquant que le fichier PDF a été enregistré avec succès.

méthode getFilePath (Sauvegarde des fichiers PDF)

Cette méthode est utilisée pour afficher un SaveFileDialog à l'utilisateur afin de sélectionner un chemin de fichier où le fichier PDF sera enregistré.

public string getFilePath()
{
    // Create a new instance of the SaveFileDialog class.
    SaveFileDialog saveFileDialog1 = new SaveFileDialog();

    // Set the initial directory where the SaveFileDialog will open.
    saveFileDialog1.InitialDirectory = @"D:\";

    // Set the title of the SaveFileDialog.
    saveFileDialog1.Title = "Save the PDF Files";

    // Set the SaveFileDialog to check if the specified path exists.
    saveFileDialog1.CheckPathExists = true;

    // Set the default extension for the file type.
    saveFileDialog1.DefaultExt = ".pdf";

    // Set the filter to display only PDF files or all files.
    saveFileDialog1.Filter = "PDF files (*.pdf)
*.pdf
All files (*.*)
*.*";

    // Set the filter index to display the PDF filter as the default.
    saveFileDialog1.FilterIndex = 2;

    // Set the RestoreDirectory property to true so that the SaveFileDialog
    // restores the current directory before closing.
    saveFileDialog1.RestoreDirectory = true;

    // Show the SaveFileDialog and get the result.
    if (saveFileDialog1.ShowDialog() == DialogResult.OK)
    {
        // If the user clicked the OK button in the SaveFileDialog, return the selected file path.
        return saveFileDialog1.FileName;
    }
    // If the user did not click the OK button, return an empty string.
    return "";
}
public string getFilePath()
{
    // Create a new instance of the SaveFileDialog class.
    SaveFileDialog saveFileDialog1 = new SaveFileDialog();

    // Set the initial directory where the SaveFileDialog will open.
    saveFileDialog1.InitialDirectory = @"D:\";

    // Set the title of the SaveFileDialog.
    saveFileDialog1.Title = "Save the PDF Files";

    // Set the SaveFileDialog to check if the specified path exists.
    saveFileDialog1.CheckPathExists = true;

    // Set the default extension for the file type.
    saveFileDialog1.DefaultExt = ".pdf";

    // Set the filter to display only PDF files or all files.
    saveFileDialog1.Filter = "PDF files (*.pdf)
*.pdf
All files (*.*)
*.*";

    // Set the filter index to display the PDF filter as the default.
    saveFileDialog1.FilterIndex = 2;

    // Set the RestoreDirectory property to true so that the SaveFileDialog
    // restores the current directory before closing.
    saveFileDialog1.RestoreDirectory = true;

    // Show the SaveFileDialog and get the result.
    if (saveFileDialog1.ShowDialog() == DialogResult.OK)
    {
        // If the user clicked the OK button in the SaveFileDialog, return the selected file path.
        return saveFileDialog1.FileName;
    }
    // If the user did not click the OK button, return an empty string.
    return "";
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Voici une description étape par étape de cette méthode :

  1. La méthode crée une nouvelle instance de la classe SaveFileDialog. Cette classe fait partie de la bibliothèque Windows Forms et fournit une boîte de dialogue qui permet à l'utilisateur de sélectionner un chemin d'accès où le fichier PDF sera enregistré.

  2. La méthode définit plusieurs propriétés de l'objet SaveFileDialog pour personnaliser son comportement. La propriété InitialDirectory définit le répertoire où la boîte de dialogue s'ouvrira en premier. La propriété Title définit le titre de la boîte de dialogue. La propriété CheckPathExists spécifie si la boîte de dialogue doit vérifier si le chemin spécifié existe. La propriété DefaultExt définit l'extension de fichier par défaut pour le type de fichier. La propriété Filter définit les filtres de type de fichier qui sont affichés dans la boîte de dialogue. La propriété FilterIndex définit le filtre par défaut à afficher. Enfin, la propriété RestoreDirectory spécifie si la boîte de dialogue doit restaurer le répertoire actuel avant de se fermer.

  3. La méthode affiche le SaveFileDialog en appelant sa méthode ShowDialog. Cette méthode affiche la boîte de dialogue et renvoie une valeur DialogResult indiquant si l'utilisateur a cliqué sur le bouton "OK" ou sur le bouton Annuler.

  4. Si l'utilisateur clique sur le bouton "OK", la méthode retourne le chemin du fichier que l'utilisateur a sélectionné en accédant à la propriété FileName du SaveFileDialog.

  5. Si l'utilisateur clique sur le bouton "Annuler" ou ferme la boîte de dialogue, la méthode renvoie une chaîne vide.

    Exécutons le projet et voyons le résultat. Exécutez le projet et le formulaire suivant s'ouvrira.

    Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 7 : Exécution du projet Windows Forms

    Exécution du projet Windows Forms

    Saisissez le contenu de votre PDF et cliquez sur le bouton "Enregistrer" comme indiqué ci-dessous.

    Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 8 : Boîte de dialogue Enregistrer

    Boîte de dialogue Enregistrer

    Le PDF suivant est créé.

    Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 9 : fichier PDF créé

    Fichier PDF créé

    IronPDF propose un moyen simple de convertir du contenu HTML en documents PDF et de les enregistrer dans un chemin de fichier sélectionné par l'utilisateur en utilisant la classe ChromePdfRenderer et la boîte de dialogue SaveFileDialog.

Conclusion

L'enregistrement de fichiers PDF à partir d'une application Windows Forms est une exigence courante, et IronPDF fournit une méthode facile à utiliser et flexible pour accomplir cette tâche. Cet article a montré comment utiliser IronPDF pour créer, ajouter du contenu et enregistrer des fichiers dans une application Windows Forms C#. Avec IronPDF, les développeurs peuvent générer des fichiers PDF de haute qualité à partir de leurs applications en quelques lignes de code seulement.

IronPDF offre une gamme de fonctionnalités telles que le Tutoriel de Conversion HTML en PDF, Exemple de Code de Fusion des PDF, le Guide de Scission des Pages PDF, et le Guide sur l'Extraction de Texte et d'Images, et plus encore. IronPDF est gratuit pour le développement et disponible sous une licence commerciale avec un essai gratuit, ce qui permet aux développeurs de l'utiliser dans des projets commerciaux et inclut un support dédié et des mises à jour. De plus, IronPDF fait partie de l'Iron Suite, qui est un ensemble de composants logiciels .NET comprenant des bibliothèques pour la génération de code-barres (IronBarcode), la création, la lecture et la manipulation de documents Excel (IronXL), le travail avec l'extraction de texte (IronOCR), et plus encore. L'achat de la suite Iron complète est une solution rentable car vous pouvez obtenir les cinq produits pour le prix de deux.

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.
< PRÉCÉDENT
Comment fusionner des fichiers PDF en VB.NET
SUIVANT >
Comment afficher un PDF à partir d'un tableau d'octets dans Blazor ?