Comment rendre une chaîne HTML en PDF en C# | IronPDF

Comment convertir une chaîne HTML en PDF en C#;

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF convertit des chaînes HTML en documents PDF en C# à l'aide d'un moteur de rendu Chrome, prenant en charge tous les contenus HTML5, CSS3 et JavaScript avec une seule ligne de code pour les conversions de base. La bibliothèque offre de puissantes fonctionnalités pour créer des PDF tout en conservant une parfaite fidélité de rendu.

IronPDF permet aux développeurs de créer facilement des documents PDF en C#, F# et VB.NET pour .NET Core et .NET Framework. IronPDF prend en charge le rendu de n'importe quelle chaîne HTML en PDF, et le processus de rendu utilise une version pleinement fonctionnelle du moteur Google Chromium. Cela garantit que le contenu HTML s'affiche exactement comme il le ferait dans un navigateur web moderne, ce qui le rend idéal pour générer des rapports, des factures et des documents à partir d'un contenu HTML dynamique.

<TODO : Ajouter une image ici -->

Démarrage rapide : Convertir une chaîne HTML en PDF en quelques secondes

Transformez des chaînes HTML en fichiers PDF à l'aide d'IronPDF. Ce guide démontre comment convertir une chaîne HTML en un document PDF en C# avec un minimum de code. Parfait pour les développeurs qui ont besoin d'intégrer des fonctionnalités de rendu PDF dans leurs projets.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronPDF avec le gestionnaire de packages NuGet

    PM > Install-Package IronPdf

  2. Copiez et exécutez cet extrait de code.

    IronPdf.ChromePdfRender.StaticRenderHtmlAsPdf("<p>Hello World</p>").SaveAs("string-to-pdf.pdf");
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronPDF dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer


Comment convertir une simple chaîne HTML en PDF?

Voici un exemple d'IronPDF rendant une chaîne HTML en un PDF en utilisant la méthode RenderHtmlAsPdf. Le paramètre est une chaîne HTML à rendre en PDF. Cette méthode fait partie de la classe ChromePdfRenderer, qui offre un contrôle étendu sur les options de rendu pour vos besoins de génération de PDF.

<TODO : Ajouter une image ici -->

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf.cs
using IronPdf;

// 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");
$vbLabelText   $csharpLabel

La méthode RenderHtmlAsPdf retourne un objet PdfDocument, qui est une classe utilisée pour conserver les informations du PDF. Cet objet fournit de nombreuses méthodes de manipulation du PDF, notamment fusionner des PDF, ajouter des filigranes, et définir des options de sécurité.

Lorsqu'une chaîne HTML est obtenue à partir d'une source externe et que vous devez désactiver l'accès au disque local ou les requêtes inter-origines, attribuez la valeur true à la propriété ChromePdfRenderer.EnableWebSecurity.

Pour le contenu HTML complexe qui inclut un style CSS, améliorez vos chaînes HTML avec des styles en ligne ou faites référence à des feuilles de style externes à l'aide de la fonctionnalité Url de base et codage des actifs :

// Example with inline CSS
var styledHtml = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; border-bottom: 2px solid #0066cc; }
        p { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Professional Report</h1>
    <p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>";

var styledPdf = renderer.RenderHtmlAsPdf(styledHtml);
styledPdf.SaveAs("styled-output.pdf");
// Example with inline CSS
var styledHtml = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; border-bottom: 2px solid #0066cc; }
        p { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Professional Report</h1>
    <p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>";

var styledPdf = renderer.RenderHtmlAsPdf(styledHtml);
styledPdf.SaveAs("styled-output.pdf");
$vbLabelText   $csharpLabel

À quoi ressemble le PDF généré?

Voici le fichier que le code a produit :

Le PDF généré conserve la mise en forme et le style exacts de votre HTML, ce qui le rend parfait pour générer des rapports PDF ou convertir du contenu web en documents prêts à imprimer.

Comment puis-je inclure des ressources externes lors de la conversion de HTML en PDF?

Cet exemple montre qu'IronPDF charge une ressource image externe à partir d'un chemin de base optionnel. La définition de la propriété BaseUrlOrPath donne le chemin de fichier relatif ou le contexte d'URL pour les hyperliens, images, fichiers CSS et JavaScript. Cette fonctionnalité est essentielle lorsque vous travaillez avec des images dans des PDF ou lorsque vous devez faire référence à des ressources externes.

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-2.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// 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");
$vbLabelText   $csharpLabel

Pour les scénarios avancés impliquant des mises en page complexes ou du contenu dynamique, utilisez la prise en charge par IronPDF du rendu JavaScript :

// Example with JavaScript-generated content
var jsHtml = @"
<html>
<head>
    <script>
        window.onload = function() {
            document.getElementById('dynamic').innerHTML = 
                'Generated on: ' + new Date().toLocaleString();
        };
    </script>
</head>
<body>
    <h1>Dynamic Content Example</h1>
    <div id='dynamic'></div>
</body>
</html>";

// Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay = 500; // milliseconds
var dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, @"C:\site\");
dynamicPdf.SaveAs("dynamic-content.pdf");
// Example with JavaScript-generated content
var jsHtml = @"
<html>
<head>
    <script>
        window.onload = function() {
            document.getElementById('dynamic').innerHTML = 
                'Generated on: ' + new Date().toLocaleString();
        };
    </script>
</head>
<body>
    <h1>Dynamic Content Example</h1>
    <div id='dynamic'></div>
</body>
</html>";

// Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay = 500; // milliseconds
var dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, @"C:\site\");
dynamicPdf.SaveAs("dynamic-content.pdf");
$vbLabelText   $csharpLabel

Lorsque vous travaillez avec des ressources externes, vous pouvez être amené à gérer l'authentification ou des en-têtes spéciaux. IronPDF prend cela en charge par le biais de la fonctionnalité HTTP Request Header, ce qui vous permet d'inclure des jetons d'autorisation ou des en-têtes personnalisés lors de la récupération de ressources.

Pourquoi la définition de BasePath est-elle importante pour les ressources externes ?

Voici le fichier que le code a produit :

En définissant correctement le BasePath, vous vous assurez que toutes les références relatives dans votre HTML sont résolues correctement. Sans cela, IronPDF ne peut pas localiser les ressources externes telles que les images, les feuilles de style ou les scripts. Ceci est particulièrement important lorsque :

  1. Conversion de HTML faisant référence à des ressources du système de fichiers local
  2. Travailler avec des systèmes de gestion de contenu qui utilisent des URL relatives
  3. Migration du contenu web existant au format PDF
  4. Création de modèles utilisant des ressources partagées

Pour les ressources basées sur le web, utilisez une URL complète comme chemin de base :

// Using a web URL as base path
var webBasedPdf = renderer.RenderHtmlAsPdf(
    "<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>", 
    "https://mywebsite.com"
);
// Using a web URL as base path
var webBasedPdf = renderer.RenderHtmlAsPdf(
    "<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>", 
    "https://mywebsite.com"
);
$vbLabelText   $csharpLabel

Pour un contrôle accru du processus de génération de PDF, explorez la documentation complète d'IronPDF sur les marges personnalisées, l'orientation des pages et la compression des PDF afin d'optimiser vos fichiers de sortie pour divers cas d'utilisation.

Questions Fréquemment Posées

Comment convertir une simple chaîne HTML en PDF en C# ?

Vous pouvez convertir une chaîne HTML en PDF en utilisant la classe ChromePdfRenderer d'IronPDF avec la méthode RenderHtmlAsPdf. Il suffit d'instancier le moteur de rendu, de transmettre votre chaîne HTML à la méthode et d'enregistrer l'objet PdfDocument qui en résulte. IronPDF utilise un moteur de rendu Chrome pour garantir une fidélité parfaite.

Quel est le moteur de rendu utilisé pour la conversion de HTML en PDF ?

IronPDF utilise une version entièrement fonctionnelle du moteur Google Chromium pour le rendu de HTML en PDF. Cela garantit que votre contenu HTML, y compris HTML5, CSS3 et JavaScript, s'affiche exactement comme il le ferait dans un navigateur web moderne.

Puis-je convertir du HTML avec un style CSS en PDF ?

Oui, IronPDF prend en charge la conversion de HTML avec des styles CSS en PDF. Vous pouvez utiliser des styles en ligne directement dans votre chaîne HTML ou référencer des feuilles de style externes en utilisant la fonction Base URLs & Asset Encoding pour assurer un rendu correct du contenu stylisé.

Quel est le moyen le plus rapide de convertir HTML en PDF ?

Le moyen le plus rapide consiste à utiliser la méthode statique d'IronPdf : IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("Votre HTML").SaveAs("sortie.pdf"). Cette simple ligne de code convertit votre chaîne HTML et l'enregistre en tant que fichier PDF.

Comment gérer les ressources externes lors de la conversion de chaînes HTML ?

IronPDF vous permet de configurer le chemin d'accès de base (BasePath) pour les ressources externes dans votre PDF. Cela permet de s'assurer que les images, les feuilles de style et les autres ressources référencées dans votre HTML sont correctement chargées pendant le processus de conversion.

Puis-je personnaliser la sortie PDF lors de la conversion à partir de HTML ?

Oui, IronPDF fournit des options de rendu étendues pour affiner votre sortie PDF. Vous pouvez contrôler la taille des pages, les marges, les en-têtes, les pieds de page et de nombreux autres aspects du PDF généré grâce à la classe ChromePdfRenderer.

Que puis-je faire avec le PDF généré après la conversion ?

L'objet PdfDocument d'IronPDF offre de nombreuses méthodes de manipulation des PDF, notamment la fusion de PDF, l'ajout de filigranes, la définition d'options de sécurité, etc. Le PDF converti peut être enregistré sur le disque, diffusé en continu ou traité ultérieurement selon les besoins.

Comment gérer la sécurité lors de la conversion de fichiers HTML provenant de sources externes ?

Lors de la conversion de HTML à partir de sources externes, IronPDF vous permet de définir la propriété EnableWebSecurity sur true sur le ChromePdfRenderer. Cela désactive l'accès au disque local et les requêtes inter-origines pour une sécurité accrue.

Regan Pun
Ingénieur logiciel
Regan a obtenu son diplôme de l'Université de Reading, avec une licence en ingénierie électronique. Avant de rejoindre Iron Software, ses rôles précédents le poussaient à se concentrer intensément sur des tâches uniques ; et ce qu'il apprécie le plus chez Iron Software, c'est ...
Lire la suite
Prêt à commencer?
Nuget Téléchargements 17,012,929 | Version : 2025.12 vient de sortir