IronPDF 操作指南 大纲和书签 How to Add PDF Bookmarks and Outline Chaknith Bin 已更新:八月 14, 2025 Download IronPDF NuGet 下载 DLL 下载 Windows 安装程序 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English 在您的C#项目中包括PDF大纲(也称为书签)可以大大增强可用性和用户体验设计。 PDF大纲作为导航工具,允许用户轻松访问文档中的重要页面,类似于目录。 通过整合PDF大纲,您可以为您的文档提供更直观和用户友好的体验。 快速开始:在C#中向PDF添加书签 通过IronPDF轻松向PDF文档添加书签,快速开始。 本指南演示了如何加载现有PDF,添加书签以便于导航,以及保存更新后的文档。 非常适合希望在C#项目中通过最少的努力和最大效率增强PDF功能的开发人员。 Get started making PDFs with NuGet now: Install IronPDF with NuGet Package Manager PM > Install-Package IronPdf Copy and run this code snippet. var pdf = new IronPdf.PdfDocument("example.pdf"); pdf.Bookmarks.AddBookMarkAtEnd("Chapter 1", 1); pdf.SaveAs("bookmarked.pdf"); Deploy to test on your live environment Start using IronPDF in your project today with a free trial Free 30 day Trial class="hsg-featured-snippet"> 最小工作流程(5个步骤) 从NuGet下载IronPDF 加载现有或渲染新的PDF文档 在PDF文件上添加单层书签以跳转到关键部分 添加多层书签以创建分层的组织结构 检索和查看书签属性 添加大纲和书签示例 在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") $vbLabelText $csharpLabel 单层书签文档 添加多层书签 使用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") $vbLabelText $csharpLabel 多层书签文档 检索书签列表 使用IronPDF,您可以轻松检索和查看PDF文档中的书签。 通过书签树导航变得简单,并无缝访问不同部分。 Let's consider the multi-layer bookmarks document example above. "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() $vbLabelText $csharpLabel 请注意合并具有相同名称书签的两个PDF文档可能会导致书签列表中断。 [{w:(仅支持从页面索引创建的书签。 从PDF文档的其他部分或元素创建的书签将设置页面索引值为-1。)}] 了解如何在以下文章中从HTML生成PDF时创建目录:“使用IronPDF创建目录。” 准备好看看您还能做些什么吗? 在这里查看我们的教程页面:组织PDF 常见问题解答 如何开始使用 IronPDF 在 PDF 中添加书签? 要开始使用 IronPDF 添加书签,请从 NuGet 下载 IronPDF,加载现有 PDF 或呈现一个新的,并使用 `AddBookmarkAtEnd` 方法向文档添加书签。 书签在 PDF 文档中的作用是什么? PDF 文档中的书签充当导航工具,使用户可以轻松跳转到关键部分,类似于目录,从而增强文档的可用性。 如何将多层书签添加到 PDF? 使用 IronPDF,可以通过 `AddBookMarkAtEnd` 方法在树状结构中创建多层书签,这对于组织具有层次结构的庞大文档非常有用。 使用 IronPDF 从 PDF 中检索书签的过程是什么? 您可以使用 IronPDF 的 `GetAllBookmarks` 方法从 PDF 中检索书签,该方法提供了所有书签的列表,从而便于文档的轻松导航和分析。 我可以使用 IronPDF 编辑或删除 PDF 中的书签吗? 可以,IronPDF 允许您通过添加、重新排序、编辑属性和删除书签来管理书签,从而完全控制 PDF 的组织结构。 合并带有书签的 PDF 时应考虑什么? 合并带有书签的 PDF 文档时,请确保书签具有唯一的名称,因为合并具有相同书签名称的 PDF 会破坏书签结构。 如何在从 HTML 生成的 PDF 中创建目录? 要在从 HTML 生成的 PDF 中创建目录,请参阅文章“使用 IronPDF 创建目录”,该文章提供了关于该过程的详细指导。 如果书签是从非页面索引元素创建的会怎么样? 从页面索引之外的元素创建的书签将会使页面索引值设定为 -1,因为 IronPDF 只支持直接从页面索引创建的书签。 使用书签时,IronPDF 是否完全兼容 .NET 10? 是的——IronPDF 完全支持 .NET 10,包括所有书签和大纲功能。在 .NET 10 应用程序中,添加、检索、编辑和删除书签的 API 与之前支持的版本一样,开箱即用。 Chaknith Bin 立即与工程团队聊天 软件工程师 Chaknith 在 IronXL 和 IronBarcode 工作。他在 C# 和 .NET 方面有着深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的见解有助于更好的产品、文档和整体体验。 准备开始了吗? Nuget 下载 16,154,058 | 版本: 2025.11 刚刚发布 免费 NuGet 下载 总下载量:16,154,058 查看许可证