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 convertir HTML en PDF en ASP .NET à l'aide de C#
UTILISATION D'IRONPDF
Comment convertir HTML en PDF en ASP .NET à l'aide de C#
Jordi Bardia
octobre 23, 2024
Partager:
Dans les applications web modernes, la génération de documents à partir de contenu HTML est une exigence courante. Que vous ayez besoin de créer des factures, des rapports ou tout autre type de document, la conversion de HTML en PDF peut être réalisée efficacement avec la bibliothèque IronPDF en ASP.NET à l'aide de C#.
Aujourd'hui, nous allons explorer comment configurer IronPDF et l'utiliser pour convertir du contenu HTML en un document PDF.
Comment convertir HTML en PDF en ASP.NET avec IronPDF for .NET
Créez un projet ASP.NET à l'aide de Visual Studio ou de l'IDE de votre choix.
Installez IronPDF et configurez votre clé de licence.
Créez un nouveau contrôleur ou une nouvelle page où vous souhaitez gérer la conversion PDF.
Inscrivez votre logique de conversion dans le contrôleur.
Configurez le routage pour permettre l'accès à votre action de génération de PDF.
Présentation d'IronPDF
IronPDF est une puissante bibliothèque PDF qui permet aux développeurs de lire, créer et manipuler des documents PDF. Avec un ensemble de fonctionnalités riches et un processus d'installation simple et rapide, vous pouvez faire passer vos projets PDF à la vitesse supérieure en un rien de temps grâce à IronPDF. Son API intuitive est facile à apprendre, ce qui en fait un choix idéal si vous cherchez à générer des documents PDF dynamiques, à effectuer des tâches de sécurité PDF, des annotations PDF, etc. directement à partir de votre application web.
Caractéristiques
Conversion PDF: IronPDF peut convertir des fichiers HTML en PDF, avec sa prise en charge complète des normes Web modernes, vous pouvez être assuré qu'IronPDF renverra systématiquement des PDF parfaits au pixel près à partir de vos pages HTML. IronPDF peut également convertir des fichiers PDF à partir d'autres formats tels que DOCX, images, RTF, et plus encore.
Génération de PDF : Avec IronPDF, vous pouvez générer des PDF à partir de n'importe quelle page web, fichier ASPX, chaîne HTML, ou plus encore.
Fonctionnalités de sécurité : Avec IronPDF, vous pouvez toujours être assuré que tous les fichiers PDF sensibles sont sécurisés grâce à ses fonctionnalités de sécurité. Utilisez IronPDF pour crypter vos fichiers PDF, définir des mots de passe et définir des permissions pour vos fichiers PDF.
Fonctionnalités d'édition PDF : Avec IronPDF, vous pouvez traiter des documents PDF existants, les éditer et lire des fichiers PDF facilement. IronPDF offre des fonctionnalités d'édition telles que l'ajout d'en-têtes et de pieds de page, l'estampillage de texte et d'images sur les pages PDF, l'ajout de filigranes personnalisés au PDF, le travail avec des formulaires PDF, et la division ou la fusion de fichiers PDF.
Conditions préalables
Avant de commencer, assurez-vous d'avoir :
Visual Studio ou un autre environnement de développement C# mis en place.
Bibliothèque IronPDF installés. Vous pouvez l'obtenir à partir de NuGet ou directement sur le site web d'IronPDF.
Créer un nouveau projet ASP.NET
Lancez Visual Studio et sélectionnez le type de projet ASP.NET qui correspond le mieux à vos besoins. Pour l'exemple d'aujourd'hui, je vais créer une application web ASP.NET Core(Contrôleur modèle-vue).
Saisissez ensuite le nom de votre projet et choisissez l'emplacement où il sera hébergé.
Enfin, choisissez votre .NET Framework pour le projet, et modifiez tout paramètre supplémentaire pour le projet, comme le type d'authentification ou l'activation de la prise en charge des conteneurs et de docker.
Créer un contrôleur
Pour créer un nouveau contrôleur qui contiendra notre code HTML à PDF, cliquez d'abord avec le bouton droit de la souris sur le dossier "Controllers" dans l'explorateur de solutions et choisissez "Add -> Controller" (Ajouter -> Contrôleur).
Une nouvelle fenêtre s'ouvrira, dans laquelle vous pourrez choisir la forme de contrôleur que vous souhaitez ajouter au projet. Nous avons choisi un contrôleur MVC vide.
Enfin, nous donnons un nom au nouveau contrôleur et cliquons sur "Ajouter" pour l'ajouter à notre projet.
Ajouter un code de conversion HTML vers PDF
Maintenant que nous avons créé notre projet ASP.NET, nous pouvons commencer à écrire le code pour convertir le contenu d'un fichier HTML en PDF. Nous commencerons par un exemple simple de chaîne HTML vers PDF, avant d'examiner la conversion de contenu HTML avec personnalisation.
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
public class PdfController : Controller
{
public IActionResult GeneratePdf()
{
// String of HTML code to be converted to PDF
string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Convert HTML string to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
}
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
public class PdfController : Controller
{
public IActionResult GeneratePdf()
{
// String of HTML code to be converted to PDF
string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Convert HTML string to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
}
}
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Namespace IronPdfTest.Controllers
Public Class PdfController
Inherits Controller
Public Function GeneratePdf() As IActionResult
' String of HTML code to be converted to PDF
Dim htmlContent As String = "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>"
Dim renderer As New ChromePdfRenderer()
' Convert HTML string to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
Return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf")
End Function
End Class
End Namespace
ASP.NET MVC utilise des contrôleurs pour traiter les demandes des utilisateurs. Lorsqu'un utilisateur navigue vers une URL spécifique, ASP.NET appelle une méthode dans le contrôleur associé à cette route.
PdfController est une classe héritant de Controller, ce qui signifie qu'elle peut traiter des requêtes web et envoyer des réponses.
La méthode GeneratePdf à l'intérieur de ce contrôleur traitera une demande de conversion de HTML en PDF et renverra le résultat.
Lorsqu'un utilisateur visite une URL liée à l'action GeneratePdf, la méthode s'exécute.
IActionResult : Il s'agit du type de retour, représentant la réponse que l'application web renverra à l'utilisateur. Il peut s'agir d'une vue(Page HTML)la traduction doit rester professionnelle, tout en préservant l'exactitude technique et en expliquant les caractéristiques et les avantages de ces outils de développement. Dans ce cas, il s'agit d'un fichier PDF.
GénérerPdf() Méthode :
Dans la méthode, nous définissons une chaîne htmlContent qui contient le code HTML à convertir en PDF. Par exemple, "
Bonjour, IronPDF!
Il s'agit d'un PDF généré à partir de HTML.
".
Nous créons une nouvelle instance deChromePdfRendererla traduction doit être professionnelle, tout en préservant la précision technique et en expliquant les caractéristiques et les avantages de ces outils de développement.
La méthodeRenderHtmlAsPdf() prend la chaîne HTML et renvoie un objet PDF.
Configurer le routage
Dans une application ASP.NET MVC, vous définissez des routes qui font correspondre les URL aux méthodes du contrôleur(actions). Par exemple, si vous naviguez vers /Pdf/GeneratePdf dans le navigateur, ASP.NET recherchera le contrôleur Pdf et appellera sa méthode GeneratePdf. Assurez-vous que votre configuration de routage permet l'accès à l'action GeneratePdf. Si vous utilisez ASP.NET Core MVC, cette fonctionnalité est généralement configurée automatiquement. Si vous utilisez l'API Web, assurez-vous que vos routes sont correctement configurées.
Sortie PDF personnalisée
Maintenant que nous connaissons les bases, voyons comment créer un fichier PDF à partir d'un contenu HTML en définissant quelques paramètres de personnalisation pour le PDF de sortie. IronPDF fournit un ensemble puissant d'outils de personnalisation des PDF, tels quemarges, en-têtes/pieds de page, dimensionnement personnalisé des PDFet bien d'autres choses encore.
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
// Controller for our PDF converter
public class PdfController : Controller
{
public IActionResult GeneratePdf()
{
string url= "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Creating the cover page
PdfDocument cover = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1>");
// Adding custom options for our final PDF
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A3;
renderer.RenderingOptions.TextHeader.CenterText = "IronPDF";
renderer.RenderingOptions.TextHeader.FontSize = 12;
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.FirstPageNumber = 2;
// Creating our main PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(url);
// Appending the cover to the main PDF
pdf.InsertPdf(cover, 0);
return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
}
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace IronPdfTest.Controllers
{
// Controller for our PDF converter
public class PdfController : Controller
{
public IActionResult GeneratePdf()
{
string url= "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Creating the cover page
PdfDocument cover = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1>");
// Adding custom options for our final PDF
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A3;
renderer.RenderingOptions.TextHeader.CenterText = "IronPDF";
renderer.RenderingOptions.TextHeader.FontSize = 12;
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.FirstPageNumber = 2;
// Creating our main PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(url);
// Appending the cover to the main PDF
pdf.InsertPdf(cover, 0);
return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf");
}
}
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Namespace IronPdfTest.Controllers
' Controller for our PDF converter
Public Class PdfController
Inherits Controller
Public Function GeneratePdf() As IActionResult
Dim url As String= "<h1>Hello, IronPDF!</h1><p>This is a PDF generated from HTML.</p>"
Dim renderer As New ChromePdfRenderer()
' Creating the cover page
Dim cover As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Cover Page</h1>")
' Adding custom options for our final PDF
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A3
renderer.RenderingOptions.TextHeader.CenterText = "IronPDF"
renderer.RenderingOptions.TextHeader.FontSize = 12
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.FirstPageNumber = 2
' Creating our main PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(url)
' Appending the cover to the main PDF
pdf.InsertPdf(cover, 0)
Return File(pdf.BinaryData, "application/pdf", "generatedDocument.pdf")
End Function
End Class
End Namespace
Conclusion
Aujourd'hui, nous avons examiné de plus près comment la conversion de HTML en PDF peut être utilisée avec ASP.NET, et exploré le processus de création de fichiers PDF à partir de HTML au sein d'un projet ASP.NET. En suivant les étapes décrites ci-dessus, vous pouvez facilement intégrer la génération de PDF dans vos applications web, ce qui vous permet de créer des documents imprimables de haute qualité à partir de contenu HTML.
IronPDF dispose d'un riche ensemble de fonctionnalités qui peuvent être exploitées pour produire des documents PDF de haute qualité, pour des fonctionnalités plus avancées et une personnalisation détaillée, reportez-vous à la page d'accueil IronPDFla documentationgrâce à son interface utilisateur, et à sa rapidité d'exécution, leinstallationavec la traduction, vous pouvez installer IronPDF dans votre projet en un rien de temps.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT Comment extraire les données d'un tableau d'un fichier PDF en C#
SUIVANT > Conformité PDF/A (Comment cela fonctionne pour les développeurs)
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