在特定頁面新增頁首/頁尾
from ironpdf import *

# Instantiate Renderer
renderer = ChromePdfRenderer()

multi_page_html = """
    <p> This is 1st Page</p>
        <div style = 'page-break-after: always;' ></div>
        <p> This is 2nd Page</p>
    <div style = 'page-break-after: always;' ></div>
        <p> This is 3rd Page</p>
    <div style = 'page-break-after: always;' ></div>
        <p> This is 4th Page</p>
    <div style = 'page-break-after: always;' ></div>
        <p> This is 5th Page</p>
    <div style = 'page-break-after: always;' ></div>
        <p> This is 6th Page</p>
    <div style = 'page-break-after: always;' ></div>
        <p> This is 7th Page</p>
"""

# Create a PDF or Load an existing PDF using PdfDocument.FromFile()
pdf = renderer.RenderHtmlAsPdf(multi_page_html)

# Create a Header
header = HtmlHeaderFooter()
header.HtmlFragment = "<div>THIS IS HEADER {page} of {total-pages}</div>"

# Create a Page Range  0 .. 7
all_page_indexes = range(pdf.PageCount)

# Example 1
# Apply header to even page index only. (page number will be odd number because index start at 0 but page number start at 1)
even_page_indexes = [i for i in all_page_indexes if i % 2 == 0]
pdf.AddHtmlHeaders(header, 1, ToPageList(even_page_indexes))
pdf.SaveAs("even_page_indexes.pdf")

# Example 2
# Apply header to odd page index only. (page number will be even number because index start at 0 but page number start at 1)
new_pdf = renderer.RenderHtmlAsPdf(multi_page_html)
odd_page_indexes = [i for i in all_page_indexes if i % 2 != 0]
new_pdf.AddHtmlHeaders(header, 1, ToPageList(odd_page_indexes))
new_pdf.SaveAs("odd_page_indexes.pdf")

# Example 3
# Apply header to last page only.
new_pdf = renderer.RenderHtmlAsPdf(multi_page_html)
new_pdf.AddHtmlHeaders(header, 1, ToPageList([new_pdf.PageCount - 1]))
new_pdf.SaveAs("last_page_only.pdf")

# Example 4
# Apply header to first page only.
new_pdf = renderer.RenderHtmlAsPdf(multi_page_html)
new_pdf.AddHtmlHeaders(header, 1, ToPage(0))
new_pdf.SaveAs("first_page_only.pdf")

# Example 5
# Skip the first page.
new_pdf = renderer.RenderHtmlAsPdf(multi_page_html)
new_pdf.AddHtmlHeaders(header, 1, ToPageRange(1, new_pdf.PageCount))
new_pdf.SaveAs("skip_first_page.pdf")

# Example 6
# Skip first page and make second pages label as 1.
new_pdf = renderer.RenderHtmlAsPdf(multi_page_html)
new_pdf.AddHtmlHeaders(header, 0, ToPageRange(1, new_pdf.PageCount))
new_pdf.SaveAs("skip_and_dont_count_the_first_page.pdf")
pip install ironpdf
在特定頁面新增頁首/頁尾

在特定頁面新增頁首/頁尾

IronPDF for Python提供細緻的控制,可以對哪頁加上頁首和頁尾,您可以針對偶數頁、奇數頁、第一頁或最後一頁,或是單個文件內的自訂頁碼範圍。

入門指南

呈現多頁PDF,建立AddHtmlHeaders與其中一個頁面定位輔助工具選擇性地套用頁首。 使用不同的頁面列表進行多次呼叫,可以在文件的不同部分加入不同的頁首。

理解程式碼

  • HtmlHeaderFooter:包含將在每個目標頁加上的HTML片段的頁首物件。 支援像是{total-pages}這樣的動態欄位。
  • {page}合併欄位的值。
  • AddHtmlHeaders要求的頁面列表格式。
  • ToPage(index):按其0為基礎的索引定位單一頁面。
  • ToPageRange(start, end):按其0為基礎的索引定位連續範圍的頁面。

此程式碼中的頁面定位範例

範例說明
偶數頁索引頁首加在1, 3, 5…頁(0為基礎的偶數索引)
奇數頁索引頁首加在2, 4, 6…頁(0為基礎的奇數索引)
僅限最後一頁頁首僅加於最後一頁
僅限第一頁頁首僅加於第一頁
略過第一頁頁首從第二頁開始
略過並重新計算第二頁從頁碼1開始
學習如何透過IronPDF for Python將頁首和頁尾新增到PDF中!

準備開始了嗎?

版本:2026.11剛剛發布