Passer au contenu du pied de page
UTILISATION DE IRONPDF

Comment ASP pour convertir HTML en PDF

Comment les développeurs peuvent-ils convertir du HTML en PDF dans ASP.NET Core ?

Avez-vous du mal à obtenir des rapports et des factures parfaitement nets à partir de votre application ASP.NET Core ? Vous n'êtes pas seul.

Chaque développeur finit par devoir convertir du contenu web dynamique, comme des rapports ou des confirmations, en une version PDF fiable et téléchargeable. C'est une exigence fondamentale pour générer tout, des factures et rapports détaillés aux formats de documents sécurisés.

Le défi ? Obtenez ce HTML complexe, avec tous ses CSS et JavaScript, pour le rendre parfaitement sous forme de PDF. C'est là qu'IronPDF entre en jeu. Nous avons une puissante bibliothèque de fichiers PDF .NET qui utilise le moteur de rendu de Chrome pour simplifier le processus de conversion de HTML en PDF, garantissant que vous obtenez exactement ce que vous voyez à l'écran. Vous pouvez facilement convertir les formats de fichiers HTML en PDF, même les plus difficiles, avec seulement quelques lignes de code.

Prêt à voir comment ? Plongeons et examinons comment nous pouvons gérer les tâches de conversion de HTML en PDF sous ASP.NET Core avec IronPDF.

Start your free trial and begin converting HTML to PDF documents today.

Quelles sont les étapes pour commencer avec IronPDF ?

L'installation de IronPDF dans votre projet ASP.NET Core nécessite une seule commande dans la console du gestionnaire de packages NuGet :

Install-Package IronPdf

Cette bibliothèque .NET Framework fournit des capacités complètes de rendu HTML, prenant en charge les éléments HTML modernes, les styles CSS et l'exécution JavaScript. Le convertisseur PDF gère sans effort les structures HTML complexes et les propriétés CSS. Il est essentiel pour gérer divers formats de documents.

Comment convertir une chaîne HTML en document PDF ?

Convertir directement une chaîne HTML en fichier PDF est simple. Le fragment de code suivant crée un contrôleur ASP.NET Core complet qui convertit le contenu HTML en documents PDF :

using Microsoft.AspNetCore.Mvc;
using IronPdf;

namespace HtmlToPdf.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult Index()
        {
            return View();
        }

        [HttpGet]
        public IActionResult ConvertHtmlStringToPdf()
        {
            string htmlContent = @"
<html>
  <head>
    <title>IronPDF Test</title>
    <style>
      body { font-family: Arial; margin: 40px; }
      h1 { color: #2b5797; }
      table { border-collapse: collapse; width: 100%; margin-top: 20px; }
      th, td { border: 1px solid #ccc; padding: 8px; }
      th { background: #f0f0f0; }
    </style>
  </head>
  <body>
    <h1>IronPDF HTML to PDF Test</h1>
    <p>This is a simple test of converting an HTML string to PDF using IronPDF.</p>
    <table>
      <tr><th>Item</th><th>Price</th></tr>
      <tr><td>Apples</td><td>$1.50</td></tr>
      <tr><td>Bananas</td><td>$0.90</td></tr>
    </table>
    <p><em>End of test document.</em></p>
  </body>
</html>";
            // Initialize the PDF converter
            var renderer = new ChromePdfRenderer();
            // Configure default page size and other settings
            renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
            renderer.RenderingOptions.MarginTop = 20;
            renderer.RenderingOptions.MarginBottom = 20;
            // Convert HTML string to PDF document
            var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
            // Return PDF file to user, allowing them to download PDF version
            return File(pdfDocument.BinaryData, "application/pdf", "output.pdf");
        }
    }
}
using Microsoft.AspNetCore.Mvc;
using IronPdf;

namespace HtmlToPdf.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult Index()
        {
            return View();
        }

        [HttpGet]
        public IActionResult ConvertHtmlStringToPdf()
        {
            string htmlContent = @"
<html>
  <head>
    <title>IronPDF Test</title>
    <style>
      body { font-family: Arial; margin: 40px; }
      h1 { color: #2b5797; }
      table { border-collapse: collapse; width: 100%; margin-top: 20px; }
      th, td { border: 1px solid #ccc; padding: 8px; }
      th { background: #f0f0f0; }
    </style>
  </head>
  <body>
    <h1>IronPDF HTML to PDF Test</h1>
    <p>This is a simple test of converting an HTML string to PDF using IronPDF.</p>
    <table>
      <tr><th>Item</th><th>Price</th></tr>
      <tr><td>Apples</td><td>$1.50</td></tr>
      <tr><td>Bananas</td><td>$0.90</td></tr>
    </table>
    <p><em>End of test document.</em></p>
  </body>
</html>";
            // Initialize the PDF converter
            var renderer = new ChromePdfRenderer();
            // Configure default page size and other settings
            renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
            renderer.RenderingOptions.MarginTop = 20;
            renderer.RenderingOptions.MarginBottom = 20;
            // Convert HTML string to PDF document
            var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
            // Return PDF file to user, allowing them to download PDF version
            return File(pdfDocument.BinaryData, "application/pdf", "output.pdf");
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Fichier PDF de sortie

Comment convertir ASP.NET Core HTML en PDF : Figure 1 - Sortie HTML simple en PDF dans ASP.NET

Ce fragment de code appelle en interne ImportFromUrl lors du traitement des pages Web. La classe ChromePdfRenderer gère le processus de conversion, transformant le code HTML en un fichier PDF correctement formaté. Le document PDF résultant conserve tous les tags HTML, les fichiers CSS et même les styles en ligne de votre chaîne HTML directement. Ce processus est crucial pour convertir avec précision les pages PDF.

Comment convertir des fichiers HTML en fichiers PDF ?

Lors de l'utilisation de fichiers HTML existants sur votre serveur, IronPDF peut convertir le contenu du fichier HTML tout en préservant toutes les ressources liées. Cette approche fonctionne parfaitement pour la génération de documents basée sur des modèles :

using IronPdf;
using Microsoft.AspNetCore.Mvc;
using System.IO;

namespace YourApp.Controllers
{
    public class DocumentController : Controller
    {
        private readonly IWebHostEnvironment _environment;

        public DocumentController(IWebHostEnvironment environment)
        {
            _environment = environment;
        }

        [HttpGet]
        public IActionResult GeneratePdfFromTemplate(string templateName)
        {
            // Get path to HTML file
            string htmlFilePath = Path.Combine(_environment.WebRootPath, "templates", $"{templateName}.html");
            var renderer = new ChromePdfRenderer();
            // Configure rendering options
            renderer.RenderingOptions.EnableJavaScript = true;
            renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
            // Convert HTML file to PDF
            var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);
            // Add headers and footers if needed
            renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
            {
                Height = 25,
                HtmlFragment = "<div style='text-align:center'>Company Report</div>"
            };
            return File(pdf.BinaryData, "application/pdf", $"{templateName}_generated.pdf");
        }
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using System.IO;

namespace YourApp.Controllers
{
    public class DocumentController : Controller
    {
        private readonly IWebHostEnvironment _environment;

        public DocumentController(IWebHostEnvironment environment)
        {
            _environment = environment;
        }

        [HttpGet]
        public IActionResult GeneratePdfFromTemplate(string templateName)
        {
            // Get path to HTML file
            string htmlFilePath = Path.Combine(_environment.WebRootPath, "templates", $"{templateName}.html");
            var renderer = new ChromePdfRenderer();
            // Configure rendering options
            renderer.RenderingOptions.EnableJavaScript = true;
            renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
            // Convert HTML file to PDF
            var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);
            // Add headers and footers if needed
            renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
            {
                Height = 25,
                HtmlFragment = "<div style='text-align:center'>Company Report</div>"
            };
            return File(pdf.BinaryData, "application/pdf", $"{templateName}_generated.pdf");
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDF de sortie

Comment convertir ASP.NET Core HTML en PDF : Figure 2 - Fichier modèle HTML en PDF

Cette méthode lit les documents HTML à partir du disque et les convertit en fichiers PDF tout en conservant la structure HTML. Le processus de conversion PDF préserve toutes les propriétés CSS, les URL des images et même les éléments HTML complexes. Vous pourriez également rencontrer des scénarios avancés comme le réglage d'une largeur de page spécifique.

Comment IronPDF gère-t-il les pages web avec l'authentification par formulaire ?

Les applications ASP.NET Core utilisent souvent l'authentification par formulaire pour protéger le contenu. Lors de la conversion de documents HTML nécessitant une authentification, IronPDF peut transmettre des cookies d'authentification :

[Authorize]
public IActionResult ConvertAuthenticatedPage()
{
    var renderer = new ChromePdfRenderer();
    // Get current URL with authentication
    string currentUrl = $"{Request.Scheme}://{Request.Host}/SecureContent";
    // Pass authentication cookie
    var authCookie = Request.Cookies[".AspNetCore.Cookies"];
    if (!string.IsNullOrEmpty(authCookie))
    {
        renderer.RenderingOptions.CustomCssUrl = currentUrl;
    }
    // Convert authenticated page
    var pdf = renderer.RenderUrlAsPdf(currentUrl);
    return File(pdf.BinaryData, "application/pdf", "secure_document.pdf");
}
[Authorize]
public IActionResult ConvertAuthenticatedPage()
{
    var renderer = new ChromePdfRenderer();
    // Get current URL with authentication
    string currentUrl = $"{Request.Scheme}://{Request.Host}/SecureContent";
    // Pass authentication cookie
    var authCookie = Request.Cookies[".AspNetCore.Cookies"];
    if (!string.IsNullOrEmpty(authCookie))
    {
        renderer.RenderingOptions.CustomCssUrl = currentUrl;
    }
    // Convert authenticated page
    var pdf = renderer.RenderUrlAsPdf(currentUrl);
    return File(pdf.BinaryData, "application/pdf", "secure_document.pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Ce script appelant ImportFromUrl reconnaît les tables, formulaires et autres contenus HTML rendus derrière l'authentification. La vérification du code de statut HTTP garantit la récupération réussie de la page avant la conversion en PDF. Si l'URL est invalide ou n'est pas une URL, le processus échouera avec une erreur d'ouverture d'URL. Si l'URL pointe vers le même répertoire virtuel, les ressources seront correctement résolues à partir de l'URL spécifiée.

Qu'en est-il de la conversion des fichiers ASPX et du contenu dynamique ?

Pour la conversion de fichiers ASPX hérités ou de documents générés dynamiquement, IronPDF gère le processus de rendu sans problème. Le simple extrait de code crée des pages PDF à partir de n'importe quelle adresse HTTP ou HTTPS :

public IActionResult ConvertDynamicContent()
{
    var renderer = new ChromePdfRenderer();
    // Enable JavaScript for dynamic content
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.JavascriptDelay = 1000; // Wait for content to load
    // Handle various HTML tags and dynamic elements
    string dynamicHtml = GenerateDynamicHtml(); // Your method
    var pdf = renderer.RenderHtmlAsPdf(dynamicHtml);
    return File(pdf.BinaryData, "application/pdf", "dynamic.pdf");
}
public IActionResult ConvertDynamicContent()
{
    var renderer = new ChromePdfRenderer();
    // Enable JavaScript for dynamic content
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.JavascriptDelay = 1000; // Wait for content to load
    // Handle various HTML tags and dynamic elements
    string dynamicHtml = GenerateDynamicHtml(); // Your method
    var pdf = renderer.RenderHtmlAsPdf(dynamicHtml);
    return File(pdf.BinaryData, "application/pdf", "dynamic.pdf");
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Sortie

Comment convertir ASP.NET Core HTML en PDF : Figure 3 - Fichier PDF de sortie

Un problème courant dans la conversion HTML en PDF est de s'assurer que le contenu ne crée pas de sauts indésirables dans le HTML. IronPDF minimise cela.

Comment gérer les styles CSS et le rendu HTML avancé ?

Le moteur de rendu HTML d'IronPDF prend en charge les styles CSS avancés et les fonctionnalités HTML5. Lors de la conversion de HTML en PDF, la bibliothèque gère l'interprétation des propriétés CSS, y compris les mises en page complexes et les conceptions responsives. Le PDF maintient de manière programmatique la fidélité visuelle de votre page web, y compris les fichiers CSS, les balises HTML et le contenu rendu en JavaScript.

Le processus de conversion gère automatiquement les pages blanches, plusieurs pages et les ajustements de taille de page. Il peut également gérer des scénarios spécialisés comme l'inclusion d'en-têtes/pieds-de-page sur les pages impaires et paires ou uniquement sur les pages impaires suivantes, ou en gérant gracieusement les pages inexistantes. Il est conçu pour convertir facilement un contenu web complexe.

Pourquoi choisir IronPDF pour votre projet .NET ?

IronPDF se distingue comme une bibliothèque .NET complète pour la conversion HTML en PDF. Contrairement aux convertisseurs PDF de base, il offre un support complet pour les normes web modernes, gérant tout, des chaînes HTML simples aux applications web complexes avec authentification par formulaire.

La bibliothèque excelle à convertir les documents HTML tout en préservant toute la mise en forme, ce qui en fait un outil idéal pour générer des documents PDF professionnels dans vos applications .NET Core. Que vous ayez besoin de convertir des fichiers HTML, de traiter du contenu HTML ou de générer des PDF à partir de modèles de documents PDF existants, IronPDF fournit les outils nécessaires pour une conversion PDF transparente.

Téléchargez IronPDF aujourd'hui et transformez votre contenu HTML en documents PDF professionnels avec seulement quelques lignes de code. For additional support, explore the comprehensive documentation and API reference to unlock the full potential of HTML to PDF conversion in your ASP.NET Core applications.

Questions Fréquemment Posées

Comment puis-je convertir du HTML en PDF en utilisant ASP.NET Core ?

Vous pouvez convertir du HTML en PDF sous ASP.NET Core en utilisant IronPDF, qui vous permet de convertir facilement des chaînes HTML, des fichiers et même des pages web authentifiées en PDF.

Quels sont les avantages d'utiliser IronPDF pour la conversion HTML en PDF ?

IronPDF fournit une API complète et conviviale pour les développeurs pour convertir HTML en PDF, offrant des fonctionnalités telles que la compatibilité HTML5 et CSS3, la prise en charge de JavaScript et la capacité de convertir des pages web complexes en PDF de qualité professionnelle.

IronPDF peut-il gérer les chaînes HTML pour la conversion en PDF ?

Oui, IronPDF peut convertir directement des chaînes HTML en documents PDF, facilitant ainsi la génération de PDFs à partir de contenu généré dynamiquement dans des applications ASP.NET Core.

Est-il possible de convertir des pages web authentifiées en PDF en utilisant IronPDF ?

IronPDF prend en charge la conversion des pages web authentifiées en vous permettant de passer des identifiants, rendant possible la conversion de contenu sécurisé en documents PDF.

IronPDF prend-il en charge la conversion de fichiers HTML en PDF ?

Oui, IronPDF peut convertir des fichiers HTML en format PDF, offrant une flexibilité dans le traitement de divers types de contenu HTML pour la conversion.

Quel type de formatage IronPDF peut-il gérer lors de la conversion HTML en PDF ?

IronPDF prend en charge des capacités de formatage avancées, y compris les styles CSS, l'exécution de JavaScript et le rendu de mises en page complexes, garantissant que le PDF converti correspond étroitement à la mise en page HTML d'origine.

Puis-je personnaliser la sortie PDF lors de l'utilisation de IronPDF ?

IronPDF permet une personnalisation étendue de la sortie PDF, y compris la définition d'en-têtes et de pieds de page, la personnalisation des tailles de page et le contrôle des marges, garantissant que le PDF répond à vos exigences spécifiques.

Quels environnements de développement sont compatibles avec IronPDF pour la conversion HTML en PDF ?

IronPDF est compatible avec ASP.NET Core et peut être utilisé de manière transparente dans les projets C#, ce qui en fait un outil polyvalent pour les développeurs travaillant dans des environnements .NET.

Comment IronPDF garantit-il la sécurité du processus de conversion PDF ?

IronPDF peut convertir HTML en PDF de manière sécurisée en prenant en charge HTTPS et en permettant l'utilisation de références d'authentification, protégeant les informations sensibles pendant le processus de conversion.

Quelles sont les exigences système pour utiliser IronPDF dans un projet ASP.NET Core ?

IronPDF nécessite un environnement .NET et est conçu pour s'intégrer de manière fluide dans les applications ASP.NET Core, garantissant une configuration et une opération sans tracas pour les développeurs.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite