如何在 C# 中使用 IronPDF 為 PDF 添加書籤和大綱

如何使用 IronPDF 在 C# 中加入 PDF 書籤和大綱

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

IronPDF 讓您可以使用 C# 在 PDF 文件中加入書籤(大綱),建立類似目錄的導航輔助功能。 新增單層或多層書籤,以增強文件的易用性,並幫助使用者快速跳到關鍵部分。 此功能可在WindowsLinuxmacOS環境下無縫運作。

快速入門:在 C# 中向 PDF 添加書籤

透過在 PDF 文件中加入書籤,快速上手 IronPDF。 本指南示範如何載入現有 PDF 文件、新增導覽書籤以及儲存更新後的文件。 非常適合希望在其 C# 專案中增強 PDF 功能的開發人員。

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronPDF

    PM > Install-Package IronPdf

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

    var pdf = new IronPdf.PdfDocument("example.pdf");
    pdf.Bookmarks.AddBookMarkAtEnd("Chapter 1", 1);
    pdf.SaveAs("bookmarked.pdf");
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronPDF,免費試用!
    arrow pointer

如何在 C# 中使用 PDF 書籤?

在 Adobe Acrobat Reader 中,大綱(也稱為書籤)顯示在左側邊欄中,提供了一種方便的方式跳到文件的關鍵部分。 書籤的作用類似於互動式目錄,使讀者能夠有效率地瀏覽複雜的文件。

使用 IronPDF,您可以匯入 PDF 文件並對現有大綱執行各種操作,例如新增、重新排序、編輯屬性和刪除書籤。 這樣,您就可以完全控制 PDF 文件的組織和結構,類似於您可以合併或分割 PDF來進行文件管理的方式。

所有頁面索引均採用從零開始的索引方式。

如何加入單層書籤?

在 IronPDF 中加入書籤非常簡單。 使用AddBookmarkAtEnd方法,指定書籤名稱和對應的頁面索引。 此功能可與其他 PDF 操作(例如新增頁首和頁尾設定自訂邊距)很好地集成,從而建立專業文件。 以下是一個例子:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-single-layer-bookmark.cs
using IronPdf;

// Create a new PDF or edit an existing document.
PdfDocument pdf = PdfDocument.FromFile("existing.pdf");

// Add a bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfBookmark", 0);

// Add a sub-bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfSubBookmark", 1);

pdf.SaveAs("singleLayerBookmarks.pdf");
$vbLabelText   $csharpLabel

AddBookMarkAtEnd方法會將書籤加入現有書籤清單的末端。若要更精確控制書籤的位置,可以使用AddBookMarkAtStart將書籤插入到清單的開頭。每個書籤都指向一個特定的頁面索引,從而可以在文件內進行精確導航。

單層書籤文檔

如何建立多層書籤層級結構?

IronPDF 允許您以樹狀結構添加書籤,這對於在大型 PDF 文件中保持導航特別有用。 當需要在單一 PDF 文件中處理來自不同日期和地點的大量考試試卷、銷售報告或收據記錄時,此功能非常有用。 就像建立 PDF 表單進行資料收集一樣,結構化書籤有助於按層次結構組織複雜的資訊。

AddBookMarkAtEnd方法傳回IPdfBookMark對象,允許您新增子書籤。 例如,使用Children.AddBookMarkAtStart("Date1", 0)Children.AddBookMarkAtEnd("Date1", 0)將子書籤加入"Examination"書籤。 這種嵌套結構創建了一種層級式組織,反映了文件的邏輯流程。 以下程式碼演示了這個概念:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-multi-layer-bookmark.cs
using IronPdf;

// Load existing PDF document
PdfDocument pdf = PdfDocument.FromFile("examinationPaper.pdf");

// Assign IPdfBookMark object to a variable
var mainBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Examination", 0);

// Add bookmark for days
var date1Bookmark = mainBookmark.Children.AddBookMarkAtStart("Date1", 1);

// Add bookmark for type of test
var paperBookmark = date1Bookmark.Children.AddBookMarkAtStart("Paper", 1);
paperBookmark.Children.AddBookMarkAtEnd("PersonA", 3);
paperBookmark.Children.AddBookMarkAtEnd("PersonB", 4);

// Add bookmark for days
var date2Bookmark = mainBookmark.Children.AddBookMarkAtEnd("Date2", 5);

// Add bookmark for type of test
var computerBookmark = date2Bookmark.Children.AddBookMarkAtStart("Computer", 5);
computerBookmark.Children.AddBookMarkAtEnd("PersonC", 6);
computerBookmark.Children.AddBookMarkAtEnd("PersonD", 7);

pdf.SaveAs("multiLayerBookmarks.pdf");
$vbLabelText   $csharpLabel

這種層級式方法在處理需要詳細組織的複雜文件時尤其有價值。 巢狀結構允許使用者展開和折疊書籤部分,即使在有數百頁的文件中也能實現直覺的導航。

多層書籤文檔

如何檢索和瀏覽現有書籤?

IronPDF 讓您輕鬆擷取並檢視 PDF 文件中的書籤。 瀏覽書籤樹非常簡單,可以無縫存取不同的部分。 當需要編輯現有 PDF 文件或在書籤部分中實現搜尋和替換文字等功能時,此功能至關重要。 Consider the multi-layer bookmarks document example above.

"考試"書籤有一個Children屬性,該屬性指向"日期 1"和"日期 2"書籤。 "Date1"書籤有一個NextBookmark屬性,該屬性指向"Date2"書籤。 此外,"Date1"書籤還有一個包含"Paper"書籤的Children屬性。 這種相互關聯的結構可以實現複雜的導航模式和文件組織。

若要擷取已開啟的 PDF 文件中的所有書籤,請使用GetAllBookmarks方法。 這將提供所有書籤的完整列表,方便您分析和利用書籤結構:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-retrieve-bookmark.cs
using IronPdf;

// Load existing PDF document
PdfDocument pdf = PdfDocument.FromFile("multiLayerBookmarks.pdf");

// Retrieve bookmarks list
var mainBookmark = pdf.Bookmarks.GetAllBookmarks();
$vbLabelText   $csharpLabel

合併兩個書籤名相同的 PDF 文件可能會破壞書籤清單。

[{w:(僅支援從頁面索引建立的書籤。 來自其他 PDF 元素的書籤的頁面索引值將被設定為-1

請參閱以下文章"使用 IronPDF 建立目錄",以了解如何在從 HTML 產生 PDF 時建立目錄。

準備好要看看你還能做什麼了嗎? 請查看我們的教學頁面:整理PDF文件

常見問題解答

如何用 C# 在 PDF 文件中加入書籤?

IronPDF 可讓您輕鬆地使用 C# 為 PDF 文件新增書籤。您可以使用 AddBookmarkAtEnd 方法,通過指定書籤名稱和頁面索引來添加單層書籤。例如:pdf.Bookmarks.AddBookMarkAtEnd("Chapter 1", 1)。這可建立類似目錄的導覽輔助工具,幫助使用者快速跳到關鍵部分。

AddBookmarkAtEnd 與 AddBookmarkAtStart 方法有何不同?

IronPDF 提供了兩種放置書籤的方法。AddBookMarkAtEnd 方法將書籤附加到現有書籤清單的末尾,而 AddBookMarkAtStart 則在清單的開頭插入書籤。這兩種方法都會參考特定的頁面索引,以便在文件中進行精確的導覽。

我可以建立多層次的書籤結構嗎?

是的,IronPDF 允許您以樹狀結構建立多層書籤階層。這對於組織具有嵌套章節的複雜文件特別有用,類似於您如何結構具有章節和子章的詳細目錄。

書籤功能是否能在不同作業系統中相容?

IronPdf 的書籤功能可在 Windows、Linux 和 macOS 環境下無縫運作。無論您使用何種作業系統,都可以新增、編輯和管理 PDF 書籤,確保不同平台上的功能一致。

我可以對現有的 PDF 書籤執行哪些操作?

使用 IronPDF,您可以對現有的 PDF 大綱執行各種操作,包括新增書籤、重新排序、編輯書籤屬性以及刪除不需要的書籤。這可讓您完全控制 PDF 檔案的組織和結構。

使用者開啟 PDF 時,書籤如何顯示?

在 Adobe Acrobat Reader 和類似的 PDF 閱覽器中,使用 IronPDF 創建的書籤會在左側邊欄中顯示為輪廓。它們具有互動式目錄的功能,可讓讀者透過點擊跳至特定部分,有效地瀏覽複雜的文件。

查克尼特·賓
軟體工程師
Chaknith 負責 IronXL 和 IronBarcode 的開發工作。他精通 C# 和 .NET,致力於改進軟體並為客戶提供支援。他對使用者互動的洞察有助於提升產品、文件品質和整體使用者體驗。
準備好開始了嗎?
Nuget 下載 17,012,929 | 版本: 2025.12 剛剛發布