如何添加 PDF 書籤和大綱
在您的 C# 專案中包含 PDF 大綱(也稱為書籤)可以大大提升易用性和用户体验設計。PDF 大綱作為導航工具,允許用戶輕鬆訪問文檔中的關鍵頁面,類似於目錄。通過加入 PDF 大綱,您可以為您的文檔提供更直觀和友好的體驗。
如何新增 PDF 書籤和大綱
- 下載C#庫來添加PDF書籤和大綱
- 載入現有的或渲染新的 PDF 文件
- 在 PDF 文件上添加單層書籤以跳轉到關鍵部分
- 新增多層次書籤以組織層級結構
- 檢索和查看書籤屬性
立即開始在您的專案中使用IronPDF,並享受免費試用。
查看 IronPDF 上 Nuget 快速安裝和部署。已被下載超過800萬次,它正用C#改變PDF。
Install-Package IronPdf
請考慮安裝 IronPDF DLL 直接下載並手動安裝到您的專案或GAC表單: IronPdf.zip
手動安裝到您的項目中
下載DLL添加大綱和書籤示例
在 Adobe Acrobat Reader 中,大綱 (也稱為書籤) 顯示在左側邊欄中,提供方便的方法跳轉到文檔的重要部分。
使用IronPDF,您可以匯入PDF文檔並對現有的大綱執行各種操作,例如添加、重新排序、編輯屬性和刪除書籤。這使您能夠完全控制PDF文件的組織和結構。
提示
添加單層書籤
在IronPDF中新增書籤是一個很簡單的過程。您可以使用 AddBookmarkAtEnd
方法,這個方法需要指定書籤名稱和相應的頁面索引。
: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");
Imports IronPdf
' Create a new PDF or edit an existing document.
Private pdf As PdfDocument = 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")
單層書籤文件
添加多層次的書籤
使用 IronPDF,您可以在樹狀結構中添加書籤,這在維護大型 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");
Imports IronPdf
' Load existing PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("examinationPaper.pdf")
' Assign IPdfBookMark object to a variable
Private mainBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Examination", 0)
' Add bookmark for days
Private date1Bookmark = mainBookmark.Children.AddBookMarkAtStart("Date1", 1)
' Add bookmark for type of test
Private paperBookmark = date1Bookmark.Children.AddBookMarkAtStart("Paper", 1)
paperBookmark.Children.AddBookMarkAtEnd("PersonA", 3)
paperBookmark.Children.AddBookMarkAtEnd("PersonB", 4)
' Add bookmark for days
Dim date2Bookmark = mainBookmark.Children.AddBookMarkAtEnd("Date2", 5)
' Add bookmark for type of test
Dim computerBookmark = date2Bookmark.Children.AddBookMarkAtStart("Computer", 5)
computerBookmark.Children.AddBookMarkAtEnd("PersonC", 6)
computerBookmark.Children.AddBookMarkAtEnd("PersonD", 7)
pdf.SaveAs("multiLayerBookmarks.pdf")
多層書籤文件
檢索書籤列表
使用 IronPDF,您可以輕鬆地檢索和查看 PDF 文件中的書籤。瀏覽書籤樹結構十分簡單,並提供順暢的訪問不同部分的功能。讓我們考慮一下 多層書籤文件 以上。
“Examination”書籤將會有一個Children屬性,指向“Date1”和“Date2”書籤。“Date1”書籤則有一個NextBookmark屬性,指向“Date2”書籤。另外,“Date1”書籤還有一個Children屬性,其中包含“Paper”書籤。
要檢索打開的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();
Imports IronPdf
' Load existing PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("multiLayerBookmarks.pdf")
' Retrieve bookmarks list
Private mainBookmark = pdf.Bookmarks.GetAllBookmarks()
請注意
在繼續之前
了解如何在從 HTML 生成 PDF 時創建目錄, 請閱讀以下文章:如何添加目錄.