PDF图层(在<PDF reference 1.7>中称为"可选内容组")是可以使其可见或不可见的 图形集合(在Foxit PDF SDK中称为 foxit.pdf.graphics.GraphicsObject )。属于同一图层的这些图形 可以位于文档中的任何位置:它们不需要在绘制顺序中连续,甚至不需要属于同一内容流。
在Foxit PDF SDK中,PDF图层与图层节点关联,Foxit PDF SDK提供类和方法 通过图层节点获取/设置图层数据。如果用户想要检索图层节点,用户必须首先构造 图层树对象,然后调用函数 LayerTree.GetRootNode 获取 整个图层树的根图层节点。这里,"根图层节点"是一个抽象对象。"根图层节点"只能有 一些子图层节点但没有父节点,或任何数据(如名称、意图等)。而且"根图层节点"不能 在应用程序UI上显示,因为它没有数据。因此,对于根图层节点,只有函数 LayerNode.GetChildrenCount 和 LayerNode.GetChild 有用。
此类提供函数来获取/设置图层数据和属于它的图形。例如:
- 参见
- LayerTree
◆ LayerNode()
| foxit.pdf.LayerNode.LayerNode |
( |
LayerNode |
other | ) |
|
|
inline |
◆ AddChild()
| LayerNode foxit.pdf.LayerNode.AddChild |
( |
int |
index, |
|
|
string |
name, |
|
|
bool |
has_Layer |
|
) |
| |
|
inline |
为当前图层节点添加一个新的图层节点作为子节点。
- 参数
-
| [in] | index | 新子图层节点的子索引。有效范围:从0到数量。 数量表示成为当前图层节点的最后一个子节点, 由函数 LayerNode.GetChildrenCount 返回。 |
| [in] | name | 新图层节点的名称。不应为空字符串。 |
| [in] | has_Layer | true表示新子图层节点将与图层关联, false表示新子图层节点不与图层关联。 |
- 返回
- 指定新子图层节点的图层节点对象。
◆ AddGraphicsObject()
◆ GetAnnots()
获取与当前图层节点相关的注释数组。
此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将直接返回空数组。
- 返回
- 注释数组。
◆ GetChild()
| LayerNode foxit.pdf.LayerNode.GetChild |
( |
int |
index | ) |
|
|
inline |
Get a child node.
- 参数
-
| [in] | index | Index of the child to be retrieved. Valid range: from 0 to (count-1). count is returned by function LayerNode.GetChildrenCount . |
- 返回
- A child layer node object.
◆ GetChildrenCount()
| int foxit.pdf.LayerNode.GetChildrenCount |
( |
| ) |
|
|
inline |
Get the count of children nodes.
- 返回
- The count of children nodes.
◆ GetDict()
获取当前对象的PDF字典。
- 注解
- 请参考<PDF Reference 1.7> P364中的"Optional Content Groups"了解更多详情。
- 返回
- PDF字典。如果当前图层节点的 LayerNode.HasLayer 返回false, 此函数将返回null。
◆ GetExportUsage()
◆ GetGraphicsObjects()
◆ GetName()
| string foxit.pdf.LayerNode.GetName |
( |
| ) |
|
|
inline |
◆ GetPrintUsage()
◆ GetViewUsage()
◆ GetZoomUsage()
◆ HasIntent()
| bool foxit.pdf.LayerNode.HasIntent |
( |
string |
intent | ) |
|
|
inline |
检查当前图层节点是否具有指定的意图。
此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported 。
特别地,当此函数以输入参数"View"返回false时, 表示与当前图层节点相关的图层将始终可见,不会 受到可见性变化的影响。
- 参数
-
| [in] | intent | 要检查的意图名称。不应为空字符串。 预定义的意图名称是"View"和"Design"。 |
- 返回
- true表示当前图层节点具有指定的意图, false表示当前图层节点不具有指定的意图。
◆ HasLayer()
| bool foxit.pdf.LayerNode.HasLayer |
( |
| ) |
|
|
inline |
检查当前图层节点是否与图层关联。
- 返回
- true表示当前图层节点与图层关联, false表示当前图层节点未与图层关联。
◆ IsEmpty()
| bool foxit.pdf.LayerNode.IsEmpty |
( |
| ) |
|
|
inline |
检查当前对象是否为空。
当当前对象为空时,表示当前对象无用。
- 返回
- true表示当前对象为空,false表示不为空。
◆ IsInPage()
| bool foxit.pdf.LayerNode.IsInPage |
( |
PDFPage |
page | ) |
|
|
inline |
◆ IsLocked()
| bool foxit.pdf.LayerNode.IsLocked |
( |
| ) |
|
|
inline |
检查当前图层节点是否被锁定。
- 返回
- true表示当前图层节点被锁定, false表示当前图层节点未被锁定。
◆ MoveTo()
| bool foxit.pdf.LayerNode.MoveTo |
( |
LayerNode |
parent_layer_node, |
|
|
int |
index |
|
) |
| |
|
inline |
将当前图层节点移动为另一个图层节点的子节点。
- 参数
-
| [in] | parent_layer_node | 目标图层节点。它不应该是当前图层节点本身或 当前图层节点的任何后代。当前图层节点将被移动为 目标图层节点的子节点。 |
| [in] | index | 指定当前图层节点作为目标图层节点子节点时位置的子索引。 有效范围:从0到数量。 数量表示成为目标图层节点的最后一个子节点, 由参数parent_layer_node的函数 LayerNode.GetChildrenCount 返回。 |
- 返回
- true表示成功,false表示失败。
◆ RemoveChild()
| bool foxit.pdf.LayerNode.RemoveChild |
( |
int |
index | ) |
|
|
inline |
Remove a child node by index.
- 参数
-
| [in] | index | Index of the child node to be removed. Valid range: from 0 to (count-1). count is returned by function LayerNode.GetChildrenCount . |
- 返回
- true表示成功,false表示失败。
◆ RemoveGraphicsObject()
| bool foxit.pdf.LayerNode.RemoveGraphicsObject |
( |
GraphicsObject |
graphics_object | ) |
|
|
inline |
◆ RemoveUsage()
◆ SetDefaultVisible()
| bool foxit.pdf.LayerNode.SetDefaultVisible |
( |
bool |
is_visible | ) |
|
|
inline |
◆ SetExportUsage()
◆ SetName()
| bool foxit.pdf.LayerNode.SetName |
( |
string |
name | ) |
|
|
inline |
◆ SetPrintUsage()
◆ SetViewUsage()
◆ SetZoomUsage()