using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants)
Regan Pun
mai 23, 2023
Mise à jour mars 10, 2024
Partager:
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
Ouvrez Visual Studio 2022 comme indiqué ci-dessous.
**Studio visuel 2022
Cliquez sur "Créer un nouveau projet" sur la page d'accueil 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"(framework .NET)"sous "Créer un nouveau projet", comme indiqué ci-dessous.
Nouvelle application de formulaires
Saisissez un nom pour votre projet et choisissez un emplacement pour l'enregistrer.
**Lieu du projet
Choisissez .NET Framework. Sélectionnez .NET 7.0 dans le menu déroulant.
Cliquez sur le bouton Créer.
**Informations complémentaires
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.
Projet de formulaire 1
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.
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 de NuGet Package Manager en allant sur Tools > NuGet Package Manager > Package Manager Console.
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 avec le flux, écrivez deux méthodes : Save_Click et getFilePath dans la classe Form1.cs. Ces méthodes sont utilisées conjointement pour enregistrer le contenu d'une zone de texte en tant que fichier PDF à l'aide de la fonctionClasse ChromePdfRenderer bibliothèque. 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 :
La méthode appelle la méthode getFilePath pour obtenir le chemin d'accès au fichier PDF.
Si le chemin d'accès au fichier n'est pas vide ou nul, la méthode procède à l'enregistrement du fichier PDF.
Cette 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.
La méthode utilise ensuite leMéthode RenderHtmlAsPdf de la classe ChromePdfRenderer pour convertir le contenu HTML de la zone de texte pdfContent en un document PDF. Ce document PDF est attribué auVariable PdfDocument.
Cette méthode permet d'enregistrer le document PDF dans le chemin d'accès spécifié à l'aide de la fonctionMéthode SaveAs de la classe PdfDocument.
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 une boîte de dialogue SaveFileDialog permettant à l'utilisateur de sélectionner le chemin d'accès au fichier PDF.
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 :
Cette 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é.
Cette méthode définit plusieurs propriétés de l'objet SaveFileDialog afin de personnaliser son comportement. La propriété InitialDirectory définit le répertoire dans lequel la boîte de dialogue s'ouvrira pour la première fois. 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 par défaut du 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 courant avant de se fermer.
La méthode affiche le dialogue SaveFileDialog en appelant sa méthode ShowDialog. Cette méthode affiche la boîte de dialogue et renvoie une valeur DialogResult qui indique si l'utilisateur a cliqué sur le bouton "OK" ou sur le bouton "Cancel".
Si l'utilisateur clique sur le bouton "OK", la méthode renvoie le chemin du fichier que l'utilisateur a sélectionné en accédant à la propriété FileName du SaveFileDialog.
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.
Exécution d'un projet Windows Forms
Saisissez le contenu de votre PDF et cliquez sur le bouton "Enregistrer" comme indiqué ci-dessous.
Boîte de dialogue d'enregistrement
Le PDF suivant est créé.
Fichier PDF créé
IronPDF fournit un moyen simple de convertir du contenu HTML en documents PDF et de les enregistrer dans un chemin de fichier choisi 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 série de fonctionnalités telles queTutoriel de conversion de HTML en PDF, PDFExemple de code de fusion, Guide de division des pages PDFetExtraction de texte et d'images Comment faireet bien d'autres choses encore. IronPDF est gratuit pour le développement et disponible sous une licence deLicence commerciale avecun essai gratuitqui permet aux développeurs de l'utiliser dans des projets commerciaux et comprend une assistance et des mises à jour dédiées. En outre, IronPDF fait partie de l'initiative de lIron Suitequi est un ensemble de composants logiciels .NET comprenant des bibliothèques pour la génération de codes-barres(IronBarcode)création, lecture et manipulation de documents Excel(IronXL)la traduction doit rester professionnelle et préserver l'exactitude technique tout en expliquant les caractéristiques et les avantages de ces outils de développement(IronOCR)et bien d'autres choses 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.
Regan est diplômé de l'université de Reading, où il a obtenu une licence en ingénierie électronique. Avant de rejoindre Iron Software, il s'était concentré sur une seule tâche. Ce qu'il apprécie le plus chez Iron Software, c'est la diversité des tâches qu'il peut accomplir, qu'il s'agisse d'apporter une valeur ajoutée aux ventes, à l'assistance technique, au développement de produits ou à la commercialisation. Il aime comprendre comment les développeurs utilisent la bibliothèque d'Iron Software et utiliser ces connaissances pour améliorer continuellement la documentation et développer les produits.
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier