|
Foxit PDF SDK
|
Public 类型 | |
| enum | Style { e_None = 0, e_DecimalNums = 1, e_UpperRomanNums = 2, e_LowerRomanNums = 3, e_UpperLetters = 4, e_LowerLetters = 5 } |
| 页面标签样式枚举。 更多... | |
Public 成员函数 | |
| PageLabels (const PDFDoc &document) | |
| 构造函数,从PDF文档对象构造。 更多... | |
| PageLabels (const PageLabels &other) | |
| 构造函数,使用另一个页面标签对象。 更多... | |
| ~PageLabels () | |
| 析构函数。 | |
| objects::PDFNumberTree | GetNumberTree () |
| 获取页面标签数字树。 更多... | |
| WString | GetPageLabelPrefix (int page_index) const |
| 获取指定页面索引的页面标签(作为编号格式)中的标签前缀字符串。 更多... | |
| int | GetPageLabelStart (int page_index) const |
| 获取指定页面索引的页面标签(作为编号格式)中第一个页面标签的数字部分值。 更多... | |
| Style | GetPageLabelStyle (int page_index) const |
| 获取指定页面索引的页面标签(作为编号格式)中数字部分使用的编号样式。 更多... | |
| WString | GetPageLabelTitle (int page_index) const |
| 获取由页面索引指定的页面的完整页面标签标题。 更多... | |
| bool | HasPageLabel (int page_index) |
| 检查是否为指定页面索引定义了页面标签(作为编号格式)。 更多... | |
| bool | IsEmpty () const |
| 检查当前对象是否为空。 更多... | |
| bool | operator != (const PageLabels &other) const |
| 不相等操作符。 更多... | |
| PageLabels & | operator= (const PageLabels &other) |
| 赋值操作符。 更多... | |
| bool | operator== (const PageLabels &other) const |
| 相等操作符。 更多... | |
| void | RemoveAll () |
| 移除所有页面标签。 更多... | |
| void | RemovePageLabel (int page_index) |
| 移除用指定页面索引定义的页面标签(作为编号格式)。 更多... | |
| void | SetPageLabel (int page_index, Style label_style, int first_label_number, const WString &prefix_string=WString()) |
| 设置由页面索引定义的页面标签(作为编号格式),该页面索引是范围的起始页面索引。 更多... | |
Public 成员函数 继承自 foxit::Base | |
| FS_HANDLE | Handle () const |
| 获取当前对象的句柄。 更多... | |
PDF文档中的每一页都由一个整数页面索引标识,该索引表示页面在文档中的相对位置。 此外,文档可以可选地定义页面标签(PDF 1.3)来 在屏幕上或打印时直观地标识每一页。页面标签标题和页面索引不需要一致: 索引是固定的,从第一页的0开始在文档中连续运行, 但标签标题可以以适合特定文档的任何方式指定。 例如,如果文档以12页用罗马数字编号的前言开始, 文档的其余部分用阿拉伯数字编号,第一页的页面索引为0, 页面标签标题为i,第十二页的索引为11,标签标题为xii, 第十三页的索引为12,标签标题为1。
为了页面标签的目的,文档可以分为标签范围,每个范围是一系列 使用相同编号系统的连续页面。范围内的页面按升序顺序编号。 页面的标签(作为编号格式)由基于其在标签范围内位置的数字部分组成, 可选地在前面加上表示范围本身的标签前缀。 例如,附录中的页面可能标有以字符串A-为前缀的十进制数字部分; 结果页面标签将是A-1、A-2等。更多详情请参考 <PDF Reference 1.7> 中的第8.3.1节"Page Labels"。
此类可用于直接获取页面标签完整标题,获取页面标签(作为编号格式)的信息, 设置或添加新的页面标签等。
页面标签样式枚举。
此枚举的值应单独使用。
|
explicit |
构造函数,从PDF文档对象构造。
如果指定的PDF文档中存在页面标签范围信息, 此函数只是构造一个与这些信息关联的页面标签对象。 如果指定的PDF文档中没有这样的信息,构造的页面标签对象 可用于向PDF文档设置页面标签范围信息。
| [in] | document | 一个有效的PDF文档对象。 |
| foxit::pdf::PageLabels::PageLabels | ( | const PageLabels & | other | ) |
构造函数,使用另一个页面标签对象。
| [in] | other | 另一个页面标签对象。 |
| objects::PDFNumberTree foxit::pdf::PageLabels::GetNumberTree | ( | ) |
获取页面标签数字树。
| WString foxit::pdf::PageLabels::GetPageLabelPrefix | ( | int | page_index | ) | const |
获取指定页面索引的页面标签(作为编号格式)中的标签前缀字符串。
此函数仅在输入页面索引具有页面标签时有用——这意味着页面索引是 页面标签范围的起始页面索引。可以使用函数 PageLabels::HasPageLabel 来检查页面索引是否具有页面标签。 如果输入页面索引没有页面标签,此函数将返回空字符串。
| [in] | page_index | 作为页面标签范围起始页面索引的页面索引。 有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 |
| int foxit::pdf::PageLabels::GetPageLabelStart | ( | int | page_index | ) | const |
获取指定页面索引的页面标签(作为编号格式)中第一个页面标签的数字部分值。
后续页面从此值开始顺序编号,直到出现下一个页面标签范围。 此值必须大于或等于1。
此函数仅在输入页面索引具有页面标签时有用——这意味着页面索引是 页面标签范围的起始页面索引。可以使用函数 PageLabels::HasPageLabel 来检查页面索引是否具有页面标签。 如果输入页面索引没有页面标签,此函数将返回-1。
| [in] | page_index | 作为页面标签范围起始页面索引的页面索引。 有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 |
| Style foxit::pdf::PageLabels::GetPageLabelStyle | ( | int | page_index | ) | const |
获取指定页面索引的页面标签(作为编号格式)中数字部分使用的编号样式。
此函数仅在输入页面索引具有页面标签时有用——这意味着页面索引是 页面标签范围的起始页面索引。可以使用函数 PageLabels::HasPageLabel 来检查页面索引是否具有页面标签。 如果输入页面索引没有页面标签,此函数将返回-1。
| [in] | page_index | 作为页面标签范围起始页面索引的页面索引。 有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 |
| WString foxit::pdf::PageLabels::GetPageLabelTitle | ( | int | page_index | ) | const |
获取由页面索引指定的页面的完整页面标签标题。
此函数可以帮助直接获取指定页面索引的完整页面标签标题, 用户不需要关心此页面属于哪个页面标签范围。
只有当相关PDF文档没有任何页面标签范围信息时, 此函数才会为每个有效页面索引返回空字符串。
| [in] | page_index | 页面索引。有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 |
| bool foxit::pdf::PageLabels::HasPageLabel | ( | int | page_index | ) |
检查是否为指定页面索引定义了页面标签(作为编号格式)。
对于每个页面标签范围,页面标签(作为编号格式)由其起始页面索引定义。
| [in] | page_index | 页面索引。有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 |
| bool foxit::pdf::PageLabels::IsEmpty | ( | ) | const |
检查当前对象是否为空。
当前对象为空时,表示当前对象无用。
| bool foxit::pdf::PageLabels::operator != | ( | const PageLabels & | other | ) | const |
不相等操作符。
| [in] | other | 另一个页面标签对象。此函数将检查当前对象是否不等于此对象。 |
| PageLabels& foxit::pdf::PageLabels::operator= | ( | const PageLabels & | other | ) |
赋值操作符。
| [in] | other | 另一个页面标签对象,其值将被赋予当前对象。 |
| bool foxit::pdf::PageLabels::operator== | ( | const PageLabels & | other | ) | const |
相等操作符。
| [in] | other | 另一个页面标签对象。此函数将检查当前对象是否等于此对象。 |
| void foxit::pdf::PageLabels::RemoveAll | ( | ) |
移除所有页面标签。
| void foxit::pdf::PageLabels::RemovePageLabel | ( | int | page_index | ) |
移除用指定页面索引定义的页面标签(作为编号格式)。
指定页面标签被移除后,相关标签范围将合并到 前一个页面标签范围序列中。
根据 <PDF reference 1.7> 第8.3.1节"Page Labels"的要求,需要用 页面索引0定义的页面标签。因此建议用户不要单独移除页面索引0的页面标签。
| [in] | page_index | 作为页面标签范围起始页面索引的页面索引。 有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 根据 <PDF reference 1.7> 第8.3.1节"Page Labels"的要求, 不建议单独移除用页面索引0定义的页面标签。 |
| void foxit::pdf::PageLabels::SetPageLabel | ( | int | page_index, |
| Style | label_style, | ||
| int | first_label_number, | ||
| const WString & | prefix_string = WString() |
||
| ) |
设置由页面索引定义的页面标签(作为编号格式),该页面索引是范围的起始页面索引。
| [in] | page_index | 作为页面标签范围起始页面索引的页面索引。 有效范围:从0到(count-1)。count是 相关PDF文档的页面数,可通过函数 PDFDoc::GetPageCount 获取。 |
| [in] | label_style | 页面标签范围中数字部分使用的编号样式。 请参考从 PageLabels::e_None 开始的值, 应该是这些值中的一个。 |
| [in] | first_label_number | 页面标签范围中第一个页面标签的数字部分值。 应该大于或等于1。 如果输入值无效,Foxit PDF SDK将默认使用1。 |
| [in] | prefix_string | 标签范围中页面标签的标签前缀字符串。 可以是空字符串,表示不使用前缀字符串。 默认值:空字符串。 |