Comment définir des marges personnalisées dans les PDFs C#

How to Set Custom Margins

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

Lorsque vous travaillez avec des PDFs ou tout autre type de document, il y a souvent besoin de spécifier les marges pour respecter différentes normes. Par exemple, les formats MLA et APA exigent tous deux des marges d'un pouce, tandis que certaines universités peuvent exiger des marges de 1,5 pouce pour les thèses.

Démarrage rapide : Implémentez des marges PDF personnalisées avec IronPDF)

IronPDF facilite la définition de marges personnalisées lors du rendu d'un PDF à partir de HTML — tout ce qu'il faut, c'est une simple configuration.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    new IronPdf.ChromePdfRenderer { RenderingOptions = { MarginTop = 10, MarginBottom = 10, MarginLeft = 10, MarginRight = 10, UseMarginsOnHeaderAndFooter = true } }
        .RenderHtmlAsPdf("<h1>Hello with margins!</h1>")
        .SaveAs("custom‑margins.pdf");
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer

as-heading:3(Flux de travail minimal (5 étapes):

  1. Téléchargez la bibliothèque C# IronPDF pour la configuration des marges depuis NuGet
  2. Instanciez la classe ChromePdfRenderer pour créer un fichier PDF
  3. Modifiez les valeurs de marge dans les RenderingOptions du Chrome Renderer pour la personnalisation
  4. Ajustez les marges spécifiquement pour les en-têtes et pieds de page
  5. Rendu du HTML en PDF et enregistrement du document

Exemple de configuration de marges personnalisées

Pour définir des marges personnalisées, commencez par instancier la classe ChromePdfRenderer. Avec ChromePdfRenderer, vous pouvez accéder à l’objet RenderingOptions, à partir duquel vous pouvez définir les marges spécifiques en millimètres pour le haut, le bas, la gauche et la droite, comme indiqué ci-dessous :

:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-set-margins.cs
ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 40;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
renderer.RenderingOptions.MarginBottom = 40;
Dim renderer As New ChromePdfRenderer()

renderer.RenderingOptions.MarginTop = 40
renderer.RenderingOptions.MarginLeft = 20
renderer.RenderingOptions.MarginRight = 20
renderer.RenderingOptions.MarginBottom = 40
$vbLabelText   $csharpLabel

Notez que cela s'ajoute aux marges définies dans la section style du HTML. Par exemple, dans l'exemple ci-dessous, les marges sont initialement définies à 50 mm dans le HTML, mais définir les marges pour chaque côté dans RenderingOptions ajoute 30 mm aux marges, les portant à 80 mm :

:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-set-margins-with-css.cs
const string htmlWithStyle = @"
<!DOCTYPE html>
<html>
    <head>
        <style>
            body {margin: 50mm 50mm 50mm 50mm;}
        </style>
    </head>
<body>
    <h1>Hello World!</h1>
</body>
</html>";

ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 30;
renderer.RenderingOptions.MarginLeft = 30;
renderer.RenderingOptions.MarginRight = 30;
renderer.RenderingOptions.MarginBottom = 30;

PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlWithStyle);
pdf.SaveAs("PdfWithCustomMargins.pdf");
Const htmlWithStyle As String = "
<!DOCTYPE html>
<html>
    <head>
        <style>
            body {margin: 50mm 50mm 50mm 50mm;}
        </style>
    </head>
<body>
    <h1>Hello World!</h1>
</body>
</html>"

Dim renderer As New ChromePdfRenderer()

renderer.RenderingOptions.MarginTop = 30
renderer.RenderingOptions.MarginLeft = 30
renderer.RenderingOptions.MarginRight = 30
renderer.RenderingOptions.MarginBottom = 30

Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlWithStyle)
pdf.SaveAs("PdfWithCustomMargins.pdf")
$vbLabelText   $csharpLabel

Le PDF résultant est montré ci-dessous :

Définir une marge personnalisée dans l'en-tête/pied de page

Par défaut, les marges définies dans RenderingOptions ne s'appliquent pas aux en-têtes et aux pieds de page du document. Pour définir les mêmes marges personnalisées du document dans les en-têtes et pieds de page, configurez la propriété UseMarginsOnHeaderAndFooter dans RenderingOptions :

:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-use-margins-header-footer.cs
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.All;
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.All
$vbLabelText   $csharpLabel

Il est possible de spécifier quelles marges définir dans l'en-tête et le pied de page. Pour une configuration plus détaillée, référez-vous à notre référence API complète. Quelques exemples de spécification des marges à définir sont présentés ci-dessous :

:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-use-specific-margins-header-footer.cs
// Use only the left margin from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.Left;

// Use only the left and right margins from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.LeftAndRight;
' Use only the left margin from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.Left

' Use only the left and right margins from the document.
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.LeftAndRight
$vbLabelText   $csharpLabel

Questions Fréquemment Posées

Comment puis-je définir des marges personnalisées dans un document PDF en utilisant C# ?

Vous pouvez définir des marges personnalisées dans un document PDF en utilisant la bibliothèque IronPDF en C#. Instanciez la classe ChromePdfRenderer et utilisez les RenderingOptions pour spécifier les marges en millimètres pour les côtés supérieur, inférieur, gauche et droit.

Quelles étapes sont nécessaires pour définir des marges personnalisées avec IronPDF ?

Pour définir des marges personnalisées avec IronPDF, commencez par télécharger la bibliothèque IronPDF depuis NuGet, instanciez le ChromePdfRenderer, modifiez les valeurs de marges dans les RenderingOptions, puis rendez et enregistrez le PDF.

Puis-je appliquer des marges différentes à l'en-tête et au pied de page d'un PDF ?

Oui, vous pouvez appliquer des marges différentes à l'en-tête et au pied de page d'un PDF en réglant la propriété UseMarginsOnHeaderAndFooter dans les RenderingOptions d'IronPDF.

Comment les marges CSS affectent-elles les marges définies dans IronPDF ?

Les marges CSS spécifiées dans le HTML s'ajoutent aux marges définies dans les RenderingOptions d'IronPDF. Par exemple, si le HTML a une marge de 50 mm et IronPDF ajoute 30 mm supplémentaires, la marge totale sera de 80 mm.

Existe-t-il un moyen d'apprendre à définir des marges grâce à une vidéo ?

Oui, un tutoriel vidéo est disponible sur YouTube qui fournit des conseils sur la manière de définir des marges personnalisées en utilisant IronPDF.

Les marges peuvent-elles être spécifiées en unités autres que les millimètres dans IronPDF ?

Non, IronPDF utilise principalement les millimètres pour spécifier les marges. D'autres unités ne sont pas directement prises en charge dans l'API.

Quel est le comportement par défaut des marges pour les en-têtes et pieds de page dans IronPDF ?

Par défaut, les marges spécifiées dans les RenderingOptions d'IronPDF ne s'appliquent pas aux en-têtes et pieds de page. Pour appliquer les mêmes marges, activez UseMarginsOnHeaderAndFooter.

Où puis-je trouver des exemples supplémentaires pour définir des marges personnalisées dans IronPDF ?

Pour des exemples supplémentaires sur la définition de marges personnalisées dans IronPDF, consultez la référence API complète et les exemples de code fournis dans l'article.

IronPDF est-il entièrement compatible avec .NET 10 lors de la définition de marges personnalisées ?

Oui, IronPDF est entièrement compatible avec .NET 10, y compris avec toutes les options de rendu telles que les marges personnalisées, les paramètres de marges d'en-tête et de pied de page, et l'intégration des marges HTML/CSS. Vous pouvez utiliser les mêmes modèles de code dans les projets .NET 10 sans modification.

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite
Prêt à commencer?
Nuget Téléchargements 16,154,058 | Version : 2025.11 vient de sortir