Foxit PDF SDK
FSDK::Bookmark类 参考

Public 成员函数

 constructor (pdf_doc, bookmark_dict)
 带参数的构造函数。 更多...
 
 GetAction ()
 获取动作。 更多...
 
 GetColor ()
 获取用于显示标题的颜色。 更多...
 
 GetDestination ()
 获取目标位置。 更多...
 
 GetDict ()
 获取当前书签的 PDF 字典。 更多...
 
 GetFirstChild ()
 获取第一个子书签。 更多...
 
 GetNextSibling ()
 获取下一个同级书签。 更多...
 
 GetParent ()
 获取父书签。 更多...
 
 GetStyle ()
 获取样式。 更多...
 
 GetTitle ()
 获取标题。 更多...
 
 HasChild ()
 检查当前书签是否有子书签。 更多...
 
 Insert (title, position)
 根据与当前书签的关系位置插入新书签。 更多...
 
 IsEmpty ()
 检查当前对象是否为空。 更多...
 
 IsFirstChild ()
 检查当前书签是否为其父书签的第一个子项。 更多...
 
 IsLastChild ()
 检查当前书签是否为其父书签的最后一个子项。 更多...
 
 IsRoot ()
 检查当前书签是否为根书签。 更多...
 
 MoveTo (dest_bookmark, position)
 将当前书签移动为另一个书签的子项或同级项。 更多...
 
 RemoveAction ()
 移除动作。 更多...
 
 SetAction (action)
 设置动作。 更多...
 
 SetColor (color)
 设置用于显示标题的颜色。 更多...
 
 SetDestination (destination)
 设置目标位置。 更多...
 
 SetStyle (style)
 设置样式。 更多...
 
 SetTitle (title)
 设置标题。 更多...
 

静态 Public 属性

static e_PosFirstChild
 书签位置枚举。 更多...
 
static e_PosFirstSiblingv
 书签是另一个指定书签的第一个同级项。
 
static e_PosLastChild
 书签是另一个指定书签的最后一个子项。
 
static e_PosLastSibling
 书签是另一个指定书签的最后一个同级项。
 
static e_PosNextSibling
 书签是另一个指定书签的下一个同级项。
 
static e_PosPrevSibling
 书签是另一个指定书签的前一个同级项。
 
static e_StyleBold
 将书签标题显示为粗体文本。
 
static e_StyleItalic
 将书签标题显示为斜体文本。
 
static e_StyleNormal
 书签样式类型枚举。 更多...
 

详细描述

PDF 书签也称为"大纲"。它是一个树形结构的层次结构。它允许用户通过选择书签轻松导航 PDF 文档。 一个书签包含目标位置或动作,以指示当用户选择它时如何响应。
为了获取/设置书签树,必须首先调用函数 FSDK.PDFDoc.GetRootBookmark 来 获取整个书签树的根。如果"根书签"不存在,可以调用函数 FSDK.PDFDoc.CreateRootBookmark 来创建新的"根书签"。 这里,"根书签"是一个抽象对象。它表示 PDF 文档的"大纲"。 有关"大纲"的更多详细信息,请参阅 PDF Reference 1.7 第 8.2.3 节。 "根书签"只能有一些子书签,但没有父书签、 没有下一个同级书签或任何数据(包括书签数据、目标位置数据和动作数据)。 并且"根书签"无法在应用程序 UI 上显示,因为它没有数据。因此,对于根书签, 只能使用函数 FSDK.Bookmark.GetFirstChild
从根书签开始,可以遍历书签树并访问每个书签节点。
此类提供了几个函数来从当前书签获取/设置其他书签。例如:

此类还提供了获取/设置 PDF 书签数据的函数。

参见
FSDK.PDFDoc

成员函数说明

◆ constructor()

FSDK::Bookmark::constructor ( pdf_doc  ,
bookmark_dict   
)

带参数的构造函数。

参数
[in]pdf_doc有效的 PDF 文档对象。
[in]bookmark_dict表示书签的 PDF 字典。此 PDF 字典应已存在于 参数 pdf_doc 表示的 PDF 文档中。

◆ GetAction()

FSDK::Bookmark::GetAction ( )

获取动作。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有任何动作信息。在这种情况下,此函数将 返回一个其函数 FSDK.Action.IsEmpty 返回 true 的动作对象。

返回
动作对象。

◆ GetColor()

FSDK::Bookmark::GetColor ( )

获取用于显示标题的颜色。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有颜色。在这种情况下,此函数将默认返回 0x000000。

返回
用于显示标题的颜色。格式:0xRRGGBB。

◆ GetDestination()

FSDK::Bookmark::GetDestination ( )

获取目标位置。

书签的目标位置是书签可以"跳转"到的当前文档中的某个位置。 如果书签无法"跳转"到当前文档中的任何位置,这意味着无法检索目标位置信息, 此函数将返回一个其函数 FSDK.Destination.IsEmpty 返回 true 的目标位置对象。
如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有任何目标位置信息。在这种情况下,此函数将 返回一个其函数 FSDK.Destination.IsEmpty 返回 true 的目标位置对象。

返回
目标位置对象。

◆ GetDict()

FSDK::Bookmark::GetDict ( )

获取当前书签的 PDF 字典。

返回
PDF 字典。如果有任何错误,此函数将返回 null

◆ GetFirstChild()

FSDK::Bookmark::GetFirstChild ( )

获取第一个子书签。

返回
第一个子书签对象。

◆ GetNextSibling()

FSDK::Bookmark::GetNextSibling ( )

获取下一个同级书签。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有任何同级书签。在这种情况下,此函数将 返回一个其函数 FSDK.Bookmark.IsEmpty 返回 true 的书签对象。

返回
下一个同级书签对象。

◆ GetParent()

FSDK::Bookmark::GetParent ( )

获取父书签。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有父书签。在这种情况下,此函数将 返回一个其函数 FSDK.Bookmark.IsEmpty 返回 true 的书签对象。

返回
父书签对象。

◆ GetStyle()

FSDK::Bookmark::GetStyle ( )

获取样式。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有样式信息。在这种情况下,此函数将默认返回 FSDK.Bookmark.e_StyleNormal

返回
书签样式的值。请参考从 FSDK.Bookmark.e_StyleNormal 开始的值, 这将是这些值之一或组合。

◆ GetTitle()

FSDK::Bookmark::GetTitle ( )

获取标题。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有标题。在这种情况下,此函数将返回空字符串。

返回
标题字符串。

◆ HasChild()

FSDK::Bookmark::HasChild ( )

检查当前书签是否有子书签。

返回
true 表示当前书签有子书签,false 表示 当前书签没有任何子书签。

◆ Insert()

FSDK::Bookmark::Insert ( title  ,
position   
)

根据与当前书签的关系位置插入新书签。

对于新书签,颜色默认为 0x000000,样式默认为 FSDK.Bookmark.e_StyleNormal

参数
[in]title新书签的标题字符串。不应为空字符串。
[in]position基于当前书签插入新书签项的位置。 请参考从 FSDK.Bookmark.e_PosFirstChild 开始的值, 这应该是这些值之一。
如果当前书签就是"根书签",参数 position 只能是 FSDK.Bookmark.e_PosFirstChildFSDK.Bookmark.e_PosLastChild
返回
新书签对象。

◆ IsEmpty()

FSDK::Bookmark::IsEmpty ( )

检查当前对象是否为空。

当前对象为空时,表示当前对象无用。

返回
true 表示当前对象为空,而 false 表示不为空。

◆ IsFirstChild()

FSDK::Bookmark::IsFirstChild ( )

检查当前书签是否为其父书签的第一个子项。

返回
true 表示当前书签是其父书签的第一个子项, 而 false 表示不是。

◆ IsLastChild()

FSDK::Bookmark::IsLastChild ( )

检查当前书签是否为其父书签的最后一个子项。

返回
true 表示当前书签是其父书签的最后一个子项, 而 false 表示不是。

◆ IsRoot()

FSDK::Bookmark::IsRoot ( )

检查当前书签是否为根书签。

"根书签"是一个抽象对象。它表示 PDF 文档的"大纲"。 有关"大纲"的更多详细信息,请参阅 PDF Reference 1.7 第 8.2.3 节。 "根书签"只能有一些子书签,但没有父书签、 没有下一个同级书签或任何数据(包括书签数据、目标位置数据和动作数据)。 并且"根书签"无法在应用程序 UI 上显示,因为它没有数据。

返回
true 表示当前书签是根书签,而 false 表示不是。

◆ MoveTo()

FSDK::Bookmark::MoveTo ( dest_bookmark  ,
position   
)

将当前书签移动为另一个书签的子项或同级项。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且它不能被移动为书签树中任何书签的子项或同级项。 在这种情况下,此函数将直接返回 false

参数
[in]dest_bookmark目标书签。它不应是当前书签本身或 当前书签的任何后代。
当前书签将被移动为目标书签的子项或同级项。
[in]position当前书签要移动到的位置, 基于参数 destBookmark。请参考从 FSDK.Bookmark.e_PosFirstChild 开始的值,这应该是这些值之一。
返回
true 表示成功,而 false 表示失败。

◆ RemoveAction()

FSDK::Bookmark::RemoveAction ( )

移除动作。

移除书签的动作时,书签的目标位置也将同时被移除。
如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有任何动作信息。在这种情况下,此函数将直接返回 true

返回
true 表示成功,而 false 表示失败。

◆ SetAction()

FSDK::Bookmark::SetAction ( action  )

设置动作。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有任何动作信息。在这种情况下,此函数将直接返回而不执行任何操作。

参数
[in]action要设置的有效动作。当前仅支持以下类型作为新动作:
FSDK.Action.e_TypeGotoFSDK.Action.e_TypeURIFSDK.Action.e_TypeJavaScriptFSDK.Action.e_TypeNamedFSDK.Action.e_TypeGoToRFSDK.Action.e_TypeGoToEFSDK.Action.e_TypeSubmitFormFSDK.Action.e_TypeResetFormFSDK.Action.e_TypeHideFSDK.Action.e_TypeLaunchFSDK.Action.e_TypeImportDataFSDK.Action.e_TypeRendition
返回
无。

◆ SetColor()

FSDK::Bookmark::SetColor ( color  )

设置用于显示标题的颜色。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有颜色。在这种情况下,此函数将直接返回而不执行任何操作。

参数
[in]color用于显示标题的新颜色。格式:0xRRGGBB。
返回
无。

◆ SetDestination()

FSDK::Bookmark::SetDestination ( destination  )

设置目标位置。

书签的目标位置是书签可以"跳转"到的当前文档中的某个位置。
如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有任何目标位置信息。在这种情况下,此函数将 直接返回而不执行任何操作。

参数
[in]destination有效的目标位置。
返回
无。

◆ SetStyle()

FSDK::Bookmark::SetStyle ( style  )

设置样式。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有样式信息。在这种情况下,此函数将直接返回而不执行任何操作。

参数
[in]style新书签样式。请参考从 FSDK.Bookmark.e_StyleNormal 开始的值, 这可以是这些值之一或组合。 如果 style 无效,将默认设置为 FSDK.Bookmark.e_StyleNormal
返回
无。

◆ SetTitle()

FSDK::Bookmark::SetTitle ( title  )

设置标题。

如果当前书签是由函数 FSDK.PDFDoc.GetRootBookmarkFSDK.PDFDoc.CreateRootBookmark 返回的,这意味着它是"根书签", 并且没有标题。在这种情况下,此函数将直接返回而不执行任何操作。

参数
[in]title新标题字符串。不应为空字符串。
返回
无。

类成员变量说明

◆ e_PosFirstChild

FSDK::Bookmark::e_PosFirstChild
static

书签位置枚举。

此枚举的值应单独使用。
实际上,"书签位置"是指一个书签与另一个书签之间的关系。书签是另一个指定书签的第一个子项。

◆ e_StyleNormal

FSDK::Bookmark::e_StyleNormal
static

书签样式类型枚举。

此枚举的值可以单独使用或组合使用。将书签标题显示为普通文本。