Some test text!

menu

Outline tree

There are two options to working with an outline tree. First is using a UI component that provides tools to set a bookmark or display the outline. Second is an API guide to programmatically read outline items.

Outline API

To navigate an outline tree and print its result.

void PrintIndent(Bookmark item) throws PDFNetException {
  int ident = item.getIndent() - 1;
  for (int i = 0; i < ident; ++i) {
    System.out.print("  ");
  }
}
void PrintOutlineTree(Bookmark item) throws PDFNetException {
  for (; item.isValid(); item = item.getNext()) {
    PrintIndent(item);
    System.out.print((item.isOpen() ? "- " : "+ ") + item.getTitle() + " ACTION -> ");
    if (item.hasChildren()) {
      PrintOutlineTree(item.getFirstChild());
    }
  }
}
PDFDoc doc = new PDFDoc(filename);
Bookmark root = doc.getFirstBookmark();
PrintOutlineTree(root);

Read, add, edit PDF outlines and bookmarks
Full code sample which illustrates how to read and edit existing outline items and create new bookmarks using the high-level API.

linkAbout outline tree

A PDF document may display a document outline on the screen, allowing the user to navigate interactively from one part of the document to another. The outline consists of a tree-structured hierarchy of Bookmarks (sometimes called outline items), which serve as a "visual table of contents" to display the document's structure to the user.

Each Bookmark has a title that appears on screen, and an Action that specifies what happens when a user clicks on the Bookmark. The typical Action for a user-created Bookmark is to move to another location in the current document — although any Action can be specified.

Get the answers you need: Support

close

Free Trial

Get unlimited trial usage of PDFTron SDK to bring accurate, reliable, and fast document processing capabilities to any application or workflow.

Select a platform to get started with your free trial.

Unlimited usage. No email address required.

Join our live demo to learn about use cases & capabilities for WebViewer

Learn more
close