Foxit PDF SDK
foxit.pdf.Bookmark类 参考
类 foxit.pdf.Bookmark 继承关系图:
foxit.common.Base

Public 类型

enum  Position {
  Position.e_PosFirstChild = 0, Position.e_PosLastChild = 1, Position.e_PosPrevSibling = 2, Position.e_PosNextSibling = 3,
  Position.e_PosFirstSibling = 4, Position.e_PosLastSibling = 5
}
 书签位置的枚举。 更多...
 
enum  Style { Style.e_StyleNormal = 0x00, Style.e_StyleItalic = 0x01, Style.e_StyleBold = 0x02 }
 书签样式类型的枚举。 更多...
 

Public 成员函数

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

详细描述

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

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

参见
PDFDoc

成员枚举类型说明

◆ Position

书签位置的枚举。

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

枚举值
e_PosFirstChild 

书签是另一个指定书签的第一个子书签。

e_PosLastChild 

书签是另一个指定书签的最后一个子书签。

e_PosPrevSibling 

书签是另一个指定书签的前一个兄弟书签。

e_PosNextSibling 

书签是另一个指定书签的后一个兄弟书签。

e_PosFirstSibling 

书签是另一个指定书签的第一个兄弟书签。

e_PosLastSibling 

书签是另一个指定书签的最后一个兄弟书签。

◆ Style

书签样式类型的枚举。

此枚举的值可以单独使用或组合使用。

枚举值
e_StyleNormal 

将书签标题显示为普通文本。

e_StyleItalic 

将书签标题显示为斜体文本。

e_StyleBold 

将书签标题显示为粗体文本。

构造及析构函数说明

◆ Bookmark() [1/2]

foxit.pdf.Bookmark.Bookmark ( foxit.pdf.PDFDoc  pdf_doc,
PDFDictionary  bookmark_dict 
)
inline

构造函数,带参数。

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

◆ Bookmark() [2/2]

foxit.pdf.Bookmark.Bookmark ( Bookmark  other)
inline

构造函数,使用另一个书签对象。

参数
[in]other另一个书签对象。

成员函数说明

◆ GetAction()

Action foxit.pdf.Bookmark.GetAction ( )
inline

获取动作。

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

返回
一个动作对象。

◆ GetColor()

int foxit.pdf.Bookmark.GetColor ( )
inline

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

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有颜色信息。在这种情况下,此函数将返回0x000000。

返回
颜色值。格式:0xRRGGBB。

◆ GetDestination()

Destination foxit.pdf.Bookmark.GetDestination ( )
inline

获取目标。

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

返回
目标对象。

◆ GetDict()

PDFDictionary foxit.pdf.Bookmark.GetDict ( )
inline

获取当前书签的PDF字典。

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

◆ GetFirstChild()

Bookmark foxit.pdf.Bookmark.GetFirstChild ( )
inline

获取第一个子书签。

返回
第一个子书签对象。

◆ GetNextSibling()

Bookmark foxit.pdf.Bookmark.GetNextSibling ( )
inline

获取下一个兄弟书签。

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

返回
下一个兄弟书签对象。

◆ GetParent()

Bookmark foxit.pdf.Bookmark.GetParent ( )
inline

获取父书签。

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

返回
父书签对象。

◆ GetStyle()

int foxit.pdf.Bookmark.GetStyle ( )
inline

获取用于显示标题的样式。

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有样式信息。在这种情况下,此函数将返回 foxit.pdf.Bookmark.Style.e_StyleNormal

返回
样式值。请参阅从 foxit.pdf.Bookmark.Style.e_StyleNormal 开始的值, 这可以是这些值中的一个或它们的组合。

◆ GetTitle()

string foxit.pdf.Bookmark.GetTitle ( )
inline

获取标题。

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

返回
标题字符串。

◆ HasChild()

bool foxit.pdf.Bookmark.HasChild ( )
inline

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

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

◆ Insert()

Bookmark foxit.pdf.Bookmark.Insert ( string  title,
Bookmark.Position  position 
)
inline

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

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

参数
[in]title新书签的标题字符串。它不应该是空字符串。
[in]position要插入的新书签项目的位置,基于当前书签。 请参阅从 foxit.pdf.Bookmark.Position.e_PosFirstChild 开始的值, 这应该是这些值中的一个。
如果当前书签只是"根书签",参数position只能是 foxit.pdf.Bookmark.Position.e_PosFirstChild foxit.pdf.Bookmark.Position.e_PosLastChild
返回
一个新的书签对象。

◆ IsEmpty()

bool foxit.pdf.Bookmark.IsEmpty ( )
inline

检查当前对象是否为空。

当当前对象为空时,意味着当前对象是无用的。

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

◆ IsFirstChild()

bool foxit.pdf.Bookmark.IsFirstChild ( )
inline

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

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

◆ IsLastChild()

bool foxit.pdf.Bookmark.IsLastChild ( )
inline

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

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

◆ IsRoot()

bool foxit.pdf.Bookmark.IsRoot ( )
inline

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

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

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

◆ MoveTo()

bool foxit.pdf.Bookmark.MoveTo ( Bookmark  dest_bookmark,
Bookmark.Position  position 
)
inline

将当前书签移动为另一个书签的子书签或兄弟书签。

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",不能移动。在这种情况下,此函数将返回false

参数
[in]dest_bookmark目标书签,当前书签将移动为其子书签或兄弟书签。
[in]position当前书签与目标书签的位置关系。 请参阅从 foxit.pdf.Bookmark.Position.e_PosFirstChild 开始的值, 这应该是这些值中的一个。
返回
true表示成功,false表示失败。

◆ RemoveAction()

bool foxit.pdf.Bookmark.RemoveAction ( )
inline

删除动作。

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何动作信息。在这种情况下,此函数将 直接返回true

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

◆ SetAction()

void foxit.pdf.Bookmark.SetAction ( Action  action)
inline

设置动作。

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何动作信息。在这种情况下,此函数将 直接返回而不做任何事情。

参数
[in]action一个有效的动作对象。
返回
无。

◆ SetColor()

void foxit.pdf.Bookmark.SetColor ( int  color)
inline

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

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有颜色信息。在这种情况下,此函数将直接返回而不做任何事情。

参数
[in]color颜色值。格式:0xRRGGBB。
返回
无。

◆ SetDestination()

void foxit.pdf.Bookmark.SetDestination ( Destination  destination)
inline

设置目标。

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

参数
[in]destination一个有效的目标。
返回
无。

◆ SetStyle()

void foxit.pdf.Bookmark.SetStyle ( int  style)
inline

设置用于显示标题的样式。

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有样式信息。在这种情况下,此函数将直接返回而不做任何事情。

参数
[in]style样式值。请参阅从 foxit.pdf.Bookmark.Style.e_StyleNormal 开始的值, 这可以是这些值中的一个或它们的组合。 如果style无效,默认情况下将设置 foxit.pdf.Bookmark.Style.e_StyleNormal
返回
无。

◆ SetTitle()

void foxit.pdf.Bookmark.SetTitle ( string  title)
inline

设置标题。

如果当前书签由函数 PDFDoc.GetRootBookmark PDFDoc.CreateRootBookmark 返回, 这意味着它是"根书签",它没有标题。在这种情况下,此函数将直接返回而不做任何事情。

参数
[in]title新的标题字符串。它不应该是空字符串。
返回
无。