添加带有命名目标的 PDF 书签

可能的使用场景

命名目标是 PDF 中不依赖于 PDF 页面的特殊类型的书签或链接。这意味着,如果从 PDF 添加或删除页面,书签可能会失效,但命名的目的地将保持不变。要创建命名目标,请设置PdfBookmarkEntry.DestinationName财产。

添加带有命名目标的 PDF 书签

请看下面的示例代码,其源Excel文件 , 及其输出 PDF 文件.屏幕截图显示了输出 PDF 中的书签和命名目标。屏幕截图还描述了如何查看命名目标以及您需要专业版的 Acrobat Reader。

待办事项:图片_替代_文本

示例代码

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
//Load source Excel file
Workbook wb = new Workbook(sourceDir + "samplePdfBookmarkEntry_DestinationName.xlsx");
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Access cell C5
Cell cell = ws.Cells["C5"];
//Create Bookmark and Destination for this cell
PdfBookmarkEntry bookmarkEntry = new PdfBookmarkEntry();
bookmarkEntry.Text = "Text";
bookmarkEntry.Destination = cell;
bookmarkEntry.DestinationName = "AsposeCells--" + cell.Name;
//Access cell G56
cell = ws.Cells["G56"];
//Create Sub-Bookmark and Destination for this cell
PdfBookmarkEntry subbookmarkEntry1 = new PdfBookmarkEntry();
subbookmarkEntry1.Text = "Text1";
subbookmarkEntry1.Destination = cell;
subbookmarkEntry1.DestinationName = "AsposeCells--" + cell.Name;
//Access cell L4
cell = ws.Cells["L4"];
//Create Sub-Bookmark and Destination for this cell
PdfBookmarkEntry subbookmarkEntry2 = new PdfBookmarkEntry();
subbookmarkEntry2.Text = "Text2";
subbookmarkEntry2.Destination = cell;
subbookmarkEntry2.DestinationName = "AsposeCells--" + cell.Name;
//Add Sub-Bookmarks in list
ArrayList list = new ArrayList();
list.Add(subbookmarkEntry1);
list.Add(subbookmarkEntry2);
//Assign Sub-Bookmarks list to Bookmark Sub-Entry
bookmarkEntry.SubEntry = list;
//Create PdfSaveOptions and assign Bookmark to it
PdfSaveOptions opts = new PdfSaveOptions();
opts.Bookmark = bookmarkEntry;
//Save the workbook in Pdf format with given pdf save options
wb.Save(outputDir + "outputPdfBookmarkEntry_DestinationName.pdf", opts);