Ajouter des signets PDF avec des destinations nommées
Scénarios d’utilisation possibles
Les destinations nommées sont des sortes spéciales de signets ou de liens dans les PDF qui ne dépendent pas des pages PDF. Cela signifie que si des pages sont ajoutées ou supprimées du PDF, les signets peuvent devenir invalides mais les destinations nommées resteront intacts. Pour créer une destination nommée, veuillez définir la propriété PdfBookmarkEntry.DestinationName.
Ajouter des signets PDF avec des destinations nommées
Veuillez consulter le code d’exemple suivant, son fichier Excel source (50528370.xlsx) et son fichier PDF de sortie (50528369.pdf). La capture d’écran montre les signets et les destinations nommées à l’intérieur du PDF de sortie. La capture d’écran décrit également comment afficher les destinations nommées et que vous avez besoin de la version Professionnelle d’Acrobat Reader.
Code d’exemple
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
//Load source Excel file | |
Workbook wb = new Workbook(srcDir + "samplePdfBookmarkEntry_DestinationName.xlsx"); | |
//Access first worksheet | |
Worksheet ws = wb.getWorksheets().get(0); | |
//Access cell C5 | |
Cell cell = ws.getCells().get("C5"); | |
//Create Bookmark and Destination for this cell | |
PdfBookmarkEntry bookmarkEntry = new PdfBookmarkEntry(); | |
bookmarkEntry.setText("Text"); | |
bookmarkEntry.setDestination(cell); | |
bookmarkEntry.setDestinationName("AsposeCells--" + cell.getName()); | |
//Access cell G56 | |
cell = ws.getCells().get("G56"); | |
//Create Sub-Bookmark and Destination for this cell | |
PdfBookmarkEntry subbookmarkEntry1 = new PdfBookmarkEntry(); | |
subbookmarkEntry1.setText("Text1"); | |
subbookmarkEntry1.setDestination(cell); | |
subbookmarkEntry1.setDestinationName("AsposeCells--" + cell.getName()); | |
//Access cell L4 | |
cell = ws.getCells().get("L4"); | |
//Create Sub-Bookmark and Destination for this cell | |
PdfBookmarkEntry subbookmarkEntry2 = new PdfBookmarkEntry(); | |
subbookmarkEntry2.setText("Text2"); | |
subbookmarkEntry2.setDestination(cell); | |
subbookmarkEntry2.setDestinationName("AsposeCells--" + cell.getName()); | |
//Add Sub-Bookmarks in list | |
ArrayList list = new ArrayList(); | |
list.add(subbookmarkEntry1); | |
list.add(subbookmarkEntry2); | |
//Assign Sub-Bookmarks list to Bookmark Sub-Entry | |
bookmarkEntry.setSubEntry(list); | |
//Create PdfSaveOptions and assign Bookmark to it | |
PdfSaveOptions opts = new PdfSaveOptions(); | |
opts.setBookmark(bookmarkEntry); | |
//Save the workbook in Pdf format with given pdf save options | |
wb.save(outDir + "outputPdfBookmarkEntry_DestinationName.pdf", opts); |