Convertir du HTML en PDF dans ASP.NET Core avec C# -- Guide IronPDF
IronPDF convertit le HTML en PDF dans ASP.NET en utilisant un moteur de rendu basé sur Chrome qui transforme vos chaînes HTML, fichiers ou URL en documents PDF d'une précision pixel parfaite avec seulement quelques lignes de code C#.
Lorsque votre application ASP.NET doit générer des factures, des rapports ou des documents de conformité à la demande, la qualité du fichier PDF généré est importante. Les utilisateurs finaux s'attendent à un résultat formaté qui ressemble exactement au code HTML d'origine, avec votre style CSS, vos polices personnalisées et vos mises en page de tableaux. Le défi consiste à trouver une bibliothèque qui gère cette conversion sans nécessiter de solutions de contournement complexes pour les contenus modernes riches en CSS ou en JavaScript.
IronPDF est une bibliothèque PDF en C# conçue pour relever ce défi. Son moteur de rendu basé sur Chrome traite le HTML de la même manière qu'un véritable navigateur, ce qui signifie que vos propriétés CSS3, vos requêtes média et votre contenu rendu en JavaScript apparaissent tous correctement dans le document final. Les sections ci-dessous décrivent l'installation, les trois principales méthodes de rendu, la gestion des données de formulaire, les fonctionnalités de mise en forme avancées et la prise en charge de l'authentification — tout ce dont vous avez besoin pour intégrer la génération de PDF prêts pour la production dans votre application ASP.NET Core .
Comment convertir rapidement du HTML en PDF avec ASP.NET Core?
Pour commencer la conversion HTML vers PDF dans ASP.NET Core , il suffit de quelques lignes de code. Commencez par installer IronPDF via le gestionnaire de packages NuGet :
Install-Package IronPdf
Une fois installée, la classe ChromePdfRenderer est le point d'entrée principal pour toutes les opérations de rendu. Voici un exemple complet montrant comment convertir une chaîne HTML en un PDF téléchargeable dans un contrôleur ASP.NET Core MVC :
-
Installez IronPDF avec le Gestionnaire de Packages NuGet
PM > Install-Package IronPdf -
Copiez et exécutez cet extrait de code.
using IronPdf; using Microsoft.AspNetCore.Mvc; // program.cs var builder = WebApplication.CreateBuilder(args); builder.Services.AddControllersWithViews(); var app = builder.Build(); app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); app.Run(); // PdfController.cs public class PdfController : Controller { public IActionResult GeneratePdf() { var renderer = new ChromePdfRenderer(); string html = @" <h1>Invoice #2024-001</h1> <p>Generated on: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p> <table> <tr><th>Item</th><th>Price</th></tr> <tr><td>Professional License</td><td>$799</td></tr> </table>"; var pdf = renderer.RenderHtmlAsPdf(html); return File(pdf.BinaryData, "application/pdf", "invoice.pdf"); } } -
Déployez pour tester sur votre environnement de production.
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit
À quoi ressemble le PDF généré?

La classe ChromePdfRenderer gère tout le rendu complexe, garantissant que votre structure HTML, vos styles CSS et même JavaScript s'affichent correctement dans le fichier PDF final. La valeur de retour est un objet PdfDocument dont la propriété BinaryData vous pouvez diffuser directement dans le navigateur sous forme de téléchargement de fichier.
Comment choisir la méthode de rendu adaptée à votre source ?
IronPDF propose trois méthodes de rendu principales, chacune conçue pour une source de contenu spécifique. Comprendre quelle méthode convient à votre situation permet d'éviter une complexité inutile et de garder votre code de contrôleur propre.
| Type de source | Méthode | Idéal pour |
|---|---|---|
| Chaîne HTML en mémoire | `RenderHtmlAsPdf` | Rapports basés sur des bases de données, factures modèles, contenu dynamique |
| Fichier HTML sur disque | `RenderHtmlFileAsPdf` | Modèles statiques dans wwwroot, mises en page fournies par l'agence de design |
| URL du site web en direct | `RenderUrlAsPdf` | Archivage des pages, capture des SPA après le rendu JavaScript |
Comment convertir des chaînes HTML dynamiques ?
Lorsque vous travaillez avec du contenu dynamique comme des rapports basés sur une base de données, utilisez RenderHtmlAsPdf pour convertir directement les chaînes HTML. Cette méthode accepte tout balisage HTML valide et renvoie un PDF entièrement rendu :
var renderer = new ChromePdfRenderer();
string htmlContent = BuildDynamicHtml(); // your method to generate HTML
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("dynamic-report.pdf");
var renderer = new ChromePdfRenderer();
string htmlContent = BuildDynamicHtml(); // your method to generate HTML
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("dynamic-report.pdf");
Dim renderer As New ChromePdfRenderer()
Dim htmlContent As String = BuildDynamicHtml() ' your method to generate HTML
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("dynamic-report.pdf")
Rapport de test IronPDF affichant du contenu HTML rendu avec style CSS, comprenant un en-tête bleu " Rapport de test IronPDF ", du texte de paragraphe stylisé en vert et un tableau de données formaté contenant des informations sur le produit, notamment des widgets et des outils.
Cette approche fonctionne bien pour générer des documents PDF à partir de modèles HTML remplis de données en temps réel, de soumissions de formulaires ou de tout contenu généré dynamiquement. Le moteur de rendu préserve tous les styles CSS, y compris les polices personnalisées, les couleurs et la mise en forme des tableaux. Lorsque votre code HTML fait référence à des feuilles de style ou à des images externes à l'aide de chemins relatifs, transmettez un baseUrl comme deuxième argument afin que le moteur de rendu puisse résoudre correctement ces ressources.
Comment convertir des fichiers HTML statiques depuis un disque dur ?
Pour les modèles HTML stockés sous forme de fichiers physiques, utilisez RenderHtmlFileAsPdf pour les convertir sans les charger en mémoire au préalable. Cette méthode est efficace pour les modèles volumineux et évite la concaténation de chaînes de caractères.
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report-template.html");
pdf.SaveAs("report.pdf");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report-template.html");
pdf.SaveAs("report.pdf");
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlFileAsPdf("wwwroot/templates/report-template.html")
pdf.SaveAs("report.pdf")
Cette méthode résout automatiquement les chemins relatifs des feuilles de style CSS, des images et autres ressources externes référencées dans le fichier. Elle est particulièrement adaptée lorsque votre équipe de conception utilise des fichiers de modèles HTML distincts, en dehors du code source C# de l'application. Cette méthode prend en charge les requêtes média CSS pour l'impression et les polices personnalisées , de sorte que les modèles conçus pour les environnements d'impression s'affichent fidèlement sans configuration supplémentaire.
Comment convertir une URL de page Web en PDF ?
Pour capturer une page Web en direct ou rendre une page accessible par URL au format PDF, utilisez RenderUrlAsPdf. Cette méthode lance le moteur Chrome, accède à l'URL, attend que la page soit entièrement chargée, puis capture le rendu :
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(1000);
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.SaveAs("webpage.pdf");
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(1000);
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.SaveAs("webpage.pdf");
Dim renderer = New ChromePdfRenderer()
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.RenderDelay(1000)
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen
Dim pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")
pdf.SaveAs("webpage.pdf")

L'option WaitFor.RenderDelay indique au moteur de rendu de faire une pause après le chargement de la page avant de capturer. Ceci est précieux pour les applications monopages qui construisent leur DOM via JavaScript après la réception de la réponse HTML initiale. Le paramètre EnableJavaScript = true active le moteur JavaScript complet de Chrome, de sorte que les graphiques, les grilles de données et autres composants rendus en JavaScript apparaissent dans le PDF exactement comme dans un navigateur.
Comment gérez-vous les données de formulaire et les requêtes POST ?
Le traitement des données de formulaire avant la génération du PDF est une pratique courante dans les applications ASP.NET : les confirmations de commande, les bons de livraison et les reçus suivent tous ce modèle. L'approche consiste à lier les données du formulaire envoyé à un modèle, à construire une chaîne HTML à partir de ce modèle, puis à générer un PDF à partir de cette chaîne :
[HttpPost]
public IActionResult ProcessFormToPdf(OrderModel model)
{
var renderer = new ChromePdfRenderer();
string html = $@"
<h2>Order Confirmation</h2>
<p>Customer: {model.CustomerName}</p>
<p>Order Date: {model.OrderDate:yyyy-MM-dd}</p>
<ul>
{string.Join("", model.Items.Select(i => $"<li>{i.Name} -- ${i.Price}</li>"))}
</ul>
<p><strong>Total: ${model.Total}</strong></p>";
var pdf = renderer.RenderHtmlAsPdf(html);
string fileName = $"order-{model.OrderId}.pdf";
return File(pdf.BinaryData, "application/pdf", fileName);
}
[HttpPost]
public IActionResult ProcessFormToPdf(OrderModel model)
{
var renderer = new ChromePdfRenderer();
string html = $@"
<h2>Order Confirmation</h2>
<p>Customer: {model.CustomerName}</p>
<p>Order Date: {model.OrderDate:yyyy-MM-dd}</p>
<ul>
{string.Join("", model.Items.Select(i => $"<li>{i.Name} -- ${i.Price}</li>"))}
</ul>
<p><strong>Total: ${model.Total}</strong></p>";
var pdf = renderer.RenderHtmlAsPdf(html);
string fileName = $"order-{model.OrderId}.pdf";
return File(pdf.BinaryData, "application/pdf", fileName);
}
Imports System
Imports System.Linq
Imports Microsoft.AspNetCore.Mvc
<HttpPost>
Public Function ProcessFormToPdf(model As OrderModel) As IActionResult
Dim renderer = New ChromePdfRenderer()
Dim html As String = $"
<h2>Order Confirmation</h2>
<p>Customer: {model.CustomerName}</p>
<p>Order Date: {model.OrderDate:yyyy-MM-dd}</p>
<ul>
{String.Join("", model.Items.Select(Function(i) $"<li>{i.Name} -- ${i.Price}</li>"))}
</ul>
<p><strong>Total: ${model.Total}</strong></p>"
Dim pdf = renderer.RenderHtmlAsPdf(html)
Dim fileName As String = $"order-{model.OrderId}.pdf"
Return File(pdf.BinaryData, "application/pdf", fileName)
End Function
À quoi ressemble l'interface du formulaire ?

Comment les données du formulaire apparaissent-elles dans le PDF généré ?

Pour des scénarios de documents plus avancés, vous pouvez intégrer des formulaires PDF ou modifier des modèles PDF existants avec des champs préremplis. La bibliothèque prend également en charge les signatures numériques pour les documents et contrats juridiques, vous permettant d'ajouter des signatures cryptographiquement vérifiables à tout document généré.
L'un des aspects importants à prendre en compte lors de l'intégration de données utilisateur dans des chaînes HTML est leur assainissement. Veillez toujours à échapper les chaînes de caractères fournies par l'utilisateur avant de les insérer dans le code HTML afin d'éviter les problèmes d'injection. Un simple appel System.Web.HttpUtility.HtmlEncode(model.CustomerName) sur chaque champ permet de conserver le modèle en sécurité avant de le transmettre au moteur de rendu.
Comment ajouter une mise en forme Professional , des en-têtes et des filigranes ?
Comment configurer les en-têtes, les pieds de page et les filigranes ?
Les documents PDF Professional nécessitent souvent des en-têtes et des pieds de page sur chaque page, ainsi que des filigranes pour les documents brouillons ou confidentiels. IronPDF gère les deux via les propriétés de l'objet RenderingOptions et la méthode ApplyWatermark sur l'objet résultant PdfDocument :
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
MaxHeight = 25,
HtmlFragment = "<div style='text-align:center'>Annual Report 2024</div>"
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
MaxHeight = 20,
HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
};
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.ApplyWatermark("<h2 style='color:red;opacity:0.3'>CONFIDENTIAL</h2>",
30, VerticalAlignment.Middle, HorizontalAlignment.Center);
pdf.SaveAs("report-with-watermark.pdf");
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
MaxHeight = 25,
HtmlFragment = "<div style='text-align:center'>Annual Report 2024</div>"
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
MaxHeight = 20,
HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
};
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.ApplyWatermark("<h2 style='color:red;opacity:0.3'>CONFIDENTIAL</h2>",
30, VerticalAlignment.Middle, HorizontalAlignment.Center);
pdf.SaveAs("report-with-watermark.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter With {
.MaxHeight = 25,
.HtmlFragment = "<div style='text-align:center'>Annual Report 2024</div>"
}
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter With {
.MaxHeight = 20,
.HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
}
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.ApplyWatermark("<h2 style='color:red;opacity:0.3'>CONFIDENTIAL</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center)
pdf.SaveAs("report-with-watermark.pdf")
Rapport de test IronPDF : document PDF avec titre bleu personnalisé " Rapport de test IronPDF ", mise en forme de texte verte, tableau de données avec informations produit et filigrane rouge " CONFIDENTIEL " en diagonale.
Les espaces réservés {page} et {total-pages} dans le code HTML du pied de page sont automatiquement remplacés au moment du rendu, vous obtenez donc des numéros de page corrects sans aucun post-traitement. Vous pouvez également ajouter des numéros de page , des images de fond ou des superpositions de premier plan , ainsi que des tampons de texte ou d'image personnalisés .
Comment utiliser les supports d'impression CSS pour le contrôle de la mise en page des PDF ?
Pour garantir que votre sortie PDF corresponde aux attentes, utilisez les règles CSS @media print et le paramètre PdfCssMediaType.Print. IronPDF prend entièrement en charge le contrôle des sauts de page et les formats de papier personnalisés :
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.ViewPortWidth = 1024;
renderer.RenderingOptions.MarginTop = 10;
renderer.RenderingOptions.MarginBottom = 10;
renderer.RenderingOptions.MarginLeft = 10;
renderer.RenderingOptions.MarginRight = 10;
string html = @"
<style>
@media print {
.no-print { display: none; }
body { font-size: 12pt; }
.page-break { page-break-after: always; }
}
@page {
size: A4;
margin: 1cm;
}
</style>
<div class='content'>
<h1>Professional Report</h1>
<div class='page-break'></div>
<h2>Section 2</h2>
</div>";
var pdf = renderer.RenderHtmlAsPdf(html);
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.ViewPortWidth = 1024;
renderer.RenderingOptions.MarginTop = 10;
renderer.RenderingOptions.MarginBottom = 10;
renderer.RenderingOptions.MarginLeft = 10;
renderer.RenderingOptions.MarginRight = 10;
string html = @"
<style>
@media print {
.no-print { display: none; }
body { font-size: 12pt; }
.page-break { page-break-after: always; }
}
@page {
size: A4;
margin: 1cm;
}
</style>
<div class='content'>
<h1>Professional Report</h1>
<div class='page-break'></div>
<h2>Section 2</h2>
</div>";
var pdf = renderer.RenderHtmlAsPdf(html);
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print
renderer.RenderingOptions.ViewPortWidth = 1024
renderer.RenderingOptions.MarginTop = 10
renderer.RenderingOptions.MarginBottom = 10
renderer.RenderingOptions.MarginLeft = 10
renderer.RenderingOptions.MarginRight = 10
Dim html As String = "
<style>
@media print {
.no-print { display: none; }
body { font-size: 12pt; }
.page-break { page-break-after: always; }
}
@page {
size: A4;
margin: 1cm;
}
</style>
<div class='content'>
<h1>Professional Report</h1>
<div class='page-break'></div>
<h2>Section 2</h2>
</div>"
Dim pdf = renderer.RenderHtmlAsPdf(html)
Visionneuse de documents PDF affichant un rapport Professional de deux pages à un Zoom de 76 %, avec le titre " Rapport Professional " en page 1 et l'en-tête " Section 2 " en page 2. Mise en page claire avec sauts de page corrects et formatage CSS appliqué.
L'utilisation de CSS d'impression garantit que vos documents PDF conservent une mise en forme professionnelle tout en masquant les éléments web inutiles tels que les menus de navigation ou les boutons interactifs. Le réglage CssMediaType = PdfCssMediaType.Print indique au moteur de rendu d'appliquer vos règles @media print plutôt que les styles d'écran, ce qui supprime généralement les décorations d'arrière-plan et ajuste la typographie pour la sortie d'impression. Vous pouvez également configurer des marges personnalisées par page et contrôler l'orientation et la rotation des pages pour les rapports grand format ou pivotés.
La spécification W3C CSS Paged Media définit comment les propriétés comme @page, page-break-before et widows doivent se comporter dans la sortie paginée. Le moteur Chrome d'IronPDF suit de près cette spécification, de sorte que les styles écrits selon la norme CSS se traduisent fidèlement dans le PDF sans ajustements manuels.
Comment gérez-vous l'authentification pour les pages protégées ?
Pour les applications sécurisées, IronPDF prend en charge diverses méthodes d'authentification, notamment les cookies , les en-têtes de requêtes HTTP et les identifiants réseau . Cela vous permet d'afficher des pages nécessitant une session connectée ou une authentification de base :
var renderer = new ChromePdfRenderer();
renderer.RequestContext.Cookies.Add(new Cookie
{
Name = "SessionId",
Value = "your-session-token",
Domain = "example.com"
});
renderer.ChromePdfRenderOptions.HttpLoginCredentials = new HttpLoginCredentials
{
Username = "user",
Password = "password"
};
var pdf = renderer.RenderUrlAsPdf("https://app.example.com/protected/report");
var renderer = new ChromePdfRenderer();
renderer.RequestContext.Cookies.Add(new Cookie
{
Name = "SessionId",
Value = "your-session-token",
Domain = "example.com"
});
renderer.ChromePdfRenderOptions.HttpLoginCredentials = new HttpLoginCredentials
{
Username = "user",
Password = "password"
};
var pdf = renderer.RenderUrlAsPdf("https://app.example.com/protected/report");
Dim renderer = New ChromePdfRenderer()
renderer.RequestContext.Cookies.Add(New Cookie With {
.Name = "SessionId",
.Value = "your-session-token",
.Domain = "example.com"
})
renderer.ChromePdfRenderOptions.HttpLoginCredentials = New HttpLoginCredentials With {
.Username = "user",
.Password = "password"
}
Dim pdf = renderer.RenderUrlAsPdf("https://app.example.com/protected/report")
Vous pouvez également chiffrer le PDF résultant avec un mot de passe propriétaire et un mot de passe utilisateur, limitant ainsi les actions telles que l'impression, la copie ou la modification. L'association du rendu basé sur l'authentification et des autorisations au niveau du PDF vous permet de contrôler à la fois qui peut générer un document et ce que les destinataires peuvent en faire une fois qu'ils l'ont reçu.
Dans les environnements Enterprise , envisagez d'utiliser l' API de rendu asynchrone lors de la génération de PDF dans les gestionnaires de requêtes Web. Le rendu asynchrone permet de garder le pool de threads ASP.NET libre pendant que le moteur Chrome traite le document, ce qui améliore le débit en cas de charge simultanée. La bibliothèque prend également en charge le rendu multithread pour les scénarios de génération de documents par lots.
Pourquoi le moteur de rendu Chrome est-il important pour la conversion de HTML en PDF ?
La plupart des bibliothèques de génération de PDF fonctionnent en analysant elles-mêmes le HTML à l'aide d'un moteur personnalisé. Cela signifie qu'elles ne prennent en charge qu'un sous-ensemble de propriétés CSS, ne permettent pas l'exécution de JavaScript et peinent à gérer les techniques de mise en page modernes telles que CSS Grid ou Flexbox. IronPDF adopte une approche différente en intégrant le moteur Chrome — la même technologie qui alimente le navigateur Google Chrome.
Concrètement, cela signifie que toute page HTML qui s'affiche correctement dans Chrome sera correctement rendue en PDF via IronPDF. Cela élimine une catégorie courante de bugs où le rendu PDF diffère de l'apparence attendue car le moteur de rendu interprète le CSS différemment du navigateur utilisé par le développeur lors de la conception.
La documentation MDN Web Docs sur les médias paginés CSS et la documentation ASP.NET Core de Microsoft décrivent toutes deux les fonctionnalités prises en charge par IronPDF grâce à son architecture basée sur Chrome. Les développeurs déjà familiarisés avec les langages HTML, CSS et JavaScript standards peuvent appliquer directement ces connaissances à la génération de PDF sans avoir à apprendre un langage de mise en page de documents supplémentaire.
Les options de rendu d'IronPDF permettent de contrôler le format du papier, les marges, l'exécution de JavaScript et les délais de rendu. La bibliothèque gère le texte UTF-8 et les jeux de caractères internationaux, les polices Web référencées via Google Fonts ou des fichiers locaux, et peut même convertir des documents Markdown en PDF . Pour répondre aux exigences de conformité en matière d'archivage ou d'accessibilité, il prend en charge les formats de sortie PDF/A et PDF/UA . La bibliothèque fonctionne sous Windows, Linux et macOS et se déploie sur Azure et AWS sans configuration supplémentaire.
Quelles sont vos prochaines étapes ?
La conversion de HTML en PDF dans ASP.NET C# avec IronPDF offre à votre application un pipeline de génération de documents fiable et conforme aux navigateurs. Les trois méthodes de rendu (chaîne HTML, fichier HTML et URL) couvrent l'ensemble des sources de contenu que vous rencontrerez en pratique. Des fonctionnalités avancées telles que les en-têtes, les pieds de page, les filigranes et les styles CSS d'impression vous permettent de produire un rendu Professional sans post-traitement manuel du PDF.
L'étape suivante consiste à installer le package NuGet et à exécuter l'exemple de démarrage rapide de la première section de ce guide. Ensuite, consultez le tutoriel complet sur les PDF en C# pour une présentation plus détaillée de la structure des documents, ou reportez-vous au guide d'édition de PDF pour apprendre à fusionner, diviser, annoter et extraire du contenu de PDF existants.
Si votre projet cible Blazor, le tutoriel Blazor PDF décrit l'intégration côté serveur et WebAssembly. Pour les projets MVC, le guide PDF MVC Core et le guide Razor Pages couvrent le rendu basé sur des modèles avec des vues .cshtml. Pour le débogage et l'optimisation des performances, IronPDF fournit une journalisation personnalisée et des conseils de performance qui aident à identifier les goulots d'étranglement dans les flux de travail de génération de documents à volume élevé.
Démarrez un essai gratuit pour tester toutes les fonctionnalités de la bibliothèque dans votre propre projet avant de souscrire à une licence. Pour les déploiements en production, des options de licence sont disponibles pour les développeurs individuels, les équipes et les scénarios de redistribution en Enterprise .
Questions Fréquemment Posées
Comment convertir du HTML au PDF dans ASP.NET Core ?
Installez IronPDF via NuGet, créez une instance ChromePdfRenderer, et appelez RenderHtmlAsPdf avec votre chaîne HTML. Le moteur de rendu renvoie un PdfDocument dont les BinaryData peuvent être diffusés au navigateur.
Qu'est-ce qui fait qu'IronPDF est adapté à la conversion de HTML en PDF ?
IronPDF intègre le moteur de rendu de Chrome, donc toute page HTML qui s'affiche correctement dans Chrome se rend correctement en tant que PDF. Cela inclut le CSS3, le contenu rendu par JavaScript, les polices web, et les mises en page réactives.
Est-il possible de générer des factures et des rapports à l'aide d'IronPDF for .NET en ASP.NET ?
Oui. Créez une chaîne HTML à partir de votre modèle de données, passez-la à RenderHtmlAsPdf, et retournez les BinaryData en tant que téléchargement de fichier. IronPDF préserve la mise en forme des tableaux, les polices personnalisées, et le style CSS dans le rendu.
IronPDF prend-il en charge les requêtes médias d'impression CSS ?
Oui. Définissez RenderingOptions.CssMediaType = PdfCssMediaType.Print pour activer les règles @media print, qui cachent les éléments de navigation et appliquent une typographie optimisée pour la impression.
IronPDF peut-il gérer le contenu rendu par JavaScript ?
Oui. Définissez RenderingOptions.EnableJavaScript = true et utilisez WaitFor.RenderDelay pour marquer une pause après le chargement de la page, donnant au moteur JavaScript le temps de construire le DOM avant que le PDF ne soit capturé.
Comment IronPDF gère-t-il l'authentification pour les pages protégées ?
IronPDF prend en charge les cookies de session, les en-têtes HTTP, et les identifiants d'authentification de base grâce aux propriétés RequestContext.Cookies et ChromePdfRenderOptions.HttpLoginCredentials.
Quelles plateformes IronPDF prend-il en charge ?
IronPDF fonctionne sur Windows, Linux, et macOS et peut être déployé sur Azure et AWS. Il cible .NET 6, .NET 7, .NET 8, et .NET Framework 4.6.2 et versions ultérieures.
IronPDF prend-il en charge la sortie PDF/A pour l'archivage ?
Oui. IronPDF prend en charge la conformité PDF/A pour l'archivage à long terme et PDF/UA pour l'accessibilité. Ces modes de sortie peuvent être configurés via les méthodes SaveAsPdfA et SaveAsPdfUA.



