PDF管理控件Aspose.PDF for .Net使用教程(二十九):添加和删除PDF中的书签
Aspose.PDF for .NET是一种高PDF处理和解析API,用于在跨平台应用程序中执行文档管理和操作任务。API可以轻松用于生成、修改、转换、渲染、保护和打印PDF文档,而无需使用Adobe Acrobat。此外,API还提供PDF压缩选项,表格创建和操作,图形和图像功能,广泛的超链接功能,印章和水印任务,扩展的安全控制和自定义字体处理。
在接下来的系列教程中,将为开发者带来Aspose.PDF for .NET的一系列使用教程,例如进行文档间的转换,如何标记PDF文件,如何使用表单和图表等等。本文将介绍添加和删除PDF中的书签。
>>Aspose.PDF for .NET更新至最新版v20.2,欢迎下载体验。
将书签添加到PDF文档
书签保存在Document对象的OutlineItemCollection集合中,而对象本身也在OutlineCollection集合中。要将书签添加到PDF:
- 使用Document对象打开PDF文档。
- 创建一个书签并定义其属性。
- 将OutlineItemCollection集合添加到Outlines集合中。
以下代码段显示了如何在PDF文档中添加书签。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks(); // Open document Document pdfDocument = new Document(dataDir + "AddBookmark.pdf"); // Create a bookmark object OutlineItemCollection pdfOutline = new OutlineItemCollection(pdfDocument.Outlines); pdfOutline.Title = "Test Outline"; pdfOutline.Italic = true; pdfOutline.Bold = true; // Set the destination page number pdfOutline.Action = new GoToAction(pdfDocument.Pages[1]); // Add bookmark in the document's outline collection. pdfDocument.Outlines.Add(pdfOutline); dataDir = dataDir + "AddBookmark_out.pdf"; // Save output pdfDocument.Save(dataDir);
将子书签添加到PDF文档
书签可以嵌套,表示与父书签和子书签的层次关系。本文介绍了如何将子书签(即第二级书签)添加到PDF。要将子书签添加到PDF文件,请首先添加父书签:
- 打开一个文档。
- 将书签添加到OutlineItemCollection,以定义其属性。
- 将添加OutlineItemCollection到Document对象的OutlineCollection集合。
就像上面解释的父书签一样,创建了子书签,但是将其添加到了父书签的Outlines集合中。
以下代码段显示了如何将子书签添加到PDF文档。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks(); // Open document Document pdfDocument = new Document(dataDir + "AddChildBookmark.pdf"); // Create a parent bookmark object OutlineItemCollection pdfOutline = new OutlineItemCollection(pdfDocument.Outlines); pdfOutline.Title = "Parent Outline"; pdfOutline.Italic = true; pdfOutline.Bold = true; // Create a child bookmark object OutlineItemCollection pdfChildOutline = new OutlineItemCollection(pdfDocument.Outlines); pdfChildOutline.Title = "Child Outline"; pdfChildOutline.Italic = true; pdfChildOutline.Bold = true; // Add child bookmark in parent bookmark's collection pdfOutline.Add(pdfChildOutline); // Add parent bookmark in the document's outline collection. pdfDocument.Outlines.Add(pdfOutline); dataDir = dataDir + "AddChildBookmark_out.pdf"; // Save output pdfDocument.Save(dataDir);
删除PDF文档中的所有书签
PDF中的所有书签都保存在OutlineCollection集合中。本文介绍了如何从PDF文件中删除所有书签。要从PDF文件中删除所有书签:
- 调用OutlineCollection集合的Delete方法。
- 使用Document对象的Save方法保存修改后的文件。
以下代码段显示了如何从PDF文档中删除所有书签。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks(); // Open document Document pdfDocument = new Document(dataDir + "DeleteAllBookmarks.pdf"); // Delete all bookmarks pdfDocument.Outlines.Delete(); dataDir = dataDir + "DeleteAllBookmarks_out.pdf"; // Save updated file pdfDocument.Save(dataDir);
从PDF文档中删除特定的书签
从PDF文档删除所有附件显示了如何从PDF文件删除所有附件。也可以仅删除特定的附件。要从PDF文件中删除特定的书签:
- 将书签的标题作为参数传递给OutlineCollection集合的Delete方法。
- 使用Document对象Save方法保存更新的文件。
该Document班提供的OutlineCollection集合。该Delete}方法删除的标题传递给方法的任何书签。
以下代码段显示了如何从PDF文档中删除特定的书签。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_AsposePdf_Bookmarks(); // Open document Document pdfDocument = new Document(dataDir + "DeleteParticularBookmark.pdf"); // Delete particular outline by Title pdfDocument.Outlines.Delete("Child Outline"); dataDir = dataDir + "DeleteParticularBookmark_out.pdf"; // Save updated file pdfDocument.Save(dataDir);还想要更多吗?您可以点击阅读【2019 · Aspose最新资源整合】,查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。