NAME
PDF::API2::Outline - Manage PDF outlines (a.k.a. bookmarks)
SYNOPSIS
# Get/create the top-level outline tree
my $outline = $pdf->outline();
# Add an entry
my $item = $outline->outline();
$item->title('First Page');
$item->destination($pdf->open_page(1));
METHODS
Examine the Outline Tree
has_children
my $boolean = $outline->has_children();
Return true if the current outline item has child items.
count
my $integer = $outline->count();
Return the number of descendants that are visible when the current outline item is open (expanded).
first
my $child = $outline->first();
Return the first child of the current outline level, if one exists.
last
my $child = $outline->last();
Return the last child of the current outline level, if one exists.
parent
my $parent = $outline->parent();
Return the parent of the current item, if not at the top level of the outline tree.
prev
my $sibling = $outline->prev();
Return the previous item of the current level of the outline tree.
next
my $sibling = $outline->next();
Return the next item of the current level of the outline tree.
Modify the Outline Tree
outline
my $child = $outline->outline();
Add an outline item at the end of the current outline's list of children.
insert_after
my $sibling = $outline->insert_after();
Add an outline item immediately following the current item.
insert_before
$sibling = $outline->insert_before();
Add an outline item immediately preceding the current item.
delete
$outline->delete();
Remove the current outline item from the outline tree. If the item has any children, they will effectively be deleted as well since they will no longer be linked.
is_open
# Get
my $boolean = $outline->is_open();
# Set
my $outline = $outline->is_open($boolean);
Get/set whether the outline is expanded or collapsed.
Set Outline Attributes
title
# Get
my $title = $outline->title();
# Set
$outline = $outline->title($text);
Get/set the title of the outline item.
destination
$outline = $outline->destination($destination, $location, @args);
Set the destination page and optional position of the outline. $location
and @args
are as defined in "destination" in PDF::API2::NamedDestination.
$destination
can optionally be the name of a named destination defined elsewhere.
uri
$outline = $outline->uri($uri);
Launch a URI -- typically a web page -- when the outline item is activated.
launch
$outline->launch($file);
Launch an application or file when the outline item is activated.
$outline = $outline->pdf($filename, $page_number, $location, @args);
Open another PDF file to a particular page number (first page is zero, which is also the default). The page can optionally be positioned at a particular location if $location
and @args
are set -- see "destination" in PDF::API2::NamedDestination for possible settings.