IRONSOFTWAREHOME

如何使用C#為PDF文件新增頁碼

Curtis Chau
Curtis Chau
Updated: 2026年6月29日

IronPDF讓您可以使用佔位符字串{total-pages}輕鬆在C#中新增頁碼到PDF中的頁眉/頁腳,並選擇應用於特定頁面或部分,以增強文件導航功能。

頁碼是分配給PDF文件中每個頁面的連續數字。 它們是導航的基本組成部分,有助於讀者找到特定頁面並跟踪其位置。 頁碼也使得內容引用和參考變得簡單。 使用IronPDF,為您的PDF文件新增頁碼非常簡單。

快速入門:輕鬆為PDF文件新增頁碼

使用IronPDF為PDF文件新增頁碼。 只需少量C#程式碼,您就可以在頁眉或頁腳插入動態頁碼,自定義它們的位置,並指定它們出現在哪些頁面上。 無論是處理新PDF文件還是現有文件,IronPDF都提供了一種靈活的解決方案,以增強文件的導航和組織。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2複製並運行這段程式碼片段。

    new IronPdf.ChromePdfRenderer { RenderingOptions = { HtmlFooter = new IronPdf.HtmlHeaderFooter { HtmlFragment = "<center>{page}of{total-pages}</center>", DrawDividerLine = true } } }
         .RenderHtmlAsPdf("<h1>My multi-page document</h1><div style='page-break-after:always;'></div><h1>Page 2</h1>")
         .SaveAs("numbered-pages.pdf");
    C#
  3. 3部署以在您的實時環境中測試

    今天就開始在您的專案中使用IronPDF,透過免費試用
    arrow pointer

如何在PDF中新增基本頁碼?

使用佔位符字串HtmlHeaderFooter類,可以新增當前頁面號碼和總頁數。 當建立新的PDF文件或將HTML轉換為PDF文件需要專業格式時,這一功能是必不可少的。

using IronPdf;

// Create text header
TextHeaderFooter textHeader = new TextHeaderFooter()
{
    CenterText = "{page} of {total-pages}"
};

// Create html footer
HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"
};

// Render a new PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello World!</h1>");

// Add header and footer
pdf.AddTextHeaders(textHeader);
pdf.AddHtmlFooters(htmlFooter);

pdf.SaveAs("pdfWithPageNumber.pdf");

上面程式碼所生成的PDF文件如下所示:

您還可以通過將頁碼佔位符字串直接新增到ChromePdfRenderer的渲染選項中來加上頁眉和頁腳。 當處理渲染選項以自定義PDF輸出時,此方法很有用。

using IronPdf;

// Add header and footer to rendering options
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
    CenterText = "{page} of {total-pages}"
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"
};

string html = @"
    <h1>Hello World!</h1>
<div style='page-break-after: always;'/>
    <h1>2nd Page!</h1>";

// Render new PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);

pdf.SaveAs("applyPageNumberWithRenderingOptions.pdf");

處理複雜文件時,請考慮分頁符和自定義邊距,以確保頁碼正確顯示。

如何僅在特定頁面上新增頁碼?

使用IronPDF,您可以控制頁碼的顯示位置。 可讓它們從特定頁面開始或應用於特定組,如偶數索引頁面。 這種靈活性在生成PDF報告或處理包含不同部分的文件時非常有價值。

首先,準備PDF文件以應用頁碼:

using IronPdf;
using System.Linq;
using System.Collections.Generic;

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

// Create header
HtmlHeaderFooter header = new HtmlHeaderFooter()
{
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>"
};

// Render PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(multi_page_html);

// Create a Page Range 0..6
var allPageIndices = Enumerable.Range(0, pdf.PageCount);

如何僅為偶數頁編號?

在前面的例子基礎上,此程式碼僅對偶數頁索引應用頁碼。 由於過濾的是偶數頁索引,生成的PDF在奇數頁上顯示了頁碼。 頁索引從零開始,而頁碼則從一開始。 此技術適合於遵循傳統書籍格式的文件或合併的PDF文件。

// Get even page indexes (resulting in odd page numbers)
var evenPageIndices = allPageIndices.Where(i => i % 2 == 0);

pdf.AddHtmlHeaders(header, 1, evenPageIndices);
pdf.SaveAs("EvenPages.pdf");

如何僅為奇數頁編號?

為奇數索引頁加上頁碼。 此方法常見於雙面列印場景,頁碼僅應在列印文件的一側顯示。

// Get odd page indexes (resulting in even page numbers)
var oddPageIndexes = allPageIndices.Where(i => i % 2 != 0);

pdf.AddHtmlHeaders(header, 1, oddPageIndexes);
pdf.SaveAs("OddPages.pdf");

如何僅在最後一頁新增頁碼?

僅在最後一頁加上頁碼。 這對於摘要頁或指示文件結尾非常有用。

// Last page only
var lastPageIndex = new List<int>() { pdf.PageCount - 1 };

pdf.AddHtmlHeaders(header, 1, lastPageIndex);
pdf.SaveAs("LastPageOnly.pdf");

如何僅在第一頁新增頁碼?

僅在第一頁加上頁碼。 這適用於封面頁或僅需要識別第一頁的文件。

// First page only
var firstPageIndex = new List<int>() { 0 };

pdf.AddHtmlHeaders(header, 1, firstPageIndex);
pdf.SaveAs("FirstPageOnly.pdf");

如何在新增頁碼時跳過第一頁?

在應用頁眉時跳過第一頁。 這是包含封面或標題頁且不應顯示頁碼的文件的常見要求。 當處理PDF表單或包含封面信件的文件時,此技術可確保專業格式。

// Skip the first page
var skipFirstPage = allPageIndices.Skip(1);

pdf.AddHtmlHeaders(header, 1, skipFirstPage);
pdf.SaveAs("SkipFirstPage.pdf");

如何跳過第一頁並從第二頁開始編號?

跳過第一頁,從第二頁開始編號,將其視為第一頁。此方法適用於封面頁不應在頁碼序列中計入的文件,如學術論文或正式報告。

// Skip the first page and start numbering the second page as page 1
var skipFirstPageAndDontCountIt = allPageIndices.Skip(1);

pdf.AddHtmlHeaders(header, 0, skipFirstPageAndDontCountIt);
pdf.SaveAs("SkipFirstPageAndDontCountIt.pdf");

要探索所有元資料選項,請存取IronPDF頁眉和頁腳指南。

我最喜歡的程式庫是IronPDF。它允許快速高效地操作PDF文件。它還有許多有價值的功能,例如導出到PDF/A格式和數位簽署PDF文件。

Milan Jovanovic

Microsoft MVP

查看案例研究

IronOCR意味著我們每年可以從手動處理中節省$40,000,同時提高生產力,釋放資源以進行高影響的任務。我會強烈推薦它。

Brent Matzelle

首席技術官,OPYN

查看案例研究

IronSuite在我們的運營中扮演著至關重要的角色。這些工具增加了包括建立平面圖和改善庫存管理在內的業務效率。

David Jones

首席軟體工程師,Agorus Build

查看案例研究

進階頁碼技術

除了基本頁碼之外,IronPDF還支持包括以下的進階場景:

  • 基於部分的編號:不同文件部分使用不同的編號方案
  • 羅馬數字:為前言或附錄頁提供自定義格式
  • 多重編號系統:在單個文件中結合不同的編號樣式
  • 動態頁面計數:新增或複製頁面時更新總頁數

當建立如技術手冊、學術論文或法律文件等需要複雜頁碼方案的文件時,這些技術非常有價值。

頁碼的最佳實踐

在PDF中實施頁碼時,請考慮以下做法:

  1. 一致性:在整個文件中保持一致的位置和格式
  2. 易讀性:確保頁碼清晰可見,且不與內容重疊
  3. 可存取性:使用適當的字體大小和對比度以方便閱讀
  4. 專業外觀:使頁碼樣式與文件的整體設計相匹配

遵循這些指導方針並利用IronPDF靈活的頁碼功能,您可以建立滿足特定需求的專業且井然有序的PDF文件。

常見問題

如何在C#中向PDF新增基本頁碼?

使用IronPDF,您可以在TextHeaderFooter或HtmlHeaderFooter類中使用佔位符字串{page}和{total-pages}來新增頁碼。只需將這些佔位符包括在您的頁首或頁尾HTML片段中,IronPDF在渲染PDF時將自動將它們替換為當前頁碼和總頁數。

我可以通過渲染選項直接新增頁碼嗎?

可以,您可以將頁碼直接新增到IronPDF的ChromePdfRenderer渲染選項中。這種方法可以讓您在渲染配置中設置頁首和頁尾的頁碼佔位符字串,這在通過渲染選項自定義PDF輸出時特別有用。

有哪些可用於頁碼的佔位符字串?

IronPDF提供了兩個主要的佔位符字串,用於頁碼:{page}顯示當前頁碼,而{total-pages}顯示文件總頁數。這些佔位符在PDF渲染時會自動替換為實際值。

我可以只將頁碼應用到特定頁面嗎?

可以,IronPDF允許您控制頁碼在文件中出現的位置。您可以指定哪些頁面應顯示頁碼,使您能夠將它們排除在封面頁之外或僅應用於PDF的某些部分。

是否可以自定義頁碼的放置和樣式?

當然。使用IronPDF的HtmlHeaderFooter類,您可以使用HTML和CSS自定義頁碼的放置、樣式和格式。您可以控制它們的位置、字體、大小、顏色,甚至可以新增分隔線或其他裝飾元素。

我可以將頁碼新增到現有的PDF文件嗎?

可以,IronPDF支持將頁碼新增到新PDF和現有PDF文件中。您可以載入一個現有的PDF文件,並且在不重建整個文件的情況下應用帶有頁碼的頁首或頁尾。

Can I add page numbers to only even or odd pages in a PDF with IronPDF?

Yes, IronPDF enables you to filter and apply page numbers exclusively to even or odd page indexes, which is ideal for documents needing traditional book formatting.

How can I skip the first page when adding page numbers with IronPDF?

To skip the first page, you can simply adjust the page range indices and apply page numbers starting from the second page onward using IronPDF.

Can IronPDF handle custom page numbering formats like Roman numerals?

Yes, IronPDF can handle various custom formatting options, including Roman numerals, which can be useful for sections like prefaces or appendices.

What are the best practices for implementing page numbers in PDFs using IronPDF?

Ensure consistency in positioning and formatting, maintain readability with clear visibility, use appropriate font sizes for accessibility, and match the style with the document's design for a professional look.

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

準備開始了嗎?

Nuget Downloads 21,105,021版本:2026.9剛剛發布

立即獲取免費

立即獲取 30天試用金鑰。

bullet_checked無需信用卡或註冊帳號
bullet_test在生產
環境中進行測試,且不顯示浮水印
bullet_calendar30 天全
功能產品
bullet_support試用期間提供 24/5 技術
支援
立即獲取您的免費30天試用密鑰。
不需要信用卡或建立賬戶
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起

有問題嗎?聯絡我們的開發團隊。

Key in blue circle

立即免費取得 30 天試用金鑰。

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密。
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰。
無需信用卡或帳戶建立
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起