如何設定自訂邊距

Jordi related to 如何設定自訂邊距
喬迪·巴迪亞
2023年10月3日
已更新 2025年2月5日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

在處理PDF或其他任何類型的文檔時,經常需要指定邊距,以符合不同的標準。 例如,MLA和APA格式都要求1英寸的邊距,而一些大學可能需要論文的邊距為1.5英寸。

IronPDF 可以在從 HTML 渲染 PDF 時輕鬆設定自定義邊距,只需進行一些簡單的配置即可。

開始使用 IronPDF

立即在您的專案中使用IronPDF,並享受免費試用。

第一步:
green arrow pointer



設定自定邊界範例

若要設置自定義邊距,首先實例化ChromePdfRenderer類別。 使用ChromePdfRenderer,您可以訪問RenderingOptions對象,從中設置上、下、左和右的特定邊距(以毫米為單位),如下所示:

: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

請注意,這會增加設定在 HTML style 標籤中的邊距。 例如,在下面的範例中,邊距在 HTML 中最初設置為 50 毫米,但在 RenderingOptions 中為每個邊設置邊距會增加 30 毫米,使其成為 80 毫米:

: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

生成的 PDF 如下所示:

在頁首/頁尾設置自定義邊距

默認情況下,RenderingOptions 中設定的邊距不適用於文件中的頁眉和頁腳。 若要在文件的頁首和頁尾中設置相同的自訂邊距,可在RenderingOptions中配置UseMarginsOnHeaderAndFooter屬性:

: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

可以指定要在頁首和頁尾設置的邊距。 欲瞭解有關設置頁眉和頁腳邊距的完整枚舉列表,請查看我們的綜合 API 參考文件。 以下展示了如何設定邊距的一些範例:

: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
Jordi related to 在頁首/頁尾設置自定義邊距
軟體工程師
Jordi 最擅長 Python、C# 和 C++,當他不在 Iron Software 發揮技能時,他會進行遊戲編程。他負責產品測試、產品開發和研究,為持續產品改進增添了巨大的價值。多樣化的經驗使他感到挑戰和投入,他說這是與 Iron Software 合作的最喜歡的方面之一。Jordi 在佛羅里達州邁阿密長大,並在佛羅里達大學學習計算機科學和統計學。