Cet article fournit un didacticiel complet sur la création d’une application de génération de PDF ASP.NET Core. Il vous aidera à apprendre à créer des fichiers PDF dans vos applications ASP.NET Core.
PDF (Portable Document Format) est un format bien connu et largement utilisé pour afficher ou visualiser des documents numériques sans se soucier du logiciel, du système d’exploitation ou du matériel compatible. La création de fichiers PDF par programmation est très utile pour générer des documents tels que des rapports, des CV, des factures, etc. en ligne dans les applications Web. Donc, dans cet article, je vais vous expliquer comment créer des fichiers PDF dans l’application Web ASP.NET Core avec C#.
Créer des fichiers PDF dans ASP.NET Core
Afin de créer des fichiers PDF par programmation, nous allons développer un éditeur PDF dans l’application Web ASP.NET Core. Cette application sera basée sur un éditeur HTML WYSIWYG pour créer le contenu et Aspose.PDF for .NET pour générer le PDF basé sur ce contenu. Commençons donc à créer notre application d’édition PDF dans ASP.NET Core en suivant les étapes ci-dessous.
- Créez une nouvelle application Web ASP.NET Core dans Visual Studio.
- Sélectionnez Application Web (Modèle-Vue-Contrôleur) dans les modèles.
Étant donné que cet éditeur PDF utilise l’éditeur HTML WYSIWYG pour créer le contenu des documents PDF, pour la démonstration, j’ai utilisé le package standard de CKEditor. Vous pouvez vous sentir libre de choisir votre éditeur HTML préféré qui répondra le mieux à vos besoins. Si vous êtes prêt à utiliser l’éditeur susmentionné, suivez l’étape ci-dessous pour son intégration, sinon ignorez-le.
- Téléchargez le package de CKEditor, extrayez-le et copiez/collez le dossier dans le répertoire wwwroot.
- Ouvrez le gestionnaire de packages NuGet et installez les packages de Aspose.PDF et CKEditor.
- Ouvrez Views/Home/index.cshtml et remplacez le script par ce qui suit.
@{
ViewData["Title"] = "PDF Creator";
}
<script src="~/ckeditor/ckeditor.js"></script>
<div class="row">
<div class="col-md-12">
<h2>Create a PDF File</h2>
<form method="post">
<textarea name="editor1" id="editor1" rows="80" cols="80">
Start creating your PDF document.
</textarea>
<br />
<input type="submit" class="btn btn-success" value="Generate PDF" />
<script>
// <html>Remplace le<textarea id="editor1"> avec un CKEditor</html>
// instance, en utilisant la configuration par défaut.
CKEDITOR.replace('editor1');
</script>
</form>
</div>
</div>
- Ouvrez Controllers/HomeController.cs et remplacez le code par ce qui suit.
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
[HttpPost]
public FileResult Index(string editor1)
{
// créer un nom de fichier unique
string fileName = Guid.NewGuid() + ".pdf";
// convertir du texte HTML en flux
byte[] byteArray = Encoding.UTF8.GetBytes(editor1);
// générer un PDF à partir du HTML
MemoryStream stream = new MemoryStream(byteArray);
HtmlLoadOptions options = new HtmlLoadOptions();
Document pdfDocument = new Document(stream, options);
// créer un flux de mémoire pour le fichier PDF
Stream outputStream = new MemoryStream();
pdfDocument.Save(outputStream);
// renvoyer le fichier PDF généré
return File(outputStream, System.Net.Mime.MediaTypeNames.Application.Pdf, fileName);
}
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
public IActionResult Error()
{
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}
}
- Créez l’application et exécutez-la dans votre navigateur préféré.
Création de PDF dans l’application ASP.NET Core - Démo
Ce qui suit est la démonstration de la création de fichiers PDF à l’aide du générateur PDF ASP.NET Core que nous venons de créer.
Télécharger le code source
Vous pouvez télécharger le code source complet de l’éditeur PDF ASP.NET à partir de GitHub.
Obtenez une licence gratuite pour Aspose.PDF for .NET
Vous pouvez demander une licence temporaire gratuite d’Aspose.PDF for .NET afin d’éviter les limitations d’évaluation.