|
Foxit PDF SDK
|
Public 类型 | |
| enum | Position { e_PosFirstChild = 0, e_PosLastChild = 1, e_PosPrevSibling = 2, e_PosNextSibling = 3, e_PosFirstSibling = 4, e_PosLastSibling = 5 } |
| 书签位置的枚举。 更多... | |
| enum | Style { e_StyleNormal = 0x00, e_StyleItalic = 0x01, e_StyleBold = 0x02 } |
| 书签样式类型的枚举。 更多... | |
Public 成员函数 | |
| Bookmark (const PDFDoc &pdf_doc, objects::PDFDictionary *bookmark_dict) | |
| 构造函数,带参数。 更多... | |
| Bookmark (const Bookmark &other) | |
| 构造函数,使用另一个书签对象。 更多... | |
| ~Bookmark () | |
| 析构函数。 | |
| actions::Action | GetAction () |
| 获取动作。 更多... | |
| uint32 | GetColor () |
| 获取用于显示标题的颜色。 更多... | |
| Destination | GetDestination () |
| 获取目标。 更多... | |
| objects::PDFDictionary * | GetDict () const |
| 获取当前书签的PDF字典。 更多... | |
| Bookmark | GetFirstChild () |
| 获取第一个子书签。 更多... | |
| Bookmark | GetNextSibling () |
| 获取下一个兄弟书签。 更多... | |
| Bookmark | GetParent () |
| 获取父书签。 更多... | |
| uint32 | GetStyle () |
| 获取用于显示标题的样式。 更多... | |
| WString | GetTitle () const |
| 获取标题。 更多... | |
| bool | HasChild () |
| 检查当前书签是否有子书签。 更多... | |
| Bookmark | Insert (const WString &title, Position position) |
| 根据与当前书签的关系位置插入新书签。 更多... | |
| bool | IsEmpty () const |
| 检查当前对象是否为空。 更多... | |
| bool | IsFirstChild () |
| 检查当前书签是否为其父书签的第一个子书签。 更多... | |
| bool | IsLastChild () |
| 检查当前书签是否为其父书签的最后一个子书签。 更多... | |
| bool | IsRoot () |
| 检查当前书签是否为根书签。 更多... | |
| bool | MoveTo (const Bookmark &dest_bookmark, Position position) |
| 将当前书签移动为另一个书签的子书签或兄弟书签。 更多... | |
| bool | operator != (const Bookmark &other) const |
| 不相等操作符。 更多... | |
| Bookmark & | operator= (const Bookmark &other) |
| 赋值操作符。 更多... | |
| bool | operator== (const Bookmark &other) const |
| 相等操作符。 更多... | |
| bool | RemoveAction () |
| 删除动作。 更多... | |
| void | SetAction (const actions::Action &action) |
| 设置动作。 更多... | |
| void | SetColor (uint32 color) |
| 设置用于显示标题的颜色。 更多... | |
| void | SetDestination (const Destination &destination) |
| 设置目标。 更多... | |
| void | SetStyle (uint32 style) |
| 设置用于显示标题的样式。 更多... | |
| void | SetTitle (const WString &title) |
| 设置标题。 更多... | |
Public 成员函数 继承自 foxit::Base | |
| FS_HANDLE | Handle () const |
| 获取当前对象的句柄。 更多... | |
PDF书签也被称为"大纲"。它是一个树状结构的层次结构。它允许用户通过选择书签轻松地浏览PDF文档。 一个书签包含一个目标或动作,用来指示当用户选择它时如何响应。
为了获取/设置书签树,必须首先调用函数 PDFDoc::GetRootBookmark 来 获取整个书签树的根。如果"根书签"不存在,可以调用函数 PDFDoc::CreateRootBookmark 来创建一个新的"根书签"。 在这里,"根书签"是一个抽象对象。它代表PDF文档的"大纲"。 有关"大纲"的更多详细信息,请参阅PDF参考文档1.7的第8.2.3节。 "根书签"只能有一些子书签,但没有父书签, 没有下一个兄弟书签或任何数据(包括书签数据、目标数据和动作数据)。 并且"根书签"不能在应用程序UI上显示,因为它没有数据。因此,对于根书签, 只能使用函数 Bookmark::GetFirstChild。
从根书签开始,可以遍历书签树并访问每个书签节点。
此类提供了几个函数来从当前书签获取/设置其他书签。例如:
此类还提供了获取/设置PDF书签数据的函数。
| foxit::pdf::Bookmark::Bookmark | ( | const PDFDoc & | pdf_doc, |
| objects::PDFDictionary * | bookmark_dict | ||
| ) |
构造函数,带参数。
| [in] | pdf_doc | 一个有效的PDF文档对象。 |
| [in] | bookmark_dict | 表示书签的PDF字典。此PDF字典应该已经存在于 参数pdf_doc所表示的PDF文档中。 |
| foxit::pdf::Bookmark::Bookmark | ( | const Bookmark & | other | ) |
构造函数,使用另一个书签对象。
| [in] | other | 另一个书签对象。 |
| actions::Action foxit::pdf::Bookmark::GetAction | ( | ) |
获取动作。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何动作信息。在这种情况下,此函数将 返回一个动作对象,其函数 actions::Action::IsEmpty 返回 true。
| uint32 foxit::pdf::Bookmark::GetColor | ( | ) |
获取用于显示标题的颜色。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有颜色信息。在这种情况下,此函数将返回0x000000。
| Destination foxit::pdf::Bookmark::GetDestination | ( | ) |
获取目标。
书签的目标是当前文档中书签可以"跳转到"的某个位置。 如果书签不能"跳转到"当前文档中的任何位置,这意味着无法检索目标信息, 此函数将返回一个目标对象,其函数 Destination::IsEmpty 返回 true。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何目标信息。在这种情况下,此函数将 返回一个目标对象,其函数 Destination::IsEmpty 返回 true。
| objects::PDFDictionary* foxit::pdf::Bookmark::GetDict | ( | ) | const |
获取当前书签的PDF字典。
| Bookmark foxit::pdf::Bookmark::GetFirstChild | ( | ) |
获取第一个子书签。
| Bookmark foxit::pdf::Bookmark::GetNextSibling | ( | ) |
获取下一个兄弟书签。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何兄弟书签。在这种情况下,此函数将 返回一个书签对象,其函数 Bookmark::IsEmpty 返回 true。
| Bookmark foxit::pdf::Bookmark::GetParent | ( | ) |
获取父书签。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有父书签。在这种情况下,此函数将 返回一个书签对象,其函数 Bookmark::IsEmpty 返回 true。
| uint32 foxit::pdf::Bookmark::GetStyle | ( | ) |
获取用于显示标题的样式。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有样式信息。在这种情况下,此函数将返回 Bookmark::e_StyleNormal。
| WString foxit::pdf::Bookmark::GetTitle | ( | ) | const |
获取标题。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有标题。在这种情况下,此函数将返回一个空字符串。
| bool foxit::pdf::Bookmark::HasChild | ( | ) |
检查当前书签是否有子书签。
根据与当前书签的关系位置插入新书签。
对于新书签,颜色默认为0x000000,样式默认为 Bookmark::e_StyleNormal。
| [in] | title | 新书签的标题字符串。它不应该是空字符串。 |
| [in] | position | 要插入的新书签项目的位置,基于当前书签。 请参阅从 Bookmark::e_PosFirstChild 开始的值, 这应该是这些值中的一个。 如果当前书签只是"根书签",参数position只能是 Bookmark::e_PosFirstChild 或 Bookmark::e_PosLastChild。 |
| bool foxit::pdf::Bookmark::IsEmpty | ( | ) | const |
检查当前对象是否为空。
当当前对象为空时,意味着当前对象是无用的。
| bool foxit::pdf::Bookmark::IsFirstChild | ( | ) |
检查当前书签是否为其父书签的第一个子书签。
| bool foxit::pdf::Bookmark::IsLastChild | ( | ) |
检查当前书签是否为其父书签的最后一个子书签。
| bool foxit::pdf::Bookmark::IsRoot | ( | ) |
检查当前书签是否为根书签。
"根书签"是一个抽象对象。它代表PDF文档的"大纲"。 有关"大纲"的更多详细信息,请参阅PDF参考文档1.7的第8.2.3节。 "根书签"只能有一些子书签,但没有父书签, 没有下一个兄弟书签或任何数据(包括书签数据、目标数据和动作数据)。 并且"根书签"不能在应用程序UI上显示,因为它没有数据。
将当前书签移动为另一个书签的子书签或兄弟书签。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",不能移动。在这种情况下,此函数将返回false。
| [in] | dest_bookmark | 目标书签,当前书签将移动为其子书签或兄弟书签。 |
| [in] | position | 当前书签与目标书签的位置关系。 请参阅从 Bookmark::e_PosFirstChild 开始的值, 这应该是这些值中的一个。 |
| bool foxit::pdf::Bookmark::operator != | ( | const Bookmark & | other | ) | const |
不相等操作符。
| [in] | other | 另一个书签对象。此函数将检查当前对象是否不等于这个对象。 |
赋值操作符。
| [in] | other | 另一个书签对象,其值将被赋值给当前对象。 |
| bool foxit::pdf::Bookmark::operator== | ( | const Bookmark & | other | ) | const |
相等操作符。
| [in] | other | 另一个书签对象。此函数将检查当前对象是否等于这个对象。 |
| bool foxit::pdf::Bookmark::RemoveAction | ( | ) |
删除动作。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何动作信息。在这种情况下,此函数将 直接返回true。
| void foxit::pdf::Bookmark::SetAction | ( | const actions::Action & | action | ) |
设置动作。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何动作信息。在这种情况下,此函数将 直接返回而不做任何事情。
| [in] | action | 一个有效的动作对象。 |
| void foxit::pdf::Bookmark::SetColor | ( | uint32 | color | ) |
设置用于显示标题的颜色。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有颜色信息。在这种情况下,此函数将直接返回而不做任何事情。
| [in] | color | 颜色值。格式:0xRRGGBB。 |
| void foxit::pdf::Bookmark::SetDestination | ( | const Destination & | destination | ) |
设置目标。
书签的目标是当前文档中书签可以"跳转到"的某个位置。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有任何目标信息。在这种情况下,此函数将 直接返回而不做任何事情。
| [in] | destination | 一个有效的目标。 |
| void foxit::pdf::Bookmark::SetStyle | ( | uint32 | style | ) |
设置用于显示标题的样式。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有样式信息。在这种情况下,此函数将直接返回而不做任何事情。
| [in] | style | 样式值。请参阅从 Bookmark::e_StyleNormal 开始的值, 这可以是这些值中的一个或它们的组合。 如果style无效,默认情况下将设置 Bookmark::e_StyleNormal。 |
| void foxit::pdf::Bookmark::SetTitle | ( | const WString & | title | ) |
设置标题。
如果当前书签由函数 PDFDoc::GetRootBookmark 或 PDFDoc::CreateRootBookmark 返回, 这意味着它是"根书签",它没有标题。在这种情况下,此函数将直接返回而不做任何事情。
| [in] | title | 新的标题字符串。它不应该是空字符串。 |