Comment exporter et enregistrer des PDFs dans IronPDF C
IronPDF exporte un PdfDocument rendu en PDF en C# via SaveAs pour le disque, les propriétés Stream et BinaryData pour la mémoire, et SaveAsPdfA, SaveAsPdfUA et SaveAsRevision pour un fichier d'archivage, accessible et versionné. Chaque méthode prend un document déjà rendu et l'écrit vers la destination dont votre application a besoin, que ce soit un chemin de fichier, un tampon en mémoire ou une réponse HTTP.
Ce guide parcourt chaque cible d'exportation, d'une sauvegarde de fichier en une ligne jusqu'à servir un PDF directement dans un navigateur, et les méthodes qui produisent une sortie étiquetée de conformité.
Démarrage rapide : Exporter du HTML en PDF en C#
Rendre le HTML et écrire le résultat sur le disque en une seule instruction. L'appel RenderHtmlAsPdf retourne un PdfDocument, et SaveAs le sauvegarde.
-
Installez IronPDF avec le Gestionnaire de Packages NuGet
-
Copiez et exécutez cet extrait de code.
new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>HelloPDF</h1>").SaveAs("myExportedFile.pdf"); -
Déployez pour tester sur votre environnement de production.
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit
Flux de travail minimal (5 étapes)
- Téléchargez la bibliothèque PDF pour C# depuis NuGet
- Rendre ou charger un
PdfDocument - Enregistrez sur disque avec
SaveAs, ou en mémoire avecStreametBinaryData - Servez les octets sur le web comme réponse de fichier plutôt que comme HTML
- Exportez une sortie conforme avec
SaveAsPdfA,SaveAsPdfUA, ouSaveAsRevision
Quelles sont les options pour enregistrer des PDFs ?
IronPDF sauvegarde un PdfDocument vers quatre types de destination : un fichier sur le disque, un MemoryStream en mémoire, un byte[] brut, et un fichier étiqueté pour l'accessibilité, l'archivage ou la révision incrémentielle. Les sections ci-dessous couvrent chaque cible avec un exemple testé, en commençant par l'enregistrement de fichier le plus simple et en terminant par les méthodes d'exportation spécialisées.
Comment enregistrer un PDF sur le disque
Utilisez la méthode SaveAs pour écrire un PdfDocument vers un chemin de fichier. C'est la route directe pour les applications de bureau ou tout processus serveur qui garde les PDFs sur le système de fichiers.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-2.cs
// Complete example for saving PDF to disk
using IronPdf;
// Initialize the Chrome PDF renderer
var renderer = new ChromePdfRenderer();
// Create HTML content with styling
string htmlContent = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; }
.content { line-height: 1.6; }
</style>
</head>
<body>
<h1>Invoice #12345</h1>
<div class='content'>
<p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
<p>Thank you for your business!</p>
</div>
</body>
</html>";
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Save to disk with standard method
pdf.SaveAs("invoice_12345.pdf");
// Save with password protection for sensitive documents
pdf.Password = "secure123";
pdf.SaveAs("protected_invoice_12345.pdf");
Imports IronPdf
' Initialize the Chrome PDF renderer
Dim renderer As New ChromePdfRenderer()
' Create HTML content with styling
Dim htmlContent As String = "
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; }
.content { line-height: 1.6; }
</style>
</head>
<body>
<h1>Invoice #12345</h1>
<div class='content'>
<p>Date: " & DateTime.Now.ToString("yyyy-MM-dd") & "</p>
<p>Thank you for your business!</p>
</div>
</body>
</html>"
' Render HTML to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
' Save to disk with standard method
pdf.SaveAs("invoice_12345.pdf")
' Save with password protection for sensitive documents
pdf.Password = "secure123"
pdf.SaveAs("protected_invoice_12345.pdf")
Le même exemple définit également la propriété Password avant une seconde sauvegarde, ce qui crypte le fichier de sorte qu'il ne peut pas être ouvert sans ce mot de passe. Pour un contrôle plus précis sur ce qu'un destinataire peut faire avec le fichier, consultez le guide sur les permissions et mots de passe PDF.
Sortie
Comment enregistrer un PDF dans un MemoryStream
La propriété Stream renvoie le document en tant que System.IO.MemoryStream. Utilisez-le lorsque vous devez transmettre le PDF à une autre méthode, le télécharger ou l'envoyer par e-mail sans écrire d'abord un fichier temporaire. Lisez plus sur travailler avec les flux de mémoire PDF.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-3.cs
// Example: Save PDF to MemoryStream
using IronPdf;
using System.IO;
var renderer = new ChromePdfRenderer();
// Render HTML content
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Monthly Report</h1><p>Sales figures...</p>");
// Get the PDF as a MemoryStream
MemoryStream stream = pdf.Stream;
// Example: Upload to cloud storage or database
// UploadToCloudStorage(stream);
// Example: Email as attachment without saving to disk
// EmailService.SendWithAttachment(stream, "report.pdf");
// Remember to dispose of the stream when done
stream.Dispose();
Imports IronPdf
Imports System.IO
' Example: Save PDF to MemoryStream
Dim renderer As New ChromePdfRenderer()
' Render HTML content
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Monthly Report</h1><p>Sales figures...</p>")
' Get the PDF as a MemoryStream
Dim stream As MemoryStream = pdf.Stream
' Example: Upload to cloud storage or database
' UploadToCloudStorage(stream)
' Example: Email as attachment without saving to disk
' EmailService.SendWithAttachment(stream, "report.pdf")
' Remember to dispose of the stream when done
stream.Dispose()
Sortie
Comment Enregistrer en Données Binaires
La propriété BinaryData renvoie le document en tant que byte[]. Un tableau d'octets convient aux colonnes de base de données, aux entrées de cache et aux API qui acceptent les octets bruts plutôt qu'un flux.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-4.cs
// Example: Convert PDF to binary data
using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure rendering options for better quality
renderer.RenderingOptions = new ChromePdfRenderOptions()
{
MarginTop = 20,
MarginBottom = 20,
MarginLeft = 10,
MarginRight = 10,
PaperSize = IronPdf.Rendering.PdfPaperSize.A4
};
// Render content to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Contract Document</h1>");
// Get binary data
byte[] binaryData = pdf.BinaryData;
// Example: Store in database
// database.StorePdfDocument(documentId, binaryData);
// Example: Send via API
// apiClient.UploadDocument(binaryData);
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Configure rendering options for better quality
renderer.RenderingOptions = New ChromePdfRenderOptions() With {
.MarginTop = 20,
.MarginBottom = 20,
.MarginLeft = 10,
.MarginRight = 10,
.PaperSize = IronPdf.Rendering.PdfPaperSize.A4
}
' Render content to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Contract Document</h1>")
' Get binary data
Dim binaryData As Byte() = pdf.BinaryData
' Example: Store in database
' database.StorePdfDocument(documentId, binaryData)
' Example: Send via API
' apiClient.UploadDocument(binaryData)
Lorsque vous avez besoin de la direction inverse, charger des octets dans un fichier modifiable, le guide sur convertir des PDFs en MemoryStream le couvre.
Sortie
Comment servir un PDF depuis un serveur web vers le navigateur ?
Pour retourner un PDF sur HTTP, vous envoyez les octets comme réponse de fichier, pas comme HTML. Les deux Stream et BinaryData se branchent directement dans les types de résultats de fichier qu'ASP.NET fournit, de sorte que le contrôleur rend un document et le renvoie sans jamais toucher le disque.
Comment exporter un PDF en MVC ?
Dans ASP.NET Core MVC, enveloppez le Stream dans un FileStreamResult pour demander un téléchargement, ou passez BinaryData à File pour afficher le PDF en ligne. Les deux actions ci-dessous montrent les deux. Cela s'associe naturellement avec le rendu de vues CSHTML en PDF.
// MVC controller methods for PDF export
public IActionResult DownloadInvoice(int invoiceId)
{
// Generate your HTML content
string htmlContent = GenerateInvoiceHtml(invoiceId);
// Render the PDF with IronPDF
var renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Take the PDF stream and rewind it
MemoryStream stream = pdf.Stream;
stream.Position = 0;
// Returning a FileStreamResult prompts a download in the browser
return new FileStreamResult(stream, "application/pdf")
{
FileDownloadName = $"invoice_{invoiceId}.pdf"
};
}
public IActionResult ViewInvoice(int invoiceId)
{
var renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId));
// Returning BinaryData with no filename displays the PDF inline
return File(pdf.BinaryData, "application/pdf");
}
// MVC controller methods for PDF export
public IActionResult DownloadInvoice(int invoiceId)
{
// Generate your HTML content
string htmlContent = GenerateInvoiceHtml(invoiceId);
// Render the PDF with IronPDF
var renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Take the PDF stream and rewind it
MemoryStream stream = pdf.Stream;
stream.Position = 0;
// Returning a FileStreamResult prompts a download in the browser
return new FileStreamResult(stream, "application/pdf")
{
FileDownloadName = $"invoice_{invoiceId}.pdf"
};
}
public IActionResult ViewInvoice(int invoiceId)
{
var renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId));
// Returning BinaryData with no filename displays the PDF inline
return File(pdf.BinaryData, "application/pdf");
}
Imports System.IO
Imports Microsoft.AspNetCore.Mvc
' MVC controller methods for PDF export
Public Class InvoiceController
Inherits Controller
Public Function DownloadInvoice(invoiceId As Integer) As IActionResult
' Generate your HTML content
Dim htmlContent As String = GenerateInvoiceHtml(invoiceId)
' Render the PDF with IronPDF
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
' Take the PDF stream and rewind it
Dim stream As MemoryStream = pdf.Stream
stream.Position = 0
' Returning a FileStreamResult prompts a download in the browser
Return New FileStreamResult(stream, "application/pdf") With {
.FileDownloadName = $"invoice_{invoiceId}.pdf"
}
End Function
Public Function ViewInvoice(invoiceId As Integer) As IActionResult
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId))
' Returning BinaryData with no filename displays the PDF inline
Return File(pdf.BinaryData, "application/pdf")
End Function
Private Function GenerateInvoiceHtml(invoiceId As Integer) As String
' Placeholder for the method that generates HTML content
Return String.Empty
End Function
End Class
Comment exporter un PDF en ASP.NET WebForms ?
Les applications WebForms traditionnelles ASP.NET écrivent les octets à travers l'objet Response à la place. Configurez les options de rendu une fois, tirez BinaryData, et diffusez-le au client.
// ASP.NET WebForms PDF export
protected void ExportButton_Click(object sender, EventArgs e)
{
var renderer = new ChromePdfRenderer();
// Configure rendering options
renderer.RenderingOptions = new ChromePdfRenderOptions()
{
PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
PrintHtmlBackgrounds = true,
CreatePdfFormsFromHtml = true
};
// Render from custom HTML
PdfDocument MyPdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml());
// Retrieve the PDF bytes
byte[] Binary = MyPdfDocument.BinaryData;
// Write the bytes to the response as a download
Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition",
"attachment; filename=report_" + DateTime.Now.ToString("yyyyMMdd") + ".pdf");
Context.Response.OutputStream.Write(Binary, 0, Binary.Length);
Response.Flush();
Response.End();
}
// ASP.NET WebForms PDF export
protected void ExportButton_Click(object sender, EventArgs e)
{
var renderer = new ChromePdfRenderer();
// Configure rendering options
renderer.RenderingOptions = new ChromePdfRenderOptions()
{
PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
PrintHtmlBackgrounds = true,
CreatePdfFormsFromHtml = true
};
// Render from custom HTML
PdfDocument MyPdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml());
// Retrieve the PDF bytes
byte[] Binary = MyPdfDocument.BinaryData;
// Write the bytes to the response as a download
Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition",
"attachment; filename=report_" + DateTime.Now.ToString("yyyyMMdd") + ".pdf");
Context.Response.OutputStream.Write(Binary, 0, Binary.Length);
Response.Flush();
Response.End();
}
' ASP.NET WebForms PDF export
Protected Sub ExportButton_Click(sender As Object, e As EventArgs)
Dim renderer As New ChromePdfRenderer()
' Configure rendering options
renderer.RenderingOptions = New ChromePdfRenderOptions() With {
.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
.PrintHtmlBackgrounds = True,
.CreatePdfFormsFromHtml = True
}
' Render from custom HTML
Dim MyPdfDocument As PdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml())
' Retrieve the PDF bytes
Dim Binary As Byte() = MyPdfDocument.BinaryData
' Write the bytes to the response as a download
Response.Clear()
Response.ContentType = "application/octet-stream"
Response.AddHeader("Content-Disposition", "attachment; filename=report_" & DateTime.Now.ToString("yyyyMMdd") & ".pdf")
Context.Response.OutputStream.Write(Binary, 0, Binary.Length)
Response.Flush()
Response.End()
End Sub
Iron Suite joue un rôle crucial dans nos opérations. Ce sont des outils qui augmentent l'efficacité de l'entreprise, y compris la création de plans d'étage et l'amélioration de la gestion des stocks.
Comment exporter un PDF/A, PDF/UA, et des révisions ?
Au-delà des cibles de sauvegarde générales, IronPDF écrit trois formats spécifiques à la conformité. SaveAsPdfA produit un fichier d'archivage, SaveAsPdfUA produit un fichier accessible étiqueté, et SaveAsRevision ajoute une révision incrémentielle à un document existant.
Comment enregistrer un PDF/A Archive
SaveAsPdfA écrit un fichier autonome qui respecte la norme ISO PDF/A pour un stockage à long terme, intégrant les polices et les données de couleur nécessaires à un lecteur même des années plus tard. L'argument PdfAVersions sélectionne le niveau de conformité, tel que PdfA3b.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-pdfa.cs
using IronPdf;
var renderer = new ChromePdfRenderer();
// Render the document you want to archive
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Archived Document</h1>");
// Save as a PDF/A-3b file for long-term archiving.
// PdfAVersions controls the conformance level (PdfA1b, PdfA2b, PdfA3b, PdfA4, and others).
pdf.SaveAsPdfA("archive-pdfa.pdf", IronPdf.PdfAVersions.PdfA3b);
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Render the document you want to archive
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Archived Document</h1>")
' Save as a PDF/A-3b file for long-term archiving.
' PdfAVersions controls the conformance level (PdfA1b, PdfA2b, PdfA3b, PdfA4, and others).
pdf.SaveAsPdfA("archive-pdfa.pdf", IronPdf.PdfAVersions.PdfA3b)
Sortie
Comment enregistrer un fichier PDF/UA Accessible
SaveAsPdfUA écrit un PDF étiqueté qui respecte la norme d'accessibilité PDF/UA, sur laquelle les lecteurs d'écran comptent pour naviguer dans le document. Le troisième argument définit la langue du document afin que la technologie d'assistance le lise avec la bonne voix.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-pdfua.cs
using IronPdf;
var renderer = new ChromePdfRenderer();
// Render content that should be tagged for assistive technology
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Accessible Document</h1><p>Tagged for screen readers.</p>");
// Save as a PDF/UA-1 file. The last argument sets the document's primary
// language, which screen readers use to choose the correct voice.
pdf.SaveAsPdfUA("accessible-pdfua.pdf", IronPdf.PdfUAVersions.PdfUA1, IronPdf.NaturalLanguages.English_UnitedKingdom);
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Render content that should be tagged for assistive technology
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Accessible Document</h1><p>Tagged for screen readers.</p>")
' Save as a PDF/UA-1 file. The last argument sets the document's primary
' language, which screen readers use to choose the correct voice.
pdf.SaveAsPdfUA("accessible-pdfua.pdf", IronPdf.PdfUAVersions.PdfUA1, IronPdf.NaturalLanguages.English_UnitedKingdom)
Sortie
Comment enregistrer une révision incrémentale
SaveAsRevision ajoute des modifications à un fichier au lieu de le réécrire, de sorte que les révisions antérieures, y compris toutes signatures numériques, restent intactes. Le document doit être ouvert avec ChangeTrackingModes.EnableChangeTracking pour que la sauvegarde incrémentielle fonctionne.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-revision.cs
using IronPdf;
using IronPdf.Rendering;
var renderer = new ChromePdfRenderer();
// Create and save the original revision of the document
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Versioned Document</h1>");
pdf.SaveAs("revision-base.pdf");
// Re-open with change tracking enabled so the next save appends a revision
// instead of rewriting the file. This preserves earlier signed revisions.
PdfDocument loaded = PdfDocument.FromFile("revision-base.pdf", null, null, ChangeTrackingModes.EnableChangeTracking);
// Write an incremental revision on top of the existing bytes
loaded.SaveAsRevision("revision-v2.pdf");
Imports IronPdf
Imports IronPdf.Rendering
Dim renderer As New ChromePdfRenderer()
' Create and save the original revision of the document
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Versioned Document</h1>")
pdf.SaveAs("revision-base.pdf")
' Re-open with change tracking enabled so the next save appends a revision
' instead of rewriting the file. This preserves earlier signed revisions.
Dim loaded As PdfDocument = PdfDocument.FromFile("revision-base.pdf", Nothing, Nothing, ChangeTrackingModes.EnableChangeTracking)
' Write an incremental revision on top of the existing bytes
loaded.SaveAsRevision("revision-v2.pdf")
Sortie
Comment exporter un PDF de manière asynchrone ?
Le rendu bloque le thread appelant jusqu'à ce que le moteur Chromium termine. Dans une requête web ou une interface utilisateur de bureau, appelez RenderHtmlAsPdfAsync à la place et attendez-le, puis enregistrez le document retourné avec la même méthode SaveAs. Cela libère le thread pendant que le rendu fonctionne.
:path=/static-assets/pdf/content-code-examples/how-to/export-save-pdf-csharp-async.cs
using IronPdf;
using System.Threading.Tasks;
var renderer = new ChromePdfRenderer();
// Render off the calling thread so a web request or UI stays responsive
PdfDocument pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Async Generated PDF</h1>");
// SaveAs writes the finished document to disk once the render completes
pdf.SaveAs("async-render.pdf");
Imports IronPdf
Imports System.Threading.Tasks
Dim renderer As New ChromePdfRenderer()
' Render off the calling thread so a web request or UI stays responsive
Dim pdf As PdfDocument = Await renderer.RenderHtmlAsPdfAsync("<h1>Async Generated PDF</h1>")
' SaveAs writes the finished document to disk once the render completes
pdf.SaveAs("async-render.pdf")
Sortie
Conclusion
IronPDF exporte un PdfDocument rendu sur le disque, la mémoire, une réponse HTTP, ou un fichier étiqueté, chacun par une méthode unique sur le document que vous avez déjà construit. Choisissez la cible qui correspond à l'endroit où les octets doivent aller, et appliquez SaveAsPdfA, SaveAsPdfUA, ou SaveAsRevision lorsque le résultat doit respecter une norme d'archivage, d'accessibilité ou de versionnement.
À partir d'ici, gardez les octets hors du disque entièrement avec le flux de travail PDF memory stream, ou verrouillez un fichier enregistré à l'aide de permissions et mots de passe PDF.
Questions Fréquemment Posées
Comment exporter du contenu HTML au format PDF en C# ?
Vous pouvez exporter du HTML au format PDF en C# à l'aide de la classe ChromePdfRenderer d'IronPDF. Il vous suffit de créer une instance de rendu, d'utiliser la méthode RenderHtmlAsPdf() pour convertir votre contenu HTML, puis de l'enregistrer à l'aide de la méthode SaveAs(). IronPDF facilite la conversion de chaînes HTML, de fichiers ou d'URL directement en documents PDF.
Quelles sont les différentes méthodes pour enregistrer un PDF à l'aide de C# ?
IronPDF propose plusieurs méthodes pour enregistrer les PDF : SaveAs() pour l'enregistrement sur disque, Stream pour servir les PDF dans les applications web sans créer de fichiers temporaires, et BinaryData pour obtenir le PDF sous la forme d'un tableau d'octets. Chaque méthode d'IronPDF répond à différents cas d'utilisation, du simple stockage de fichiers à la diffusion dynamique sur le web.
Puis-je enregistrer un PDF sur la mémoire plutôt que sur le disque ?
Oui, IronPDF vous permet d'enregistrer des PDF en mémoire à l'aide de System.IO.MemoryStream. Ceci est utile pour les applications web où vous voulez servir les PDF directement aux utilisateurs sans créer de fichiers temporaires sur le serveur. Vous pouvez utiliser la propriété Stream ou convertir le PDF en données binaires.
Comment ajouter une protection par mot de passe lors de l'enregistrement d'un PDF ?
IronPDF permet la protection par mot de passe en définissant la propriété Password sur l'objet PdfDocument avant l'enregistrement. Il suffit d'attribuer une chaîne de mots de passe à pdf.Password, puis d'utiliser SaveAs() pour créer un fichier PDF protégé dont l'ouverture nécessite le mot de passe.
Puis-je envoyer un PDF directement aux navigateurs web sans l'enregistrer sur le disque ?
Oui, IronPDF vous permet de servir des PDF directement aux navigateurs web en tant que données binaires. Vous pouvez utiliser la propriété BinaryData pour obtenir le PDF sous la forme d'un tableau d'octets et le servir par le biais du flux de réponse de votre application web, ce qui élimine le besoin de stockage de fichiers temporaires.
Quel est le moyen le plus simple de convertir et d'enregistrer HTML en PDF en une seule ligne ?
IronPDF propose une solution en une ligne : new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Votre HTML").SaveAs("output.pdf"). Cela permet de créer un moteur de rendu, de convertir le HTML en PDF et de l'enregistrer sur le disque en une seule instruction.

