# How to Convert HTML to PDF in C# .NET Core
La conversion en PDF à partir de divers formats peut être difficile en raison des normes strictes du format PDF. La conversion peut ne pas donner un résultat identique dans de nombreux cas, surtout lorsqu'il s'agit de HTML et de la mise en forme CSS. Cependant, dans le paysage numérique d'aujourd'hui, la capacité de convertir des URL et des formulaires - y compris ceux avec HTML et CSS - est essentielle. C'est là qu'excelle IronPDF, offrant des fonctionnalités intuitives qui permettent aux développeurs de convertir un large éventail de formats en PDF avec une haute fidélité, souvent en seulement quelques lignes de code.
Avec IronPDF, vous pouvez convertir facilement HTML, DOCX, RTF, Markdown et même des images en PDF, garantissant l'intégrité de vos documents. Il prend également en charge la conversion de pages web dynamiques à partir de frameworks populaires tels que Razor, CSHTML, ASPX et XAML, éliminant les préoccupations de compatibilité et faisant d'IronPDF votre solution complète pour tous vos besoins de conversion en PDF.
En plus de la conversion simple, IronPDF offre de puissantes options de personnalisation. Vous pouvez adapter votre sortie PDF avec des marges personnalisées, des en-têtes et pieds de page pour inclure des numéros de page et ajuster les paramètres de niveaux de gris pour réduire la taille du fichier. Améliorez vos documents en intégrant des fonctionnalités supplémentaires telles qu'une table des matières, des sauts de page automatiques, et un contenu qui s'ajuste parfaitement à la taille de document souhaitée.
Dans ce tutoriel, nous explorerons ces capacités et plus encore, en fournissant des exemples de code et en mettant en avant les principales caractéristiques d'IronPDF. Préparez-vous à transformer votre processus de conversion en PDF, vous permettant de convertir, personnaliser et optimiser vos documents PDF aisément avec IronPDF.
*as-heading:2(Démarrage rapide : Convertir du HTML en PDF avec IronPDF)*
Commencez avec IronPDF pour convertir HTML en PDF aisément dans .NET Core. Avec une seule ligne de code, vous pouvez générer des PDF parfaits à partir de chaînes HTML en utilisant l'API puissante d'IronPDF. Ce guide vous montrera comment intégrer rapidement IronPDF à votre projet, permettant une génération de PDF sans faille avec une configuration minimale. Que vous convertissiez HTML, des URL ou des vues Razor, IronPDF simplifie le processus, le rendant accessible aux développeurs de tous niveaux. Commencez la conversion aujourd'hui et explorez les fonctionnalités avancées quand vous êtes prêt.
```cs
:title=Convert HTML to PDF Instantly
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello, PDF!</h1>");
```
*as-heading:2(Table des matières)*
- **Conversion PDF polyvalente**
- [PDF à partir de chaîne HTML](#anchor-pdf-from-html-string)
- [PDF à partir de fichier HTML](#anchor-pdf-from-html)
- [PDF à partir d'URL](#anchor-pdf-from-url)
- [Image en PDF](#anchor-image-to-pdf)
- [Image à partir de PDF](#anchor-image-from-pdf)
- [Convertir DOCX en PDF](#anchor-convert-docx-to-pdf)
- [Convertir RTF en PDF](#anchor-convert-rtf-to-pdf)
- [Convertir MD en PDF](#anchor-convert-md-to-pdf)
- [Convertir XML en PDF](#anchor-convert-xml-to-pdf)
- [PDF vers HTML](#anchor-pdf-to-html)
- **Page web dynamique en PDF**
- [PDF à partir de pages ASPX](#anchor-pdf-from-aspx-pages)
- [XAML en PDF (MAUI)](#anchor-xaml-to-pdf-maui)
- [Générer des rapports PDF](#anchor-generate-pdf-reports)
- [Créer des PDF dans des serveurs Blazor](#anchor-create-pdfs-in-blazor-servers)
- [Razor en PDF (Serveur Blazor)](#anchor-razor-to-pdf-blazor-servers)
- [CSHTML en PDF Aperçu](#anchor-cshtml-to-pdf)
- [CSHTML en PDF (Pages Razor)](#anchor-cshtml-to-pdf-razor-pages)
- [CSHTML en PDF (MVC Core)](#anchor-cshtml-to-pdf-mvc-core)
- [CSHTML en PDF (MVC Framework)](#anchor-cshtml-to-pdf-mvc-framework)
- [CSHTML en PDF (Sans tête)](#anchor-cshtml-to-pdf-headlessly)
- **Accessibilité Web**
- [Connexions au site web TLS & système](#anchor-tls-website-system-logins)
- [Cookies](#anchor-cookies)
- [En-tête de requête HTTP](#anchor-http-request-header)
- **Conversion PDF personnalisée**
- [Options de rendu](#anchor-rendering-options)
- [Définir des marges personnalisées](#anchor-set-custom-margin)
- [Niveaux de gris](#anchor-grayscale)
- **Affiner la mise en page du PDF**
- [Ajouter une table des matières](#anchor-add-a-table-of-contents)
- [Saut de page](#anchor-page-break)
- [Adapter à la page & Zoom](#anchor-fit-to-page-zoom)
## Conversion PDF polyvalente
### PDF à partir de chaîne HTML
Pour convertir un PDF à partir d'une chaîne HTML, nous pouvons utiliser la méthode `RenderHtmlAsPdf` pour transformer rapidement la chaîne HTML en un PDF parfait au pixel près.
```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");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/html-string-to-pdf/).
### PDF à partir de HTML
Convertissez facilement un fichier HTML en PDF avec notre méthode `RenderHtmlAsPdf` et enregistrez rapidement votre PDF parfait au pixel près.
```cs
using IronPdf;
using IronPdf.Engines.Chrome;
using IronPdf.Rendering;
var renderer = new ChromePdfRenderer
{
RenderingOptions = new ChromePdfRenderOptions
{
CssMediaType = PdfCssMediaType.Print,
MarginBottom = 0,
MarginLeft = 0,
MarginRight = 0,
MarginTop = 0,
Timeout = 120,
},
};
renderer.RenderingOptions.WaitFor.RenderDelay(50);
// Create a PDF from an existing HTML file using C#
var pdf = renderer.RenderHtmlFileAsPdf("example.html");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/html-file-to-pdf/).
### PDF à partir d'URL
Convertissez rapidement l'URL en PDF avec `RenderUrlAsPdf` en quelques lignes. Entrez l'URL en tant que paramètre et enregistrez-la facilement.
```cs
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a URL or local file path
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/url-to-pdf/).
### Image en PDF
Avez-vous une image que vous souhaitez afficher en tant que PDF ? Convertissez-le rapidement avec notre classe `ImageToPdfConverter` et appelez la méthode `ImageToPdf`.
```cs
using IronPdf;
string imagePath = "meetOurTeam.jpg";
// Convert an image to a PDF
PdfDocument pdf = ImageToPdfConverter.ImageToPdf(imagePath);
// Export the PDF
pdf.SaveAs("imageToPdf.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/image-to-pdf/).
### Image à partir de PDF
Pour le contraire de l'exemple ci-dessus, nous pouvons d'abord convertir l'entrée en PDF puis utiliser la méthode `RasterizeToImageFiles` pour convertir le PDF en images.
```cs
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/rasterize-pdf-to-images/).
### Convertir DOCX en PDF
Avez-vous déjà eu besoin de convertir facilement un fichier DOCX, comme un CV, en PDF ? IronPDF vous couvre. Appelez simplement la méthode `RenderDocxAsPDF` pour convertir.
```cs
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/docx-to-pdf/).
### Convertir RTF en PDF
Pour convertir un fichier RTF en PDF, nous appelons la méthode `RenderRtfFileAsPdf` avec le fichier RTF en entrée.
```cs
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render from RTF file
PdfDocument pdf = renderer.RenderRtfFileAsPdf("sample.rtf");
// Save the PDF
pdf.SaveAs("pdfFromRtfFile.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/rtf-to-pdf/).
### Convertir MD en PDF
Pour convertir un MD en PDF, nous pouvons appeler la méthode `RenderMarkdownFileAsPdf` avec le fichier MD en entrée.
```cs
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render from markdown file
PdfDocument pdf = renderer.RenderMarkdownFileAsPdf("sample.md");
// Save the PDF
pdf.SaveAs("pdfFromMarkdownFile.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/md-to-pdf/).
### Convertir XML en PDF
Bien que la conversion d'XML en PDF puisse être assez difficile, IronPDF relève toujours le défi et aide à convertir XML en PDF en quelques étapes. Nous commençons avec un modèle XLST puis convertissons le XML en PDF via HTML grâce à des transformations XLST. Voici une version raccourcie de l'extrait de code pour vous aider à commencer.
```cs
// XSLT template that defines the transformation from XML to HTML
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
text-align: center;
padding: 20px;
border: 1px solid #CDE7F0;
}
th{
color: white;
padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
<table style='border-collapse: collapse;'>
<thead>
<tr>
<th colspan='3'>
<img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
</th>
</tr>
</thead>
<tbody>
<tr bgcolor='#9acd32'>
<th bgcolor='#32ab90'>Title</th>
<th bgcolor='#f49400'>Feature</th>
<th bgcolor='#2a95d5'>Compatible</th>
</tr>
<xsl:for-each select='catalog/cd'>
<tr>
<td style='font-weight: bold;'><xsl:value-of select='title'/></td>
<td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
<td><xsl:value-of select='compatible'/></td>
</tr>
</xsl:for-each>
</tbody>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
";
[...]
// Create an instance of XslCompiledTransform
XslCompiledTransform transform = new XslCompiledTransform();
// Load the XSLT from a string
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
transform.Load(reader);
}
// Transform the XML to HTML
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
transform.Transform(reader, null, results);
}
// Create a renderer for converting HTML to PDF
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
// Options, headers, and footers may be set here if needed
// Render our XML as a PDF via XSLT transformation
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/xml-to-pdf/).
### PDF vers HTML
En plus de convertir divers formats en PDF, IronPDF prend également en charge l'opération inverse pour convertir les PDF en HTML. Voici un extrait de code rapide pour démontrer la fonctionnalité.
```cs
using IronPdf;
using System;
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);
// Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/pdf-to-html/).
## Page web dynamique à PDF
Avez-vous besoin que votre page web dynamique soit préservée et convertie en PDF tout en conservant la disposition et le formatage exacts ? Ne cherchez pas plus loin qu'IronPDF, qui convertit rapidement une variété de frameworks de pages web dynamiques populaires en PDF.
### PDF à partir de pages ASPX
Voici un extrait de code succinct sur la conversion de pages ASPX en PDF dans les Active Server Pages.
```cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using IronPdf;
namespace AspxToPdfTutorial
{
public partial class Invoice : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
}
}
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/aspx-to-pdf/).
### XAML en PDF (MAUI)
Pour les développeurs cherchant à créer des applications multiplateformes, .NET MAUI est un choix populaire parmi les frameworks. IronPDF prend entièrement en charge la conversion de XAML en PDF en quelques étapes.
```cs
using IronPdf.Extensions.Maui;
namespace mauiSample;
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
private void PrintToPdf(object sender, EventArgs e)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Apply HTML header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
HtmlFragment = "<h1>Header</h1>",
};
// Render PDF from Maui Page
PdfDocument pdf = renderer.RenderContentPageToPdf<MainPage, App>().Result;
pdf.SaveAs(@"C:\Users\lyty1\Downloads\contentPageToPdf.pdf");
}
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/xaml-to-pdf-maui/).
### Générer des rapports PDF
Quand il s'agit de générer des rapports PDF, les dimensions exactes et le format sont essentiels. Ainsi, IronPDF vous permet de générer des PDF facilement avec seulement quelques étapes.
```cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/csharp-pdf-reports/).
### Créer des PDF dans des serveurs Blazor
IronPDF prend en charge .NET 6, et comme il inclut des types de projet comme Blazor, cet extrait de code fournit un exemple succinct de création de PDF dans un serveur Blazor.
```csharp
@code {
// Model to bind user input
private InputHTMLModel _InputMsgModel = new InputHTMLModel();
private async Task SubmitHTML()
{
// Set your IronPDF license key
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
// Create a renderer to convert HTML to PDF
var render = new IronPdf.ChromePdfRenderer();
// Render the HTML input into a PDF document
var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);
var fileName = "iron.pdf";
// Create a stream reference for the PDF content
using var streamRef = new DotNetStreamReference(stream: doc.Stream);
// Invoke JavaScript function to download the PDF in the browser
await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
}
public class InputHTMLModel
{
public string HTML { get; set; } = "My new message";
}
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/blazor-tutorial/).
### Razor en PDF (Serveurs Blazor)
En plus de créer des PDFs dans Blazor Servers, IronPDF prend également en charge la génération de documents PDF à partir de composants Razor dans une page Blazor. Rendant la création de fichiers et de pages PDF beaucoup plus rationalisée.
```csharp
[Parameter]
public IEnumerable<PersonInfo> persons { get; set; }
public Dictionary<string, object> Parameters { get; set; } = new Dictionary<string, object>();
protected override async Task OnInitializedAsync()
{
persons = new List<PersonInfo>
{
new PersonInfo { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new PersonInfo { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new PersonInfo { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
}
private async void PrintToPdf()
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Apply text footer
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
LeftText = "{date} - {time}",
DrawDividerLine = true,
RightText = "Page {page} of {total-pages}",
Font = IronSoftware.Drawing.FontTypes.Arial,
FontSize = 11
};
Parameters.Add("persons", persons);
// Render razor component to PDF
PdfDocument pdf = renderer.RenderRazorComponentToPdf<Person>(Parameters);
File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData);
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/razor-to-pdf-blazor-server/).
### CSHTML en PDF
La conversion de CSHTML (Razor) en PDF vous permet de générer des documents professionnels, prêts à imprimer, directement depuis vos applications web. Cela est utile pour les factures, rapports, contrats ou tout contenu dynamique. IronPDF prend en charge Razor Pages, MVC Core, et MVC Framework, ainsi que le rendu sans tête, facilitant l'intégration de la génération de PDF dans vos applications .NET en seulement quelques lignes de code.
#### CSHTML en PDF (Pages Razor)
```csharp
using IronPdf.Razor.Pages;
public IActionResult OnPostAsync()
{
persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
ViewData["personList"] = persons;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render Razor Page to PDF document
PdfDocument pdf = renderer.RenderRazorToPdf(this);
Response.Headers.Add("Content-Disposition", "inline");
return File(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf");
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/cshtml-to-pdf-razor/).
#### CSHTML en PDF (MVC Core)
```csharp
public async Task<IActionResult> Persons()
{
var persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
if (_httpContextAccessor.HttpContext.Request.Method == HttpMethod.Post.Method)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render View to PDF document
PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons);
Response.Headers.Add("Content-Disposition", "inline");
// Output PDF document
return File(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf");
}
return View(persons);
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/cshtml-to-pdf-mvc-core/).
#### CSHTML en PDF (MVC Framework)
```csharp
public ActionResult Persons()
{
var persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
if (HttpContext.Request.HttpMethod == "POST")
{
// Provide the path to your view file
var viewPath = "~/Views/Home/Persons.cshtml";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render Razor view to PDF document
PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
Response.Headers.Add("Content-Disposition", "inline");
// View the PDF
return File(pdf.BinaryData, "application/pdf");
}
return View(persons);
}
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/cshtml-to-pdf-mvc-framework/).
#### CSHTML en PDF (Sans tête)
```csharp
app.MapGet("/PrintPdf", async () =>
{
// Set your IronPDF license key
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
// Enable detailed logging for troubleshooting
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
// Render the Razor view to an HTML string
string html = await RazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml");
// Create a new instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render the HTML string as a PDF document
PdfDocument pdf = renderer.RenderHtmlAsPdf(html, "./wwwroot");
// Return the PDF file as a response
return Results.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf");
});
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/cshtml-to-pdf-razor-headlessly/).
## Accessibilité Web
### Connexions au site web TLS & système
IronPDF offre une solution facile pour convertir des pages web nécessitant une authentification. Avec ses options de rendu, les utilisateurs peuvent contourner le nom d'utilisateur et le mot de passe en utilisant la propriété `ChromeHttpLoginCredntials`.
```cs
using IronPdf;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer
{
// setting login credentials to bypass basic authentication
LoginCredentials = new ChromeHttpLoginCredentials()
{
NetworkUsername = "testUser",
NetworkPassword = "testPassword"
}
};
var uri = new Uri("http://localhost:51169/Invoice");
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf(uri);
// Export PDF
pdf.SaveAs("UrlToPdfExample.Pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/logins/).
### Cookies
Appliquez des cookies à la demande de connexion supplémentaire pour vous assurer que votre session est sauvegardée ! Cela facilitera le rendu de ressources supplémentaires au sein du domaine verrouillé, le tout avec IronPDF.
```cs
using IronPdf;
// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;
ChromeHttpLoginCredentials credentials = new ChromeHttpLoginCredentials() {
NetworkUsername = "testUser",
NetworkPassword = "testPassword"
};
string uri = "http://localhost:51169/Invoice";
// Apply cookies
renderer.ApplyCookies(uri, credentials);
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/cookies/).
### En-tête de requête HTTP
En dehors des cookies, IronPDF permet également aux utilisateurs de personnaliser leur en-tête de requête HTTP avec des jetons d'autorisation et d'autres champs liés courants.
```cs
using IronPdf;
using System.Collections.Generic;
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HttpRequestHeaders = new Dictionary<string, string>
{
{ "Authorization", "Bearer test-token-123" }
};
// Render PDF from authenticated page
var pdf = renderer.RenderUrlAsPdf("https://httpbin.org/bearer");
pdf.SaveAs("output.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/http-request-header/).
## Personnaliser votre conversion PDF
### Options de rendu
IronPDF permet aux utilisateurs de personnaliser l'apparence et le format de leurs PDF générés. La classe `ChromePdfRender` qui est utilisée pour convertir divers entrées en PDFs inclut également la propriété `RenderingOptions`, permettant aux utilisateurs de contrôler l'apparence de la sortie.
```cs
using IronPdf;
// Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser
// to render HTML/CSS as a PDF document.
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Configure rendering options
// Enable printing of HTML backgrounds to ensure all styles are visible.
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
// Set HTML header content using HtmlHeaderFooter.
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
// HTML fragment to add a header at the top of every page in the PDF.
HtmlFragment = "<h1>Header Content</h1>"
};
// Set a custom paper size for the PDF in millimeters (width and height).
renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150);
// Set the top margin to zero to start the content from the very top of the page.
renderer.RenderingOptions.MarginTop = 0;
// Define a Markdown string that will be rendered as a PDF.
// Markdown text allows basic formatting like bold and italic styles.
string md = "This is some **bold** and *italic* text.";
// Render the Markdown string to a PDF document.
// The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.
PdfDocument pdf = renderer.RenderMarkdownStringAsPdf(md);
// Save the generated PDF to a file named "renderingOptions.pdf."
pdf.SaveAs("renderingOptions.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/rendering-options/).
### Définir des marges personnalisées
Vous pouvez adapter l'apparence de votre PDF de sortie en ajustant les marges, vous permettant de contrôler précisément la disposition et l'espacement.
```cs
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.MarginTop = 40;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
renderer.RenderingOptions.MarginBottom = 40;
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/custom-margins/).
### Niveaux de gris
Pour générer un PDF en niveaux de gris, nous définissons la propriété `GrayScale` à l'intérieur `RenderingOptions` sur vrai.
```cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set GrayScale to true
renderer.RenderingOptions.GrayScale = true;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironsoftware.com/");
pdf.CopyPage(0).SaveAs("test.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/color-grayscale/).
## Affiner votre mise en page PDF
### Ajouter une table des matières
Créez une table des matières dynamique avec IronPDF pour aider les lecteurs à naviguer facilement dans votre document. IronPDF gère automatiquement la table des matières avec des hyperliens vers des en-têtes tels que `h1` et `h2`. Avec cela, vous pouvez également personnaliser le style de la table des matières avec le style HTML et CSS.
```cs
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Configure render options
renderer.RenderingOptions = new ChromePdfRenderOptions
{
// Enable table of content feature
TableOfContents = TableOfContentsTypes.WithPageNumbers,
};
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableOfContent.html");
pdf.SaveAs("tableOfContents.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/table-of-contents/).
### Saut de page
Ajoutez des sauts de page entre les sections pour séparer clairement le contenu et améliorer la lisibilité de votre document. Avec IronPDF, utilisez simplement l'`div style= page-break-after` HTML pour obtenir cet effet.
```cs
using IronPdf;
const string html = @"
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div>
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("Page_Break.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/html-to-pdf-page-breaks/).
### Ajuster à la page et zoom
Besoin d'aide pour décider des dimensions du contenu afin de correspondre à une taille de papier spécifiée ? IronPDF vous couvre avec le `UseChromeDefault`, qui imite comment l'aperçu avant impression de Google Chrome adapte le contenu pour tenir sur la page.
```cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Chrome default rendering
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("chromeDefault.pdf");
```
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre [guide complet](https://ironpdf.com/how-to/viewport-zoom/).
## Conclusion
Les exemples ci-dessus montrent les capacités impressionnantes et les fonctionnalités remarquables que vous pouvez débloquer lors de la conversion de divers formats en PDFs avec IronPDF.
Si vous souhaitez demander une fonctionnalité ou avez des questions générales sur IronPDF ou la licence, veuillez [contacter notre équipe de support](/troubleshooting/engineering-request-pdf/). Nous serons plus qu'heureux de vous aider.
La conversion en PDF à partir de divers formats peut être difficile en raison des normes strictes du format PDF. La conversion peut ne pas donner un résultat identique dans de nombreux cas, surtout lorsqu'il s'agit de HTML et de la mise en forme CSS. Cependant, dans le paysage numérique d'aujourd'hui, la capacité de convertir des URL et des formulaires - y compris ceux avec HTML et CSS - est essentielle. C'est là qu'excelle IronPDF, offrant des fonctionnalités intuitives qui permettent aux développeurs de convertir un large éventail de formats en PDF avec une haute fidélité, souvent en seulement quelques lignes de code.
Avec IronPDF, vous pouvez convertir facilement HTML, DOCX, RTF, Markdown et même des images en PDF, garantissant l'intégrité de vos documents. Il prend également en charge la conversion de pages web dynamiques à partir de frameworks populaires tels que Razor, CSHTML, ASPX et XAML, éliminant les préoccupations de compatibilité et faisant d'IronPDF votre solution complète pour tous vos besoins de conversion en PDF.
En plus de la conversion simple, IronPDF offre de puissantes options de personnalisation. Vous pouvez adapter votre sortie PDF avec des marges personnalisées, des en-têtes et pieds de page pour inclure des numéros de page et ajuster les paramètres de niveaux de gris pour réduire la taille du fichier. Améliorez vos documents en intégrant des fonctionnalités supplémentaires telles qu'une table des matières, des sauts de page automatiques, et un contenu qui s'ajuste parfaitement à la taille de document souhaitée.
Dans ce tutoriel, nous explorerons ces capacités et plus encore, en fournissant des exemples de code et en mettant en avant les principales caractéristiques d'IronPDF. Préparez-vous à transformer votre processus de conversion en PDF, vous permettant de convertir, personnaliser et optimiser vos documents PDF aisément avec IronPDF.
Démarrage rapide : Convertir du HTML en PDF avec IronPDF
Commencez avec IronPDF pour convertir HTML en PDF aisément dans .NET Core. Avec une seule ligne de code, vous pouvez générer des PDF parfaits à partir de chaînes HTML en utilisant l'API puissante d'IronPDF. Ce guide vous montrera comment intégrer rapidement IronPDF à votre projet, permettant une génération de PDF sans faille avec une configuration minimale. Que vous convertissiez HTML, des URL ou des vues Razor, IronPDF simplifie le processus, le rendant accessible aux développeurs de tous niveaux. Commencez la conversion aujourd'hui et explorez les fonctionnalités avancées quand vous êtes prêt.
1Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf
Install-Package IronPdf
2Copiez et exécutez cet extrait de code.
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello, PDF!</h1>");
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello, PDF!</h1>");
C#
3Déployez pour tester sur votre environnement de production.
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit
Pour convertir un PDF à partir d'une chaîne HTML, nous pouvons utiliser la méthode RenderHtmlAsPdf pour transformer rapidement la chaîne HTML en un PDF parfait au pixel près.
using IronPdf;// Instantiate Renderervar 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 Streampdf.SaveAs("output.pdf");
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");
ImportsIronPdf' Instantiate RendererPrivate renderer = New ChromePdfRenderer()' Create a PDF from a HTML string using C#Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")' Export to a file or Streampdf.SaveAs("output.pdf")
Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
PDF à partir de HTML
Convertissez facilement un fichier HTML en PDF avec notre méthode RenderHtmlAsPdf et enregistrez rapidement votre PDF parfait au pixel près.
using IronPdf;using IronPdf.Engines.Chrome;using IronPdf.Rendering;var renderer = new ChromePdfRenderer{RenderingOptions = new ChromePdfRenderOptions {CssMediaType = PdfCssMediaType.Print,MarginBottom = 0,MarginLeft = 0,MarginRight = 0,MarginTop = 0,Timeout = 120, },};renderer.RenderingOptions.WaitFor.RenderDelay(50);// Create a PDF from an existing HTML file using C#var pdf = renderer.RenderHtmlFileAsPdf("example.html");// Export to a file or Streampdf.SaveAs("output.pdf");
using IronPdf;
using IronPdf.Engines.Chrome;
using IronPdf.Rendering;
var renderer = new ChromePdfRenderer
{
RenderingOptions = new ChromePdfRenderOptions
{
CssMediaType = PdfCssMediaType.Print,
MarginBottom = 0,
MarginLeft = 0,
MarginRight = 0,
MarginTop = 0,
Timeout = 120,
},
};
renderer.RenderingOptions.WaitFor.RenderDelay(50);
// Create a PDF from an existing HTML file using C#
var pdf = renderer.RenderHtmlFileAsPdf("example.html");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
ImportsIronPdfImportsIronPdf.Engines.ChromeImportsIronPdf.RenderingPrivate renderer = New ChromePdfRendererWith { .RenderingOptions = New ChromePdfRenderOptionsWith { .CssMediaType = PdfCssMediaType.Print, .MarginBottom = 0, .MarginLeft = 0, .MarginRight = 0, .MarginTop = 0, .Timeout = 120 }}renderer.RenderingOptions.WaitFor.RenderDelay(50)' Create a PDF from an existing HTML file using C#Dim pdf = renderer.RenderHtmlFileAsPdf("example.html")' Export to a file or Streampdf.SaveAs("output.pdf")
Imports IronPdf
Imports IronPdf.Engines.Chrome
Imports IronPdf.Rendering
Private renderer = New ChromePdfRenderer With {
.RenderingOptions = New ChromePdfRenderOptions With {
.CssMediaType = PdfCssMediaType.Print,
.MarginBottom = 0,
.MarginLeft = 0,
.MarginRight = 0,
.MarginTop = 0,
.Timeout = 120
}
}
renderer.RenderingOptions.WaitFor.RenderDelay(50)
' Create a PDF from an existing HTML file using C#
Dim pdf = renderer.RenderHtmlFileAsPdf("example.html")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
PDF à partir d'URL
Convertissez rapidement l'URL en PDF avec RenderUrlAsPdf en quelques lignes. Entrez l'URL en tant que paramètre et enregistrez-la facilement.
using IronPdf;// Instantiate Renderervar renderer = new ChromePdfRenderer();// Create a PDF from a URL or local file pathvar pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");// Export to a file or Streampdf.SaveAs("url.pdf");
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a URL or local file path
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
ImportsIronPdf' Instantiate RendererPrivate renderer = New ChromePdfRenderer()' Create a PDF from a URL or local file pathPrivate pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")' Export to a file or Streampdf.SaveAs("url.pdf")
Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Create a PDF from a URL or local file path
Private pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Export to a file or Stream
pdf.SaveAs("url.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Image en PDF
Avez-vous une image que vous souhaitez afficher en tant que PDF ? Convertissez-le rapidement avec notre classe ImageToPdfConverter et appelez la méthode ImageToPdf.
using IronPdf;string imagePath = "meetOurTeam.jpg";// Convert an image to a PDFPdfDocument pdf = ImageToPdfConverter.ImageToPdf(imagePath);// Export the PDFpdf.SaveAs("imageToPdf.pdf");
using IronPdf;
string imagePath = "meetOurTeam.jpg";
// Convert an image to a PDF
PdfDocument pdf = ImageToPdfConverter.ImageToPdf(imagePath);
// Export the PDF
pdf.SaveAs("imageToPdf.pdf");
ImportsIronPdfPrivate imagePath AsString = "meetOurTeam.jpg"' Convert an image to a PDFPrivate pdf AsPdfDocument = ImageToPdfConverter.ImageToPdf(imagePath)' Export the PDFpdf.SaveAs("imageToPdf.pdf")
Imports IronPdf
Private imagePath As String = "meetOurTeam.jpg"
' Convert an image to a PDF
Private pdf As PdfDocument = ImageToPdfConverter.ImageToPdf(imagePath)
' Export the PDF
pdf.SaveAs("imageToPdf.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Image à partir de PDF
Pour le contraire de l'exemple ci-dessus, nous pouvons d'abord convertir l'entrée en PDF puis utiliser la méthode RasterizeToImageFiles pour convertir le PDF en images.
using IronPdf;// Instantiate RendererChromePdfRenderer renderer = new ChromePdfRenderer();// Render PDF from web URLPdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");// Export images from PDFpdf.RasterizeToImageFiles("wikipage_*.png");
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png");
ImportsIronPdf' Instantiate RendererDim renderer As New ChromePdfRenderer()' Render PDF from web URLDim pdf AsPdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")' Export images from PDFpdf.RasterizeToImageFiles("wikipage_*.png")
Imports IronPdf
' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()
' Render PDF from web URL
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Convertir DOCX en PDF
Avez-vous déjà eu besoin de convertir facilement un fichier DOCX, comme un CV, en PDF ? IronPDF vous couvre. Appelez simplement la méthode RenderDocxAsPDF pour convertir.
using IronPdf;// Instantiate RendererDocxToPdfRenderer renderer = new DocxToPdfRenderer();// Render from DOCX filePdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");// Save the PDFpdf.SaveAs("pdfFromDocx.pdf");
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
ImportsIronPdf' Instantiate RendererDim renderer As New DocxToPdfRenderer()' Render from DOCX fileDim pdf AsPdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")' Save the PDFpdf.SaveAs("pdfFromDocx.pdf")
Imports IronPdf
' Instantiate Renderer
Dim renderer As New DocxToPdfRenderer()
' Render from DOCX file
Dim pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Convertir RTF en PDF
Pour convertir un fichier RTF en PDF, nous appelons la méthode RenderRtfFileAsPdf avec le fichier RTF en entrée.
using IronPdf;// Instantiate RendererChromePdfRenderer renderer = new ChromePdfRenderer();// Render from RTF filePdfDocument pdf = renderer.RenderRtfFileAsPdf("sample.rtf");// Save the PDFpdf.SaveAs("pdfFromRtfFile.pdf");
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render from RTF file
PdfDocument pdf = renderer.RenderRtfFileAsPdf("sample.rtf");
// Save the PDF
pdf.SaveAs("pdfFromRtfFile.pdf");
ImportsIronPdf' Instantiate RendererPrivate renderer As New ChromePdfRenderer()' Render from RTF filePrivate pdf AsPdfDocument = renderer.RenderRtfFileAsPdf("sample.rtf")' Save the PDFpdf.SaveAs("pdfFromRtfFile.pdf")
Imports IronPdf
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
' Render from RTF file
Private pdf As PdfDocument = renderer.RenderRtfFileAsPdf("sample.rtf")
' Save the PDF
pdf.SaveAs("pdfFromRtfFile.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Convertir MD en PDF
Pour convertir un MD en PDF, nous pouvons appeler la méthode RenderMarkdownFileAsPdf avec le fichier MD en entrée.
using IronPdf;// Instantiate RendererChromePdfRenderer renderer = new ChromePdfRenderer();// Render from markdown filePdfDocument pdf = renderer.RenderMarkdownFileAsPdf("sample.md");// Save the PDFpdf.SaveAs("pdfFromMarkdownFile.pdf");
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render from markdown file
PdfDocument pdf = renderer.RenderMarkdownFileAsPdf("sample.md");
// Save the PDF
pdf.SaveAs("pdfFromMarkdownFile.pdf");
ImportsIronPdf' Instantiate RendererPrivate renderer As New ChromePdfRenderer()' Render from markdown filePrivate pdf AsPdfDocument = renderer.RenderMarkdownFileAsPdf("sample.md")' Save the PDFpdf.SaveAs("pdfFromMarkdownFile.pdf")
Imports IronPdf
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
' Render from markdown file
Private pdf As PdfDocument = renderer.RenderMarkdownFileAsPdf("sample.md")
' Save the PDF
pdf.SaveAs("pdfFromMarkdownFile.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Convertir XML en PDF
Bien que la conversion d'XML en PDF puisse être assez difficile, IronPDF relève toujours le défi et aide à convertir XML en PDF en quelques étapes. Nous commençons avec un modèle XLST puis convertissons le XML en PDF via HTML grâce à des transformations XLST. Voici une version raccourcie de l'extrait de code pour vous aider à commencer.
// XSLT template that defines the transformation from XML to HTMLstring xslt = @"<?xml version='1.0' encoding='UTF-8'?><xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'><xsl:template match='/'><html><style>td{ text-align: center; padding: 20px; border: 1px solid #CDE7F0;}th{ color: white; padding: 20px;}</style><body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'> <table style='border-collapse: collapse;'> <thead> <tr> <th colspan='3'> <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/> </th> </tr> </thead> <tbody> <tr bgcolor='#9acd32'> <th bgcolor='#32ab90'>Title</th> <th bgcolor='#f49400'>Feature</th> <th bgcolor='#2a95d5'>Compatible</th> </tr> <xsl:for-each select='catalog/cd'> <tr> <td style='font-weight: bold;'><xsl:value-of select='title'/></td> <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td> <td><xsl:value-of select='compatible'/></td> </tr> </xsl:for-each> </tbody> </table></body></html></xsl:template></xsl:stylesheet>";[...]// Create an instance of XslCompiledTransformXslCompiledTransform transform = new XslCompiledTransform();// Load the XSLT from a stringusing (XmlReader reader = XmlReader.Create(new StringReader(xslt))){ transform.Load(reader);}// Transform the XML to HTMLStringWriter results = new StringWriter();using (XmlReader reader = XmlReader.Create(new StringReader(xml))){ transform.Transform(reader, null, results);}// Create a renderer for converting HTML to PDFIronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();// Options, headers, and footers may be set here if needed// Render our XML as a PDF via XSLT transformationrenderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
// XSLT template that defines the transformation from XML to HTML
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
text-align: center;
padding: 20px;
border: 1px solid #CDE7F0;
}
th{
color: white;
padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
<table style='border-collapse: collapse;'>
<thead>
<tr>
<th colspan='3'>
<img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
</th>
</tr>
</thead>
<tbody>
<tr bgcolor='#9acd32'>
<th bgcolor='#32ab90'>Title</th>
<th bgcolor='#f49400'>Feature</th>
<th bgcolor='#2a95d5'>Compatible</th>
</tr>
<xsl:for-each select='catalog/cd'>
<tr>
<td style='font-weight: bold;'><xsl:value-of select='title'/></td>
<td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
<td><xsl:value-of select='compatible'/></td>
</tr>
</xsl:for-each>
</tbody>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
";
[...]
// Create an instance of XslCompiledTransform
XslCompiledTransform transform = new XslCompiledTransform();
// Load the XSLT from a string
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
transform.Load(reader);
}
// Transform the XML to HTML
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
transform.Transform(reader, null, results);
}
// Create a renderer for converting HTML to PDF
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
// Options, headers, and footers may be set here if needed
// Render our XML as a PDF via XSLT transformation
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
ImportsSystem.XmlImportsSystem.IOImportsSystem.Xml.XslImportsIronPdf' XSLT template that defines the transformation from XML to HTMLDim xslt AsString = "<?xml version='1.0' encoding='UTF-8'?>" & _"<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>" & _"<xsl:template match='/'>" & _"<html>" & _"<style>" & _"td{" & _" text-align: center;" & _" padding: 20px;" & _" border: 1px solid #CDE7F0;" & _"}" & _"th{" & _" color: white;" & _" padding: 20px;" & _"}" & _"</style>" & _"<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>" & _" <table style='border-collapse: collapse;'>" & _" <thead>" & _" <tr>" & _" <th colspan='3'>" & _" <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>" & _" </th>" & _" </tr>" & _" </thead>" & _" <tbody>" & _" <tr bgcolor='#9acd32'>" & _" <th bgcolor='#32ab90'>Title</th>" & _" <th bgcolor='#f49400'>Feature</th>" & _" <th bgcolor='#2a95d5'>Compatible</th>" & _" </tr>" & _" <xsl:for-each select='catalog/cd'>" & _" <tr>" & _" <td style='font-weight: bold;'><xsl:value-of select='title'/></td>" & _" <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>" & _" <td><xsl:value-of select='compatible'/></td>" & _" </tr>" & _" </xsl:for-each>" & _" </tbody>" & _" </table>" & _"</body>" & _"</html>" & _"</xsl:template>" & _"</xsl:stylesheet>"[...]' Create an instance of XslCompiledTransformDim transform As New XslCompiledTransform()' Load the XSLT from a stringUsing reader AsXmlReader = XmlReader.Create(New StringReader(xslt)) transform.Load(reader)EndUsing' Transform the XML to HTMLDim results As New StringWriter()Using reader AsXmlReader = XmlReader.Create(New StringReader(xml)) transform.Transform(reader, Nothing, results)EndUsing' Create a renderer for converting HTML to PDFDim renderer As New ChromePdfRenderer()' Options, headers, and footers may be set here if needed' Render our XML as a PDF via XSLT transformationrenderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
Imports System.Xml
Imports System.IO
Imports System.Xml.Xsl
Imports IronPdf
' XSLT template that defines the transformation from XML to HTML
Dim xslt As String = "<?xml version='1.0' encoding='UTF-8'?>" & _
"<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>" & _
"<xsl:template match='/'>" & _
"<html>" & _
"<style>" & _
"td{" & _
" text-align: center;" & _
" padding: 20px;" & _
" border: 1px solid #CDE7F0;" & _
"}" & _
"th{" & _
" color: white;" & _
" padding: 20px;" & _
"}" & _
"</style>" & _
"<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>" & _
" <table style='border-collapse: collapse;'>" & _
" <thead>" & _
" <tr>" & _
" <th colspan='3'>" & _
" <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>" & _
" </th>" & _
" </tr>" & _
" </thead>" & _
" <tbody>" & _
" <tr bgcolor='#9acd32'>" & _
" <th bgcolor='#32ab90'>Title</th>" & _
" <th bgcolor='#f49400'>Feature</th>" & _
" <th bgcolor='#2a95d5'>Compatible</th>" & _
" </tr>" & _
" <xsl:for-each select='catalog/cd'>" & _
" <tr>" & _
" <td style='font-weight: bold;'><xsl:value-of select='title'/></td>" & _
" <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>" & _
" <td><xsl:value-of select='compatible'/></td>" & _
" </tr>" & _
" </xsl:for-each>" & _
" </tbody>" & _
" </table>" & _
"</body>" & _
"</html>" & _
"</xsl:template>" & _
"</xsl:stylesheet>"
[...]
' Create an instance of XslCompiledTransform
Dim transform As New XslCompiledTransform()
' Load the XSLT from a string
Using reader As XmlReader = XmlReader.Create(New StringReader(xslt))
transform.Load(reader)
End Using
' Transform the XML to HTML
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(xml))
transform.Transform(reader, Nothing, results)
End Using
' Create a renderer for converting HTML to PDF
Dim renderer As New ChromePdfRenderer()
' Options, headers, and footers may be set here if needed
' Render our XML as a PDF via XSLT transformation
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
PDF vers HTML
En plus de convertir divers formats en PDF, IronPDF prend également en charge l'opération inverse pour convertir les PDF en HTML. Voici un extrait de code rapide pour démontrer la fonctionnalité.
using IronPdf;using System;PdfDocument pdf = PdfDocument.FromFile("sample.pdf");// Convert PDF to HTML stringstring html = pdf.ToHtmlString();Console.WriteLine(html);// Convert PDF to HTML filepdf.SaveAsHtml("myHtml.html");
using IronPdf;
using System;
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);
// Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html");
ImportsIronPdfImportsSystemDim pdf AsPdfDocument = PdfDocument.FromFile("sample.pdf")' Convert PDF to HTML stringDim html AsString = pdf.ToHtmlString()Console.WriteLine(html)' Convert PDF to HTML filepdf.SaveAsHtml("myHtml.html")
Imports IronPdf
Imports System
Dim pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Convert PDF to HTML string
Dim html As String = pdf.ToHtmlString()
Console.WriteLine(html)
' Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Page web dynamique à PDF
Avez-vous besoin que votre page web dynamique soit préservée et convertie en PDF tout en conservant la disposition et le formatage exacts ? Ne cherchez pas plus loin qu'IronPDF, qui convertit rapidement une variété de frameworks de pages web dynamiques populaires en PDF.
PDF à partir de pages ASPX
Voici un extrait de code succinct sur la conversion de pages ASPX en PDF dans les Active Server Pages.
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using IronPdf;namespace AspxToPdfTutorial{ public partial class Invoice : System.Web.UI.Page { protected voidPage_Load(object sender, EventArgs e) {IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser); } }}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using IronPdf;
namespace AspxToPdfTutorial
{
public partial class Invoice : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
}
}
}
ImportsSystemImportsSystem.Collections.GenericImportsSystem.LinqImportsSystem.WebImportsSystem.Web.UIImportsSystem.Web.UI.WebControlsImportsIronPdfNamespaceAspxToPdfTutorialPartialPublic Class InvoiceInheritsSystem.Web.UI.PageProtected Sub Page_Load(ByVal sender AsObject, ByVal e AsEventArgs)IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser) End Sub End ClassEndNamespace
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports IronPdf
Namespace AspxToPdfTutorial
Partial Public Class Invoice
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser)
End Sub
End Class
End Namespace
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
XAML en PDF (MAUI)
Pour les développeurs cherchant à créer des applications multiplateformes, .NET MAUI est un choix populaire parmi les frameworks. IronPDF prend entièrement en charge la conversion de XAML en PDF en quelques étapes.
using IronPdf.Extensions.Maui;namespace mauiSample;public partial class MainPage : ContentPage{ publicMainPage() {InitializeComponent(); } private voidPrintToPdf(object sender, EventArgs e) { ChromePdfRenderer renderer = new ChromePdfRenderer(); // Apply HTML header renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() {HtmlFragment = "<h1>Header</h1>", }; // Render PDF from Maui Page PdfDocument pdf = renderer.RenderContentPageToPdf<MainPage, App>().Result; pdf.SaveAs(@"C:\Users\lyty1\Downloads\contentPageToPdf.pdf"); }}
using IronPdf.Extensions.Maui;
namespace mauiSample;
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
private void PrintToPdf(object sender, EventArgs e)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Apply HTML header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
HtmlFragment = "<h1>Header</h1>",
};
// Render PDF from Maui Page
PdfDocument pdf = renderer.RenderContentPageToPdf<MainPage, App>().Result;
pdf.SaveAs(@"C:\Users\lyty1\Downloads\contentPageToPdf.pdf");
}
}
ImportsIronPdf.Extensions.MauiNamespace mauiSamplePartialPublic Class MainPageInheritsContentPage Public Sub New()InitializeComponent() End Sub Private Sub PrintToPdf(ByVal sender AsObject, ByVal e AsEventArgs) Dim renderer As New ChromePdfRenderer() ' Apply HTML header renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {.HtmlFragment = "<h1>Header</h1>"} ' Render PDF from Maui Page Dim pdf AsPdfDocument = renderer.RenderContentPageToPdf(OfMainPage, App)().Result pdf.SaveAs("C:\Users\lyty1\Downloads\contentPageToPdf.pdf") End Sub End ClassEndNamespace
Imports IronPdf.Extensions.Maui
Namespace mauiSample
Partial Public Class MainPage
Inherits ContentPage
Public Sub New()
InitializeComponent()
End Sub
Private Sub PrintToPdf(ByVal sender As Object, ByVal e As EventArgs)
Dim renderer As New ChromePdfRenderer()
' Apply HTML header
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {.HtmlFragment = "<h1>Header</h1>"}
' Render PDF from Maui Page
Dim pdf As PdfDocument = renderer.RenderContentPageToPdf(Of MainPage, App)().Result
pdf.SaveAs("C:\Users\lyty1\Downloads\contentPageToPdf.pdf")
End Sub
End Class
End Namespace
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Générer des rapports PDF
Quand il s'agit de générer des rapports PDF, les dimensions exactes et le format sont essentiels. Ainsi, IronPDF vous permet de générer des PDF facilement avec seulement quelques étapes.
using IronPdf;ChromePdfRenderer renderer = new ChromePdfRenderer();renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
ImportsIronPdfPrivate renderer As New ChromePdfRenderer()renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")
Imports IronPdf
Private renderer As New ChromePdfRenderer()
renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Créer des PDF dans des serveurs Blazor
IronPDF prend en charge .NET 6, et comme il inclut des types de projet comme Blazor, cet extrait de code fournit un exemple succinct de création de PDF dans un serveur Blazor.
@code { // Model to bind user input private InputHTMLModel _InputMsgModel = new InputHTMLModel(); private async TaskSubmitHTML() { // Set your IronPDF license keyIronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"; // Create a renderer to convert HTML to PDF var render = new IronPdf.ChromePdfRenderer(); // Render the HTML input into a PDF document var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML); var fileName = "iron.pdf"; // Create a stream reference for the PDF content using var streamRef = new DotNetStreamReference(stream: doc.Stream); // Invoke JavaScript function to download the PDF in the browser awaitJS.InvokeVoidAsync("SubmitHTML", fileName, streamRef); } public class InputHTMLModel { public stringHTML { get; set; } = "My new message"; }}
@code {
// Model to bind user input
private InputHTMLModel _InputMsgModel = new InputHTMLModel();
private async Task SubmitHTML()
{
// Set your IronPDF license key
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
// Create a renderer to convert HTML to PDF
var render = new IronPdf.ChromePdfRenderer();
// Render the HTML input into a PDF document
var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);
var fileName = "iron.pdf";
// Create a stream reference for the PDF content
using var streamRef = new DotNetStreamReference(stream: doc.Stream);
// Invoke JavaScript function to download the PDF in the browser
await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
}
public class InputHTMLModel
{
public string HTML { get; set; } = "My new message";
}
}
codeIf True Then ' Model to bind user input privateInputHTMLModel _InputMsgModel = New InputHTMLModel()'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:' private async Task SubmitHTML()' {' ' Set your IronPDF license key' IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";'' ' Create a renderer to convert HTML to PDF' var render = New IronPdf.ChromePdfRenderer();'' ' Render the HTML input into a PDF document' var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);'' var fileName = "iron.pdf";'' ' Create a stream reference for the PDF content' var streamRef = New DotNetStreamReference(stream: doc.Stream);'' ' Invoke JavaScript function to download the PDF in the browser' await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);' }'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:' public class InputHTMLModel' {' public string HTML' {' get;' set;' } = "My new message";' }End If
code
If True Then
' Model to bind user input
private InputHTMLModel _InputMsgModel = New InputHTMLModel()
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
' private async Task SubmitHTML()
' {
' ' Set your IronPDF license key
' IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
'
' ' Create a renderer to convert HTML to PDF
' var render = New IronPdf.ChromePdfRenderer();
'
' ' Render the HTML input into a PDF document
' var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);
'
' var fileName = "iron.pdf";
'
' ' Create a stream reference for the PDF content
' var streamRef = New DotNetStreamReference(stream: doc.Stream);
'
' ' Invoke JavaScript function to download the PDF in the browser
' await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
' }
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
' public class InputHTMLModel
' {
' public string HTML
' {
' get;
' set;
' } = "My new message";
' }
End If
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Razor en PDF (Serveurs Blazor)
En plus de créer des PDFs dans Blazor Servers, IronPDF prend également en charge la génération de documents PDF à partir de composants Razor dans une page Blazor. Rendant la création de fichiers et de pages PDF beaucoup plus rationalisée.
[Parameter]publicIEnumerable<PersonInfo> persons { get; set; }publicDictionary<string, object> Parameters { get; set; } = new Dictionary<string, object>();protected override async TaskOnInitializedAsync(){ persons = new List<PersonInfo> { new PersonInfo { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" }, new PersonInfo { Name = "Bob", Title = "Mr.", Description = "Software Engineer" }, new PersonInfo { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" } };}private async voidPrintToPdf(){ ChromePdfRenderer renderer = new ChromePdfRenderer(); // Apply text footer renderer.RenderingOptions.TextFooter = new TextHeaderFooter() {LeftText = "{date} - {time}",DrawDividerLine = true,RightText = "Page {page} of {total-pages}",Font = IronSoftware.Drawing.FontTypes.Arial,FontSize = 11 };Parameters.Add("persons", persons); // Render razor component to PDF PdfDocument pdf = renderer.RenderRazorComponentToPdf<Person>(Parameters);File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData);}
[Parameter]
public IEnumerable<PersonInfo> persons { get; set; }
public Dictionary<string, object> Parameters { get; set; } = new Dictionary<string, object>();
protected override async Task OnInitializedAsync()
{
persons = new List<PersonInfo>
{
new PersonInfo { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new PersonInfo { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new PersonInfo { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
}
private async void PrintToPdf()
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Apply text footer
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
LeftText = "{date} - {time}",
DrawDividerLine = true,
RightText = "Page {page} of {total-pages}",
Font = IronSoftware.Drawing.FontTypes.Arial,
FontSize = 11
};
Parameters.Add("persons", persons);
// Render razor component to PDF
PdfDocument pdf = renderer.RenderRazorComponentToPdf<Person>(Parameters);
File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData);
}
<Parameter>Public Property persons AsIEnumerable(OfPersonInfo)Public Property ParametersAsDictionary(OfString, Object) = New Dictionary(OfString, Object)()ProtectedOverridesAsync Function OnInitializedAsync() AsTask persons = New List(OfPersonInfo) From { New PersonInfoWith {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"}, New PersonInfoWith {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"}, New PersonInfoWith {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"} }End FunctionPrivateAsync Sub PrintToPdf() Dim renderer As New ChromePdfRenderer() ' Apply text footer renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With { .LeftText = "{date} - {time}", .DrawDividerLine = True, .RightText = "Page {page} of {total-pages}", .Font = IronSoftware.Drawing.FontTypes.Arial, .FontSize = 11 }Parameters.Add("persons", persons) ' Render razor component to PDF Dim pdf AsPdfDocument = renderer.RenderRazorComponentToPdf(OfPerson)(Parameters)File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData)End Sub
<Parameter>
Public Property persons As IEnumerable(Of PersonInfo)
Public Property Parameters As Dictionary(Of String, Object) = New Dictionary(Of String, Object)()
Protected Overrides Async Function OnInitializedAsync() As Task
persons = New List(Of PersonInfo) From {
New PersonInfo With {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"},
New PersonInfo With {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"},
New PersonInfo With {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"}
}
End Function
Private Async Sub PrintToPdf()
Dim renderer As New ChromePdfRenderer()
' Apply text footer
renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
.LeftText = "{date} - {time}",
.DrawDividerLine = True,
.RightText = "Page {page} of {total-pages}",
.Font = IronSoftware.Drawing.FontTypes.Arial,
.FontSize = 11
}
Parameters.Add("persons", persons)
' Render razor component to PDF
Dim pdf As PdfDocument = renderer.RenderRazorComponentToPdf(Of Person)(Parameters)
File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData)
End Sub
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
CSHTML en PDF
La conversion de CSHTML (Razor) en PDF vous permet de générer des documents professionnels, prêts à imprimer, directement depuis vos applications web. Cela est utile pour les factures, rapports, contrats ou tout contenu dynamique. IronPDF prend en charge Razor Pages, MVC Core, et MVC Framework, ainsi que le rendu sans tête, facilitant l'intégration de la génération de PDF dans vos applications .NET en seulement quelques lignes de code.
CSHTML en PDF (Pages Razor)
using IronPdf.Razor.Pages;public IActionResultOnPostAsync(){ persons = new List<Person> { new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" }, new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" }, new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" } };ViewData["personList"] = persons; ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render Razor Page to PDF document PdfDocument pdf = renderer.RenderRazorToPdf(this);Response.Headers.Add("Content-Disposition", "inline"); returnFile(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf");}
using IronPdf.Razor.Pages;
public IActionResult OnPostAsync()
{
persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
ViewData["personList"] = persons;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render Razor Page to PDF document
PdfDocument pdf = renderer.RenderRazorToPdf(this);
Response.Headers.Add("Content-Disposition", "inline");
return File(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf");
}
ImportsIronPdf.Razor.PagesPublic Function OnPostAsync() AsIActionResult persons = New List(OfPerson) From { New PersonWith {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"}, New PersonWith {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"}, New PersonWith {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"} }ViewData("personList") = persons Dim renderer As New ChromePdfRenderer() ' Render Razor Page to PDF document Dim pdf AsPdfDocument = renderer.RenderRazorToPdf(Me) Response.Headers.Add("Content-Disposition", "inline") ReturnFile(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf")End Function
Imports IronPdf.Razor.Pages
Public Function OnPostAsync() As IActionResult
persons = New List(Of Person) From {
New Person With {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"},
New Person With {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"},
New Person With {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"}
}
ViewData("personList") = persons
Dim renderer As New ChromePdfRenderer()
' Render Razor Page to PDF document
Dim pdf As PdfDocument = renderer.RenderRazorToPdf(Me)
Response.Headers.Add("Content-Disposition", "inline")
Return File(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf")
End Function
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
CSHTML en PDF (MVC Core)
public async Task<IActionResult> Persons(){ var persons = new List<Person> { new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" }, new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" }, new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" } }; if (_httpContextAccessor.HttpContext.Request.Method == HttpMethod.Post.Method) { ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render View to PDF document PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons);Response.Headers.Add("Content-Disposition", "inline"); // Output PDF document returnFile(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf"); } returnView(persons);}
public async Task<IActionResult> Persons()
{
var persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
if (_httpContextAccessor.HttpContext.Request.Method == HttpMethod.Post.Method)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render View to PDF document
PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons);
Response.Headers.Add("Content-Disposition", "inline");
// Output PDF document
return File(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf");
}
return View(persons);
}
PublicAsync Function Persons() AsTask(OfIActionResult) Dim persons = New List(OfPerson) From { New PersonWith {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"}, New PersonWith {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"}, New PersonWith {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"} } If _httpContextAccessor.HttpContext.Request.Method = HttpMethod.Post.MethodThen Dim renderer As New ChromePdfRenderer() ' Render View to PDF document Dim pdf AsPdfDocument = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons) Response.Headers.Add("Content-Disposition", "inline") ' Output PDF document ReturnFile(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf") End If ReturnView(persons)End Function
Public Async Function Persons() As Task(Of IActionResult)
Dim persons = New List(Of Person) From {
New Person With {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"},
New Person With {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"},
New Person With {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"}
}
If _httpContextAccessor.HttpContext.Request.Method = HttpMethod.Post.Method Then
Dim renderer As New ChromePdfRenderer()
' Render View to PDF document
Dim pdf As PdfDocument = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons)
Response.Headers.Add("Content-Disposition", "inline")
' Output PDF document
Return File(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf")
End If
Return View(persons)
End Function
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
CSHTML en PDF (MVC Framework)
public ActionResultPersons(){ var persons = new List<Person> { new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" }, new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" }, new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" } }; if (HttpContext.Request.HttpMethod == "POST") { // Provide the path to your view file var viewPath = "~/Views/Home/Persons.cshtml"; ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render Razor view to PDF document PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);Response.Headers.Add("Content-Disposition", "inline"); // View the PDF returnFile(pdf.BinaryData, "application/pdf"); } returnView(persons);}
public ActionResult Persons()
{
var persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
if (HttpContext.Request.HttpMethod == "POST")
{
// Provide the path to your view file
var viewPath = "~/Views/Home/Persons.cshtml";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render Razor view to PDF document
PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
Response.Headers.Add("Content-Disposition", "inline");
// View the PDF
return File(pdf.BinaryData, "application/pdf");
}
return View(persons);
}
Public Function Persons() AsActionResult Dim persons = New List(OfPerson) From { New PersonWith {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"}, New PersonWith {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"}, New PersonWith {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"} } IfHttpContext.Request.HttpMethod = "POST" Then ' Provide the path to your view file Dim viewPath = "~/Views/Home/Persons.cshtml" Dim renderer As New ChromePdfRenderer() ' Render Razor view to PDF document Dim pdf AsPdfDocument = renderer.RenderView(Me.HttpContext, viewPath, persons) Response.Headers.Add("Content-Disposition", "inline") ' View the PDF ReturnFile(pdf.BinaryData, "application/pdf") End If ReturnView(persons)End Function
Public Function Persons() As ActionResult
Dim persons = New List(Of Person) From {
New Person With {.Name = "Alice", .Title = "Mrs.", .Description = "Software Engineer"},
New Person With {.Name = "Bob", .Title = "Mr.", .Description = "Software Engineer"},
New Person With {.Name = "Charlie", .Title = "Mr.", .Description = "Software Engineer"}
}
If HttpContext.Request.HttpMethod = "POST" Then
' Provide the path to your view file
Dim viewPath = "~/Views/Home/Persons.cshtml"
Dim renderer As New ChromePdfRenderer()
' Render Razor view to PDF document
Dim pdf As PdfDocument = renderer.RenderView(Me.HttpContext, viewPath, persons)
Response.Headers.Add("Content-Disposition", "inline")
' View the PDF
Return File(pdf.BinaryData, "application/pdf")
End If
Return View(persons)
End Function
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
CSHTML en PDF (Sans tête)
app.MapGet("/PrintPdf", async () =>{ // Set your IronPDF license keyIronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"; // Enable detailed logging for troubleshootingIronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All; // Render the Razor view to an HTML string string html = awaitRazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml"); // Create a new instance of ChromePdfRenderer ChromePdfRenderer renderer = new ChromePdfRenderer(); // Render the HTML string as a PDF document PdfDocument pdf = renderer.RenderHtmlAsPdf(html, "./wwwroot"); // Return the PDF file as a response returnResults.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf");});
app.MapGet("/PrintPdf", async () =>
{
// Set your IronPDF license key
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
// Enable detailed logging for troubleshooting
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
// Render the Razor view to an HTML string
string html = await RazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml");
// Create a new instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render the HTML string as a PDF document
PdfDocument pdf = renderer.RenderHtmlAsPdf(html, "./wwwroot");
// Return the PDF file as a response
return Results.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf");
});
ImportsIronPdfImportsMicrosoft.AspNetCore.Httpapp.MapGet("/PrintPdf", Async Function() AsTask(OfIResult) ' Set your IronPDF license keyIronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01" ' Enable detailed logging for troubleshootingIronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All ' Render the Razor view to an HTML string Dim html AsString = AwaitRazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml") ' Create a new instance of ChromePdfRenderer Dim renderer As New ChromePdfRenderer() ' Render the HTML string as a PDF document Dim pdf AsPdfDocument = renderer.RenderHtmlAsPdf(html, "./wwwroot") ' Return the PDF file as a response ReturnResults.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf")End Function)
Imports IronPdf
Imports Microsoft.AspNetCore.Http
app.MapGet("/PrintPdf", Async Function() As Task(Of IResult)
' Set your IronPDF license key
IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
' Enable detailed logging for troubleshooting
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All
' Render the Razor view to an HTML string
Dim html As String = Await RazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml")
' Create a new instance of ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()
' Render the HTML string as a PDF document
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html, "./wwwroot")
' Return the PDF file as a response
Return Results.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf")
End Function)
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Ma bibliothèque préférée de ce genre est IronPDF. Elle permet une manipulation rapide et efficace des fichiers PDF. Elle dispose également de nombreuses fonctionnalités précieuses, comme l'exportation au format PDF/A et la signature numérique des documents PDF.
IronOCR signifie que nous pouvons économiser 40 000 $ par an grâce au traitement manuel, tout en améliorant la productivité et en libérant des ressources pour des tâches à fort impact. Je le recommande vivement.
IronPDF offre une solution facile pour convertir des pages web nécessitant une authentification. Avec ses options de rendu, les utilisateurs peuvent contourner le nom d'utilisateur et le mot de passe en utilisant la propriété ChromeHttpLoginCredntials.
using IronPdf;using System;ChromePdfRenderer renderer = new ChromePdfRenderer{ // setting login credentials to bypass basic authenticationLoginCredentials = new ChromeHttpLoginCredentials() {NetworkUsername = "testUser",NetworkPassword = "testPassword" }};var uri = new Uri("http://localhost:51169/Invoice");// Render web URL to PDFPdfDocument pdf = renderer.RenderUrlAsPdf(uri);// Export PDFpdf.SaveAs("UrlToPdfExample.Pdf");
using IronPdf;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer
{
// setting login credentials to bypass basic authentication
LoginCredentials = new ChromeHttpLoginCredentials()
{
NetworkUsername = "testUser",
NetworkPassword = "testPassword"
}
};
var uri = new Uri("http://localhost:51169/Invoice");
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf(uri);
// Export PDF
pdf.SaveAs("UrlToPdfExample.Pdf");
ImportsIronPdfImportsSystemPrivate renderer As New ChromePdfRendererWith { .LoginCredentials = New ChromeHttpLoginCredentials() With { .NetworkUsername = "testUser", .NetworkPassword = "testPassword" }}Private uri = New Uri("http://localhost:51169/Invoice")' Render web URL to PDFPrivate pdf AsPdfDocument = renderer.RenderUrlAsPdf(uri)' Export PDFpdf.SaveAs("UrlToPdfExample.Pdf")
Imports IronPdf
Imports System
Private renderer As New ChromePdfRenderer With {
.LoginCredentials = New ChromeHttpLoginCredentials() With {
.NetworkUsername = "testUser",
.NetworkPassword = "testPassword"
}
}
Private uri = New Uri("http://localhost:51169/Invoice")
' Render web URL to PDF
Private pdf As PdfDocument = renderer.RenderUrlAsPdf(uri)
' Export PDF
pdf.SaveAs("UrlToPdfExample.Pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Cookies
Appliquez des cookies à la demande de connexion supplémentaire pour vous assurer que votre session est sauvegardée ! Cela facilitera le rendu de ressources supplémentaires au sein du domaine verrouillé, le tout avec IronPDF.
using IronPdf;// Instantiate ChromePdfRendererChromePdfRenderer renderer = new ChromePdfRenderer();renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;ChromeHttpLoginCredentials credentials = new ChromeHttpLoginCredentials() {NetworkUsername = "testUser",NetworkPassword = "testPassword"};string uri = "http://localhost:51169/Invoice";// Apply cookiesrenderer.ApplyCookies(uri, credentials);
using IronPdf;
// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;
ChromeHttpLoginCredentials credentials = new ChromeHttpLoginCredentials() {
NetworkUsername = "testUser",
NetworkPassword = "testPassword"
};
string uri = "http://localhost:51169/Invoice";
// Apply cookies
renderer.ApplyCookies(uri, credentials);
ImportsIronPdf' Instantiate ChromePdfRendererPrivate renderer As New ChromePdfRenderer()renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.GlobalDim credentials As New ChromeHttpLoginCredentials() With { .NetworkUsername = "testUser", .NetworkPassword = "testPassword"}Dim uri AsString = "http://localhost:51169/Invoice"' Apply cookiesrenderer.ApplyCookies(uri, credentials)
Imports IronPdf
' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()
renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global
Dim credentials As New ChromeHttpLoginCredentials() With {
.NetworkUsername = "testUser",
.NetworkPassword = "testPassword"
}
Dim uri As String = "http://localhost:51169/Invoice"
' Apply cookies
renderer.ApplyCookies(uri, credentials)
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
En-tête de requête HTTP
En dehors des cookies, IronPDF permet également aux utilisateurs de personnaliser leur en-tête de requête HTTP avec des jetons d'autorisation et d'autres champs liés courants.
using IronPdf;using System.Collections.Generic;var renderer = new ChromePdfRenderer();renderer.RenderingOptions.HttpRequestHeaders = new Dictionary<string, string>{ { "Authorization", "Bearer test-token-123" }};// Render PDF from authenticated pagevar pdf = renderer.RenderUrlAsPdf("https://httpbin.org/bearer");pdf.SaveAs("output.pdf");
using IronPdf;
using System.Collections.Generic;
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HttpRequestHeaders = new Dictionary<string, string>
{
{ "Authorization", "Bearer test-token-123" }
};
// Render PDF from authenticated page
var pdf = renderer.RenderUrlAsPdf("https://httpbin.org/bearer");
pdf.SaveAs("output.pdf");
ImportsIronPdfImportsSystem.Collections.GenericDim renderer = New ChromePdfRenderer()renderer.RenderingOptions.HttpRequestHeaders = New Dictionary(OfString, String) From { {"Authorization", "Bearer test-token-123"}}' Render PDF from authenticated pageDim pdf = renderer.RenderUrlAsPdf("https://httpbin.org/bearer")pdf.SaveAs("output.pdf")
Imports IronPdf
Imports System.Collections.Generic
Dim renderer = New ChromePdfRenderer()
renderer.RenderingOptions.HttpRequestHeaders = New Dictionary(Of String, String) From {
{"Authorization", "Bearer test-token-123"}
}
' Render PDF from authenticated page
Dim pdf = renderer.RenderUrlAsPdf("https://httpbin.org/bearer")
pdf.SaveAs("output.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Personnaliser votre conversion PDF
Options de rendu
IronPDF permet aux utilisateurs de personnaliser l'apparence et le format de leurs PDF générés. La classe ChromePdfRender qui est utilisée pour convertir divers entrées en PDFs inclut également la propriété RenderingOptions, permettant aux utilisateurs de contrôler l'apparence de la sortie.
using IronPdf;// Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser// to render HTML/CSS as a PDF document.ChromePdfRenderer renderer = new ChromePdfRenderer();// Configure rendering options// Enable printing of HTML backgrounds to ensure all styles are visible.renderer.RenderingOptions.PrintHtmlBackgrounds = true;// Set HTML header content using HtmlHeaderFooter.renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter{ // HTML fragment to add a header at the top of every page in the PDF.HtmlFragment = "<h1>Header Content</h1>"};// Set a custom paper size for the PDF in millimeters (width and height).renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150);// Set the top margin to zero to start the content from the very top of the page.renderer.RenderingOptions.MarginTop = 0;// Define a Markdown string that will be rendered as a PDF.// Markdown text allows basic formatting like bold and italic styles.string md = "This is some **bold** and *italic* text.";// Render the Markdown string to a PDF document.// The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.PdfDocument pdf = renderer.RenderMarkdownStringAsPdf(md);// Save the generated PDF to a file named "renderingOptions.pdf."pdf.SaveAs("renderingOptions.pdf");
using IronPdf;
// Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser
// to render HTML/CSS as a PDF document.
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Configure rendering options
// Enable printing of HTML backgrounds to ensure all styles are visible.
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
// Set HTML header content using HtmlHeaderFooter.
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
// HTML fragment to add a header at the top of every page in the PDF.
HtmlFragment = "<h1>Header Content</h1>"
};
// Set a custom paper size for the PDF in millimeters (width and height).
renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150);
// Set the top margin to zero to start the content from the very top of the page.
renderer.RenderingOptions.MarginTop = 0;
// Define a Markdown string that will be rendered as a PDF.
// Markdown text allows basic formatting like bold and italic styles.
string md = "This is some **bold** and *italic* text.";
// Render the Markdown string to a PDF document.
// The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.
PdfDocument pdf = renderer.RenderMarkdownStringAsPdf(md);
// Save the generated PDF to a file named "renderingOptions.pdf."
pdf.SaveAs("renderingOptions.pdf");
ImportsIronPdf' Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser' to render HTML/CSS as a PDF document.Private renderer As New ChromePdfRenderer()' Configure rendering options' Enable printing of HTML backgrounds to ensure all styles are visible.renderer.RenderingOptions.PrintHtmlBackgrounds = True' Set HTML header content using HtmlHeaderFooter.renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooterWith {.HtmlFragment = "<h1>Header Content</h1>"}' Set a custom paper size for the PDF in millimeters (width and height).renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150)' Set the top margin to zero to start the content from the very top of the page.renderer.RenderingOptions.MarginTop = 0' Define a Markdown string that will be rendered as a PDF.' Markdown text allows basic formatting like bold and italic styles.Dim md AsString = "This is some **bold** and *italic* text."' Render the Markdown string to a PDF document.' The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.Dim pdf AsPdfDocument = renderer.RenderMarkdownStringAsPdf(md)' Save the generated PDF to a file named "renderingOptions.pdf."pdf.SaveAs("renderingOptions.pdf")
Imports IronPdf
' Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser
' to render HTML/CSS as a PDF document.
Private renderer As New ChromePdfRenderer()
' Configure rendering options
' Enable printing of HTML backgrounds to ensure all styles are visible.
renderer.RenderingOptions.PrintHtmlBackgrounds = True
' Set HTML header content using HtmlHeaderFooter.
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter With {.HtmlFragment = "<h1>Header Content</h1>"}
' Set a custom paper size for the PDF in millimeters (width and height).
renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150)
' Set the top margin to zero to start the content from the very top of the page.
renderer.RenderingOptions.MarginTop = 0
' Define a Markdown string that will be rendered as a PDF.
' Markdown text allows basic formatting like bold and italic styles.
Dim md As String = "This is some **bold** and *italic* text."
' Render the Markdown string to a PDF document.
' The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.
Dim pdf As PdfDocument = renderer.RenderMarkdownStringAsPdf(md)
' Save the generated PDF to a file named "renderingOptions.pdf."
pdf.SaveAs("renderingOptions.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Définir des marges personnalisées
Vous pouvez adapter l'apparence de votre PDF de sortie en ajustant les marges, vous permettant de contrôler précisément la disposition et l'espacement.
Dim renderer As New ChromePdfRenderer()renderer.RenderingOptions.MarginTop = 40renderer.RenderingOptions.MarginLeft = 20renderer.RenderingOptions.MarginRight = 20renderer.RenderingOptions.MarginBottom = 40
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.MarginTop = 40
renderer.RenderingOptions.MarginLeft = 20
renderer.RenderingOptions.MarginRight = 20
renderer.RenderingOptions.MarginBottom = 40
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Niveaux de gris
Pour générer un PDF en niveaux de gris, nous définissons la propriété GrayScale à l'intérieur RenderingOptions sur vrai.
using IronPdf;ChromePdfRenderer renderer = new ChromePdfRenderer();// Set GrayScale to truerenderer.RenderingOptions.GrayScale = true;PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironsoftware.com/");pdf.CopyPage(0).SaveAs("test.pdf");
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set GrayScale to true
renderer.RenderingOptions.GrayScale = true;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironsoftware.com/");
pdf.CopyPage(0).SaveAs("test.pdf");
ImportsIronPdfDim renderer As New ChromePdfRenderer()' Set GrayScale to truerenderer.RenderingOptions.GrayScale = TrueDim pdf AsPdfDocument = renderer.RenderUrlAsPdf("https://ironsoftware.com/")pdf.CopyPage(0).SaveAs("test.pdf")
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Set GrayScale to true
renderer.RenderingOptions.GrayScale = True
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://ironsoftware.com/")
pdf.CopyPage(0).SaveAs("test.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Affiner votre mise en page PDF
Ajouter une table des matières
Créez une table des matières dynamique avec IronPDF pour aider les lecteurs à naviguer facilement dans votre document. IronPDF gère automatiquement la table des matières avec des hyperliens vers des en-têtes tels que h1 et h2. Avec cela, vous pouvez également personnaliser le style de la table des matières avec le style HTML et CSS.
using IronPdf;// Instantiate RendererChromePdfRenderer renderer = new ChromePdfRenderer();// Configure render optionsrenderer.RenderingOptions = new ChromePdfRenderOptions{ // Enable table of content featureTableOfContents = TableOfContentsTypes.WithPageNumbers,};PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableOfContent.html");pdf.SaveAs("tableOfContents.pdf");
using IronPdf;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Configure render options
renderer.RenderingOptions = new ChromePdfRenderOptions
{
// Enable table of content feature
TableOfContents = TableOfContentsTypes.WithPageNumbers,
};
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableOfContent.html");
pdf.SaveAs("tableOfContents.pdf");
ImportsIronPdf' Instantiate RendererPrivate renderer As New ChromePdfRenderer()' Configure render optionsrenderer.RenderingOptions = New ChromePdfRenderOptionsWith {.TableOfContents = TableOfContentsTypes.WithPageNumbers}Dim pdf AsPdfDocument = renderer.RenderHtmlFileAsPdf("tableOfContent.html")pdf.SaveAs("tableOfContents.pdf")
Imports IronPdf
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
' Configure render options
renderer.RenderingOptions = New ChromePdfRenderOptions With {.TableOfContents = TableOfContentsTypes.WithPageNumbers}
Dim pdf As PdfDocument = renderer.RenderHtmlFileAsPdf("tableOfContent.html")
pdf.SaveAs("tableOfContents.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Saut de page
Ajoutez des sauts de page entre les sections pour séparer clairement le contenu et améliorer la lisibilité de votre document. Avec IronPDF, utilisez simplement l'div style= page-break-after HTML pour obtenir cet effet.
using IronPdf;const string html = @" <table style='border: 1px solid #000000'> <tr> <th>Company</th> <th>Product</th> </tr> <tr> <td>Iron Software</td> <td>IronPDF</td> </tr> <tr> <td>Iron Software</td> <td>IronOCR</td> </tr> </table> <div style='page-break-after: always;'> </div> <img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";var renderer = new ChromePdfRenderer();var pdf = renderer.RenderHtmlAsPdf(html);pdf.SaveAs("Page_Break.pdf");
using IronPdf;
const string html = @"
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div>
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("Page_Break.pdf");
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Ajuster à la page et zoom
Besoin d'aide pour décider des dimensions du contenu afin de correspondre à une taille de papier spécifiée ? IronPDF vous couvre avec le UseChromeDefault, qui imite comment l'aperçu avant impression de Google Chrome adapte le contenu pour tenir sur la page.
using IronPdf;ChromePdfRenderer renderer = new ChromePdfRenderer();// Chrome default renderingrenderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();// Render web URL to PDFPdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");pdf.SaveAs("chromeDefault.pdf");
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Chrome default rendering
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("chromeDefault.pdf");
ImportsIronPdfPrivate renderer As New ChromePdfRenderer()' Chrome default renderingrenderer.RenderingOptions.PaperFit.UseChromeDefaultRendering()' Render web URL to PDFDim pdf AsPdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")pdf.SaveAs("chromeDefault.pdf")
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Chrome default rendering
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering()
' Render web URL to PDF
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("chromeDefault.pdf")
Pour une explication plus détaillée de cet extrait de code et pour explorer sa fonctionnalité supplémentaire, veuillez consulter notre guide complet.
Conclusion
Les exemples ci-dessus montrent les capacités impressionnantes et les fonctionnalités remarquables que vous pouvez débloquer lors de la conversion de divers formats en PDFs avec IronPDF.
Si vous souhaitez demander une fonctionnalité ou avez des questions générales sur IronPDF ou la licence, veuillez contacter notre équipe de support. Nous serons plus qu'heureux de vous aider.
Questions Fréquemment Posées
Comment convertir HTML en PDF dans .NET Core ?
Pour convertir HTML en PDF dans .NET Core, utilisez la bibliothèque IronPDF. Tout d'abord, installez le package via NuGet. Ensuite, créez une instance de ChromePdfRenderer et utilisez la méthode RenderHtmlAsPdf pour convertir des chaînes HTML en format PDF.
Comment puis-je convertir une URL en direct en document PDF ?
Vous pouvez convertir une URL en direct en document PDF avec IronPDF en installant la bibliothèque depuis NuGet, en créant une instance de ChromePdfRenderer et en appelant la méthode RenderUrlAsPdf avec l'URL de la page web que vous souhaitez convertir.
Quelles sont les étapes pour convertir les vues Razor en PDF ?
Pour convertir des vues Razor en PDF, rendez la vue en une chaîne HTML et passez-la ensuite à la méthode RenderHtmlAsPdf d'IronPDF. Cela permet de créer des PDFs dynamiques à partir de vues MVC avec un lien complet des données.
Les fichiers PDF existants peuvent-ils être modifiés ?
Oui, les fichiers PDF existants peuvent être modifiés avec IronPDF. Utilisez PdfDocument.FromFile pour charger un PDF, puis appliquez des modifications telles que la fusion, l'ajout d'en-têtes/pieds de page, ou la modification des paramètres de sécurité.
Quelles options sont disponibles pour rendre les PDFs ?
IronPDF offre diverses options de rendu via ChromePdfRenderOptions. Vous pouvez personnaliser la taille du papier, l'orientation, les marges, et plus encore, garantissant que vos PDFs répondent aux exigences spécifiques de mise en page et de style.
Comment les PDFs peuvent-ils être déployés dans un environnement Docker ?
Déployez des PDFs dans un environnement Docker en configurant les dépendances Linux dans votre Dockerfile. Utilisez la IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig d'IronPDF pour gérer automatiquement les dépendances dans les applications conteneurisées.
Est-il possible d'ajouter des signatures numériques aux fichiers PDF ?
Oui, des signatures numériques peuvent être ajoutées aux fichiers PDF en utilisant la classe PdfSignature. En utilisant la méthode Sign et un fichier de certificat, vous pouvez assurer l'authenticité et l'intégrité du document.
Quelles fonctionnalités de sécurité IronPDF offre-t-il pour les PDFs ?
IronPDF offre des fonctionnalités de sécurité robustes incluant la protection par mot de passe, le chiffrement et le contrôle d'accès. Définissez ces fonctionnalités via la propriété SecuritySettings pour gérer les autorisations pour visualiser, imprimer et éditer.
Comment extraire du texte et des images de documents PDF ?
Le texte et les images peuvent être extraits de documents PDF en utilisant les méthodes ExtractAllText et ExtractAllImages d'IronPDF. Celles-ci permettent de traiter des données de documents entiers ou de pages spécifiques.
Comment appliquer des filigranes aux fichiers PDF ?
Les filigranes peuvent être appliqués aux fichiers PDF en utilisant la propriété Watermark d'IronPDF avec des objets HtmlStamp. Pour des besoins plus avancés, la classe HtmlStamper supporte les filigranes basés sur HTML avec des styles personnalisables.
IronPDF est-il compatible avec .NET 10, et comment puis-je l'utiliser dans un projet .NET 10 ?
Oui, IronPDF est entièrement compatible avec .NET 10 grâce à sa prise en charge multiplateforme des versions modernes de .NET. Pour l'utiliser dans un projet .NET 10, installez le package NuGet IronPDF , ajoutez une référence à votre fichier projet en ciblant net10.0 , puis utilisez des classes comme ChromePdfRenderer et des méthodes comme RenderHtmlAsPdf comme vous le feriez avec les versions précédentes de .NET. Vous bénéficierez ainsi des performances améliorées, d'une utilisation optimisée de la mémoire et des améliorations d'exécution inhérentes à .NET 10 lors du rendu ou de la manipulation de fichiers PDF.
Jacob Mellor est directeur de la technologie chez Iron Software et un ingénieur visionnaire pionnier de la technologie C# PDF. En tant que développeur à l'origine de la base de code centrale d'Iron Software, il a façonné l'architecture des produits de l'entreprise depuis sa création, la transformant aux côtés du PDG Cameron Rimington en une entreprise de plus de 50 personnes au service de la NASA, de Tesla et d'agences gouvernementales mondiales.