Comment enregistrer un fichier PDF en C# (Tutoriel Débutant)
Cet article explorera comment utiliser IronPDF pour sauvegarder des fichiers PDF à partir d'une application Windows Forms ou de toute application .NET.
La bibliothèque IronPDF est une bibliothèque .NET qui fournit des classes et méthodes faciles à utiliser pour générer et travailler avec des fichiers PDF dans les applications C#. Elle permet aux développeurs de créer, modifier et sauvegarder 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 pour créer une nouvelle application C# Windows Forms dans Visual Studio 2022
-
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
- Cliquez sur "Créer un nouveau projet" sur la page de démarrage ou allez dans "Fichier" > "Nouveau" > "Projet".
-
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 enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 2 : Nouvelle application de formulaires Nouvelle application Forms
-
Entrez un nom pour votre projet et choisissez un emplacement pour le sauvegarder.
Emplacement du projet - Choisissez .NET Framework. Sélectionnez .NET 7.0 dans le menu déroulant.
-
Cliquez sur le bouton Créer.
Informations supplémentaires -
Visual Studio créera 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
Et voilà ! Nous allons maintenant commencer à construire l'application Windows Forms en utilisant le concepteur, en ajoutant des contrôles et des fonctionnalités pour créer et sauvegarder un fichier de document PDF.
Étape 2 : Concevoir le formulaire
Vous pouvez concevoir le formulaire selon vos préférences. Ce tutoriel fera un design minimaliste en ajoutant deux étiquettes, une zone de texte enrichie et deux boutons.
Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 6 : Ajout de boutons au formulaire Ajouter des boutons au formulaire
Étape 3 : Installer IronPDF
L'étape suivante est d'installer IronPDF dans ce projet pour utiliser ses riches fonctionnalités.
IronPDF peut être installé en utilisant le gestionnaire de packages 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échargera et installera le package IronPDF dans votre projet. Une fois installé, nous pouvons commencer à utiliser IronPDF.
Écrire le 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 sauvegarder le contenu d'une zone de texte sous forme de fichier PDF en utilisant la bibliothèque ChromePdfRenderer Class. Parcourons chaque méthode pour comprendre comment elle fonctionne.
Méthode Save_Click (Créer un document PDF)
La méthode suivante est un gestionnaire d'événements pour un événement de clic de bouton. L'objectif de cette méthode est de sauvegarder le contenu d'une zone de texte sous forme de 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(filename))
{
// 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(filename))
{
// 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(filename) 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
Voici une explication étape par étape de ce que fait cette méthode :
- La méthode appelle la méthode
getFilePathpour obtenir le chemin du fichier où le fichier PDF sera enregistré. - Si le chemin de fichier n'est ni vide ni nul, la méthode procède à la sauvegarde du fichier PDF.
- La méthode crée une nouvelle instance de la classe
ChromePdfRenderer. C'est une bibliothèque qui fournit un moyen de convertir du contenu HTML en documents PDF utilisant le moteur du navigateur Google Chrome. - La méthode utilise ensuite la méthode RenderHtmlAsPdf de la classe
ChromePdfRendererpour convertir le contenu HTML de la zone de textepdfContenten un document PDF. Ce document PDF est attribué à la Variable PdfDocument. - La méthode enregistre le document PDF dans le chemin de fichier spécifié en utilisant la méthode SaveAs de la classe
PdfDocument. - Enfin, la méthode affiche une boîte de message pour indiquer que le fichier PDF a été sauvegardé avec succès.
Méthode getFilePath (Sauvegarder des fichiers PDF)
Cette méthode est utilisée pour afficher un SaveFileDialog à l'utilisateur afin qu'il sélectionne un chemin d'accès au 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 String.Empty;
}
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 String.Empty;
}
Public Function getFilePath() As String
' Create a new instance of the SaveFileDialog class.
Dim saveFileDialog1 As 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 Then
' If the user clicked the OK button in the SaveFileDialog, return the selected file path.
Return saveFileDialog1.FileName
End If
' If the user did not click the OK button, return an empty string.
Return String.Empty
End Function
Voici une explication étape par étape de ce que fait cette méthode :
- 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 permettant à l'utilisateur de sélectionner un chemin de fichier où le fichier PDF sera sauvegardé. - La méthode définit plusieurs propriétés de l'objet
SaveFileDialogpour personnaliser son comportement. La propriétéInitialDirectorydéfinit le répertoire dans lequel la boîte de dialogue s'ouvrira en premier. La propriétéTitledéfinit le titre de la boîte de dialogue. La propriétéCheckPathExistsspécifie si la boîte de dialogue doit vérifier si le chemin spécifié existe. La propriétéDefaultExtdéfinit l'extension de fichier par défaut pour le type de fichier. La propriétéFilterdéfinit les filtres de type de fichier qui sont affichés dans la boîte de dialogue. La propriétéFilterIndexdéfinit le filtre par défaut à afficher. Enfin, la propriétéRestoreDirectoryspécifie si la boîte de dialogue doit restaurer le répertoire courant avant de se fermer. - La méthode montre le
SaveFileDialogen appelant sa méthodeShowDialog. Cette méthode affiche la boîte de dialogue et renvoie une valeurDialogResultqui indique si l'utilisateur a cliqué sur le bouton " OK " ou sur le bouton Annuler. - Si l'utilisateur clique sur le bouton " OK ", la méthode renvoie le chemin du fichier sélectionné par l'utilisateur en accédant à la propriété
FileNamedeSaveFileDialog. - Si l'utilisateur clique sur le bouton "Annuler" ou ferme la boîte de dialogue, la méthode retourne une chaîne vide.
Lançons 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 d'un projet Windows Forms Exécution du projet Windows Forms
Entrez votre contenu PDF et cliquez sur le bouton "Sauvegarder" comme indiqué ci-dessous.
Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants), Figure 8 : Boîte de dialogue d'enregistrement Boîte de dialogue de sauvegarde
Le PDF suivant est créé.
Fichier PDF créé
IronPDF offre 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 à l'aide de la classe ChromePdfRenderer et de la boîte de dialogue SaveFileDialog.
Conclusion
Sauvegarder des fichiers PDF depuis 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 démontré comment utiliser IronPDF pour créer, ajouter du contenu et sauvegarder des fichiers dans une application Windows Forms en C#. Avec IronPDF, les développeurs peuvent générer des fichiers PDF de haute qualité à partir de leurs applications avec seulement quelques lignes de code.
IronPDF offre une gamme de fonctionnalités telles que le Tutoriel de conversion HTML en PDF, l'Exemple de code pour fusionner des PDF, le Guide de découpage de pages PDF, et le Comment extraire du texte et des images, et plus encore. IronPDF est gratuit pour le développement et disponible sous une Licence commerciale avec un essai gratuit, qui permet aux développeurs de l'utiliser dans des projets commerciaux et comprend un support et des mises à jour dédiés.
De plus, IronPDF fait partie de l'Iron Suite, qui est un ensemble de composants logiciels .NET qui inclut des bibliothèques pour :
- La génération de code-barres (IronBarcode),
- La gestion d'Excel (IronXL),
- L'extraction de texte (IronOCR)
Acheter la suite Iron complète est une solution économique car vous pouvez obtenir les cinq produits pour le prix de deux.
Questions Fréquemment Posées
Comment puis-je enregistrer un fichier PDF dans une application Windows Forms en C#?
Vous pouvez enregistrer un fichier PDF dans une application Windows Forms en C# en using IronPDF en configurant un formulaire avec des contrôles tels que des zones de texte et des boutons, et en implémentant la méthode Save_Click pour rendre et sauvegarder le contenu en tant que PDF en utilisant la classe ChromePdfRenderer.
Quelles étapes sont impliquées dans la configuration d'une application Windows Forms pour enregistrer des PDF en utilisant C#?
Pour configurer une application Windows Forms pour enregistrer des PDF, créez un nouveau projet dans Visual Studio, ajoutez les contrôles nécessaires tels que des étiquettes et une zone de texte enrichie, et installez IronPDF via le Package Manager NuGet pour utiliser ses capacités de rendu PDF.
Comment puis-je convertir le contenu HTML en PDF en C# ?
Vous pouvez convertir du contenu HTML en PDF en C# en utilisant la méthode RenderHtmlAsPdf d'IronPDF, qui vous permet de prendre des chaînes HTML et de les rendre directement en documents PDF.
Quel est le rôle de la méthode Save_Click dans le contexte de la génération de PDF?
La méthode Save_Click sert de gestionnaire d'événements dans l'application, responsable de capturer l'événement de clic d'un bouton pour initier le processus de rendu du contenu de la zone de texte dans un fichier PDF en utilisant les classes de rendu d'IronPDF.
Comment puis-je inviter les utilisateurs à sélectionner un chemin de fichier pour enregistrer un PDF dans une application C#?
Dans une application C#, vous pouvez inviter les utilisateurs à sélectionner un chemin de fichier pour enregistrer un PDF en utilisant la classe SaveFileDialog, qui vous permet de configurer une interface pour la sélection de fichier et de retourner le chemin choisi pour enregistrer le PDF rendu.
Quelles fonctionnalités avancées IronPDF offre-t-il pour la manipulation de PDF?
IronPDF offre des fonctionnalités avancées telles que la conversion de HTML en PDF, la fusion de PDF, la division de pages PDF et l'extraction de texte et d'images, fournissant une suite complète d'outils pour la manipulation de PDF dans les applications .NET.
Y a-t-il des frais associés à l'utilisation d'IronPDF pour la génération de PDF dans des projets commerciaux ?
IronPDF est gratuit pour des fins de développement avec une licence d'essai. Cependant, pour des projets commerciaux, une licence commerciale est requise, qui inclut des avantages tels que le support dédié et les mises à jour régulières.
Qu'est-ce que la suite Iron et comment profite-t-elle aux développeurs ?
L'Iron Suite est un ensemble de bibliothèques .NET, incluant des outils pour la génération de codes-barres, la manipulation de documents Excel, et la gestion de PDF. Elle offre une solution rentable pour les développeurs nécessitant plusieurs fonctionnalités au sein de leurs applications.
IronPDF est-il compatible avec .NET 10 et quels avantages cela apporte-t-il pour l'enregistrement de fichiers PDF en C# ?
Oui, IronPDF est entièrement compatible avec .NET 10, y compris les projets de bureau, web et multiplateformes. Le développement avec .NET 10 offre des améliorations telles qu'une exécution plus rapide, l'accès aux fonctionnalités modernes de C# et une intégration plus étroite avec les fonctionnalités de la plateforme, ce qui rend la création et l'enregistrement de PDF via les méthodes RenderHtmlAsPdf et SaveAs d'IronPDF plus efficaces.



