Foxit PDF SDK
fsdk.Bookmark Class Reference

Public Member Functions

def GetAction ()
 Get action. More...
 
def GetColor ()
 Get the color used for displaying title. More...
 
def GetDestination ()
 Get the destination. More...
 
def GetDict ()
 Get PDF dictionary of current bookmark. More...
 
def GetFirstChild ()
 Get the first child bookmark. More...
 
def GetNextSibling ()
 Get the next sibling bookmark. More...
 
def GetParent ()
 Get the parent bookmark. More...
 
def GetStyle ()
 Get the style. More...
 
def GetTitle ()
 Get the title. More...
 
def HasChild ()
 Check if current bookmark has child bookmark(s). More...
 
def Insert (title, position)
 Insert a new bookmark according to the relationship position to current bookmark. More...
 
def IsEmpty ()
 Check whether current object is empty or not. More...
 
def IsFirstChild ()
 Check if current bookmark is the first child of its parent bookmark. More...
 
def IsLastChild ()
 Check if current bookmark is the last child of its parent bookmark. More...
 
def IsRoot ()
 Check if current bookmark is the root bookmark. More...
 
def MoveTo (dest_bookmark, position)
 Move current bookmark to be child or sibling of another bookmark. More...
 
def RemoveAction ()
 Remove action. More...
 
def SetAction (action)
 Set action. More...
 
def SetColor (color)
 Set the color used for displaying title. More...
 
def SetDestination (destination)
 Set the destination. More...
 
def SetStyle (style)
 Set the style. More...
 
def SetTitle (title)
 Set the title. More...
 

Detailed Description

PDF bookmark is also called "outline". It's a tree-structured hierarchy. It allows user to navigate PDF document easily by selecting a bookmark. One bookmark contains a destination or actions to indicate how to response when user selects it.
In order to get/set the bookmark tree, function fsdk.PDFDoc.GetRootBookmark must be called first to get the root of the whole bookmark tree. If the "root bookmark" does not exist, function fsdk.PDFDoc.CreateRootBookmark could be called to create a new "root bookmark". Here, "root bookmark" is an abstract object. It represents the "Outline" of PDF document. For more details about "Outline", please refer to Section 8.2.3 in PDF Reference 1.7. "root bookmark" can only have some child bookmarks, but no parent, no next sibling bookmarks or any data (including bookmark data, destination data and action data). And "root bookmark" cannot be shown on the application UI since it has no data. So, for a root bookmark, only function fsdk.Bookmark.GetFirstChild can be used.
From the root bookmark, the bookmark tree can be traversed and each bookmark node can be accessed.
This class offers several functions to get/set other bookmarks from current bookmark. For example:

This class also offers functions to get/set the data of a PDF bookmark.

See also
PDFDoc

Member Function Documentation

◆ GetAction()

def fsdk.Bookmark.GetAction ( )

Get action.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have any action information. In this case, this function will return an action object which's function fsdk.Action.IsEmpty returns true.

Returns
An action object.

◆ GetColor()

def fsdk.Bookmark.GetColor ( )

Get the color used for displaying title.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have color. In this case, this function will return 0x000000 by default.

Returns
The color used for displaying title. Format: 0xRRGGBB.

◆ GetDestination()

def fsdk.Bookmark.GetDestination ( )

Get the destination.

Bookmark's destination is some place in current document where the bookmark can "goto". If the bookmark cannot "goto" any place in current document, that means no destination information can be retrieved and this function will return a destination object which's function fsdk.Destination.IsEmpty returns true.
If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have any destination information. In this case, this function will return a destination object which's function fsdk.Destination.IsEmpty returns true.

Returns
The destination object.

◆ GetDict()

def fsdk.Bookmark.GetDict ( )

Get PDF dictionary of current bookmark.

Returns
The PDF dictionary. If there is any error, this function will return null.

◆ GetFirstChild()

def fsdk.Bookmark.GetFirstChild ( )

Get the first child bookmark.

Returns
The first child bookmark object.

◆ GetNextSibling()

def fsdk.Bookmark.GetNextSibling ( )

Get the next sibling bookmark.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have any sibling bookmark. In this case, this function will return a bookmark object which's function fsdk.Bookmark.IsEmpty returns true.

Returns
The next sibling bookmark object.

◆ GetParent()

def fsdk.Bookmark.GetParent ( )

Get the parent bookmark.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have a parent bookmark. In this case, this function will return a bookmark object which's function fsdk.Bookmark.IsEmpty returns true.

Returns
The parent bookmark object.

◆ GetStyle()

def fsdk.Bookmark.GetStyle ( )

Get the style.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have style information. In this case, this function will return fsdk.BookmarkE_StyleNormal by default.

Returns
Value for The bookmark style. Please refer to values starting from fsdk.BookmarkE_StyleNormal and this would be one or a combination of these values.

◆ GetTitle()

def fsdk.Bookmark.GetTitle ( )

Get the title.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have title. In this case, this function will return an empty string.

Returns
The title string.

◆ HasChild()

def fsdk.Bookmark.HasChild ( )

Check if current bookmark has child bookmark(s).

Returns
true means current bookmark has child bookmark(s), and false means current bookmark does not have any child bookmark.

◆ Insert()

def fsdk.Bookmark.Insert (   title,
  position 
)

Insert a new bookmark according to the relationship position to current bookmark.

For the new bookmark, the color would be 0x000000 and the style would be fsdk.BookmarkE_StyleNormal by default.

Parameters
[in]titleTitle string for the new bookmark. It should not be an empty string.
[in]positionThe position where the new bookmark item is to be inserted, based on current bookmark. Please refer to values starting from fsdk.BookmarkE_PosFirstChild and this should be one of these values.
If current bookmark is just the "root bookmark", parameter position can only be fsdk.BookmarkE_PosFirstChild or fsdk.BookmarkE_PosLastChild .
Returns
A new bookmark object.

◆ IsEmpty()

def fsdk.Bookmark.IsEmpty ( )

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ IsFirstChild()

def fsdk.Bookmark.IsFirstChild ( )

Check if current bookmark is the first child of its parent bookmark.

Returns
true means current bookmark is the first child of its parent bookmark, while false means not.

◆ IsLastChild()

def fsdk.Bookmark.IsLastChild ( )

Check if current bookmark is the last child of its parent bookmark.

Returns
true means current bookmark is the last child of its parent bookmark, while false means not.

◆ IsRoot()

def fsdk.Bookmark.IsRoot ( )

Check if current bookmark is the root bookmark.

"root bookmark" is an abstract object. It represents the "Outline" of PDF document. For more details about "Outline", please refer to Section 8.2.3 in PDF Reference 1.7. "root bookmark" can only have some child bookmarks, but no parent, no next sibling bookmarks or any data (including bookmark data, destination data and action data). And "root bookmark" cannot be shown on the application UI since it has no data.

Returns
true means current bookmark is the root bookmark, while false means not.

◆ MoveTo()

def fsdk.Bookmark.MoveTo (   dest_bookmark,
  position 
)

Move current bookmark to be child or sibling of another bookmark.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it cannot be moved to be child or sibling of any bookmark in the bookmark tree. In this case, this function will return false directly.

Parameters
[in]dest_bookmarkThe destination bookmark. It should not be current bookmark itself or any descendant of current bookmark.
Current bookmark will be moved to be child or sibling of the destination bookmark.
[in]positionThe position where the current bookmark is to be moved to, based on parameter destBookmark. Please refer to values starting from fsdk.BookmarkE_PosFirstChild and this should be one of these values.
Returns
true means success, while false means failure.

◆ RemoveAction()

def fsdk.Bookmark.RemoveAction ( )

Remove action.

When removing bookmark's action, bookmark's destination will be removed at the same time.
If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have any action information. In this case, this function will return true directly.

Returns
true means success, while false means failure.

◆ SetAction()

def fsdk.Bookmark.SetAction (   action)

Set action.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have any action information. In this case, this function will return directly without doing anything.

Parameters
[in]actionA valid action to be set. Currently only support following types as the new action:
fsdk.ActionE_TypeGoto , fsdk.ActionE_TypeURI , fsdk.ActionE_TypeJavaScript , fsdk.ActionE_TypeNamed , fsdk.ActionE_TypeGoToR , fsdk.ActionE_TypeGoToE , fsdk.ActionE_TypeSubmitForm , fsdk.ActionE_TypeResetForm , fsdk.ActionE_TypeHide , fsdk.ActionE_TypeLaunch , fsdk.ActionE_TypeImportData , fsdk.ActionE_TypeRendition .
Returns
None.

◆ SetColor()

def fsdk.Bookmark.SetColor (   color)

Set the color used for displaying title.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have color. In this case, this function will return directly without doing anything.

Parameters
[in]colorNew color used for displaying title. Format:0xRRGGBB.
Returns
None.

◆ SetDestination()

def fsdk.Bookmark.SetDestination (   destination)

Set the destination.

Bookmark's destination is some place in current document where the bookmark can "goto".
If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have any destination information. In this case, this function will return directly without doing anything.

Parameters
[in]destinationA valid destination.
Returns
None.

◆ SetStyle()

def fsdk.Bookmark.SetStyle (   style)

Set the style.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have style information. In this case, this function will return directly without doing anything.

Parameters
[in]styleNew bookmark style. Please refer to values starting from fsdk.BookmarkE_StyleNormal and this can be one or a combination of these values. If the style is invalid, fsdk.BookmarkE_StyleNormal will be set by default.
Returns
None.

◆ SetTitle()

def fsdk.Bookmark.SetTitle (   title)

Set the title.

If current bookmark is returned by function fsdk.PDFDoc.GetRootBookmark or fsdk.PDFDoc.CreateRootBookmark , that means it is the "root bookmark", and it does not have title. In this case, this function will return directly without doing anything.

Parameters
[in]titleNew title string. It should not be an empty string.
Returns
None.