示例#1
0
        internal static bool AddBookmarkTooutline(PDFBookmarkItem bookmarentry, PDDocument document, PDOutlineItem outline)
        {
            bool flag;

            try
            {
                if (bookmarentry.BookMarkPage <= document.getNumberOfPages())
                {
                    PDPage page = document.getPage(bookmarentry.BookMarkPage - 1);
                    PDPageFitWidthDestination pDPageFitWidthDestination = new PDPageFitWidthDestination();
                    pDPageFitWidthDestination.setPage(page);
                    outline.setDestination(pDPageFitWidthDestination);
                    outline.setTitle(bookmarentry.BookmarkTitle);
                }
                if ((bookmarentry.BookmarkItems == null ? false : bookmarentry.BookmarkItems.Count > 0))
                {
                    foreach (PDFBookmarkItem bookmarkItem in bookmarentry.BookmarkItems)
                    {
                        PDOutlineItem pDOutlineItem = new PDOutlineItem();
                        PDFHelper.AddBookmarkTooutline(bookmarkItem, document, pDOutlineItem);
                        outline.addLast(pDOutlineItem);
                    }
                }
                flag = true;
            }
            catch (Exception exception)
            {
                flag = false;
            }
            return(flag);
        }
示例#2
0
        internal static void addBookmark(PDOutlineItem bookmarkItem, List <PDFBookmarkItem> bookmarks, PDDocument doc)
        {
            PDOutlineItem   firstChild      = bookmarkItem.getFirstChild();
            PDFBookmarkItem pDFBookmarkItem = new PDFBookmarkItem(bookmarkItem, doc);

            bookmarks.Add(pDFBookmarkItem);
            while (firstChild != null)
            {
                PDFHelper.addBookmark(firstChild, pDFBookmarkItem.BookmarkItems, doc);
                firstChild = firstChild.getNextSibling();
            }
        }