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

Public 成员函数

 LayerNode (LayerNode other)
 拷贝构造函数。 更多...
 
LayerNode AddChild (int index, string name, bool has_Layer)
 为当前图层节点添加一个新的图层节点作为子节点。 更多...
 
bool AddGraphicsObject (PDFPage page, GraphicsObject graphicsobject)
 向当前图层节点添加图形对象。 更多...
 
AnnotArray GetAnnots ()
 获取与当前图层节点相关的注释数组。 更多...
 
LayerNode GetChild (int index)
 Get a child node. 更多...
 
int GetChildrenCount ()
 Get the count of children nodes. 更多...
 
PDFDictionary GetDict ()
 获取当前对象的PDF字典。 更多...
 
LayerTree.UsageState GetExportUsage ()
 获取导出用途的状态。 更多...
 
GraphicsObjectArray GetGraphicsObjects (PDFPage page)
 获取与当前图层节点关联的图层相关的所有图形对象。 更多...
 
string GetName ()
 获取当前图层节点的名称。 更多...
 
LayerPrintData GetPrintUsage ()
 获取打印用途的数据。 更多...
 
LayerTree.UsageState GetViewUsage ()
 获取查看用途的状态。 更多...
 
LayerZoomData GetZoomUsage ()
 获取缩放用途的数据。 更多...
 
bool HasIntent (string intent)
 检查当前图层节点是否具有指定的意图。 更多...
 
bool HasLayer ()
 检查当前图层节点是否与图层关联。 更多...
 
bool IsEmpty ()
 检查当前对象是否为空。 更多...
 
bool IsInPage (PDFPage page)
 检查当前图层节点是否在指定的PDF页面中。 更多...
 
bool IsLocked ()
 检查当前图层节点是否被锁定。 更多...
 
bool MoveTo (LayerNode parent_layer_node, int index)
 将当前图层节点移动为另一个图层节点的子节点。 更多...
 
bool RemoveChild (int index)
 Remove a child node by index. 更多...
 
bool RemoveGraphicsObject (GraphicsObject graphics_object)
 从当前图层节点移除图形对象。 更多...
 
bool RemoveUsage (LayerContext.UsageType usage_type)
 移除一种用途属性。 更多...
 
bool SetDefaultVisible (bool is_visible)
 设置默认可见性。 更多...
 
bool SetExportUsage (LayerTree.UsageState state)
 设置导出用途的状态。 更多...
 
bool SetName (string name)
 设置当前图层节点的名称。 更多...
 
bool SetPrintUsage (LayerPrintData data)
 设置图层打印用途的数据。 更多...
 
bool SetViewUsage (LayerTree.UsageState state)
 设置查看用途的状态。 更多...
 
bool SetZoomUsage (LayerZoomData data)
 设置图层缩放用途的数据。 更多...
 

详细描述

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

拷贝构造函数。

参数
[in]other另一个图层节点对象。

成员函数说明

◆ AddChild()

LayerNode foxit.pdf.LayerNode.AddChild ( int  index,
string  name,
bool  has_Layer 
)
inline

为当前图层节点添加一个新的图层节点作为子节点。

参数
[in]index新子图层节点的子索引。有效范围:从0到数量数量表示成为当前图层节点的最后一个子节点, 由函数 LayerNode.GetChildrenCount 返回。
[in]name新图层节点的名称。不应为空字符串。
[in]has_Layertrue表示新子图层节点将与图层关联, false表示新子图层节点不与图层关联。
返回
指定新子图层节点的图层节点对象。

◆ AddGraphicsObject()

bool foxit.pdf.LayerNode.AddGraphicsObject ( PDFPage  page,
GraphicsObject  graphicsobject 
)
inline

向当前图层节点添加图形对象。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]page输入图形对象所属的有效PDF页面。
[in]graphicsobject要添加到当前图层节点的图形对象。
返回
true表示成功,false表示失败。

◆ GetAnnots()

AnnotArray foxit.pdf.LayerNode.GetAnnots ( )
inline

获取与当前图层节点相关的注释数组。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将直接返回空数组。

返回
注释数组。

◆ GetChild()

LayerNode foxit.pdf.LayerNode.GetChild ( int  index)
inline

Get a child node.

参数
[in]indexIndex 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()

PDFDictionary foxit.pdf.LayerNode.GetDict ( )
inline

获取当前对象的PDF字典。

注解
请参考<PDF Reference 1.7> P364中的"Optional Content Groups"了解更多详情。
返回
PDF字典。如果当前图层节点的 LayerNode.HasLayer 返回false, 此函数将返回null

◆ GetExportUsage()

LayerTree.UsageState foxit.pdf.LayerNode.GetExportUsage ( )
inline

获取导出用途的状态。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

返回
图层用途状态。请参考从 foxit.pdf.LayerTree.UsageState.e_StateON 开始的值, 将是这些值中的一个,除了 foxit.pdf.LayerTree.UsageState.e_StateUnchanged

◆ GetGraphicsObjects()

GraphicsObjectArray foxit.pdf.LayerNode.GetGraphicsObjects ( PDFPage  page)
inline

获取与当前图层节点关联的图层相关的所有图形对象。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]page输入图形对象所属的有效PDF页面。
返回
包含相关图形对象的图形对象数组。

◆ GetName()

string foxit.pdf.LayerNode.GetName ( )
inline

获取当前图层节点的名称。

返回
图层节点名称。

◆ GetPrintUsage()

LayerPrintData foxit.pdf.LayerNode.GetPrintUsage ( )
inline

获取打印用途的数据。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

返回
图层打印用途的数据。

◆ GetViewUsage()

LayerTree.UsageState foxit.pdf.LayerNode.GetViewUsage ( )
inline

获取查看用途的状态。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

返回
图层用途状态。请参考从 foxit.pdf.LayerTree.UsageState.e_StateON 开始的值, 将是这些值中的一个,除了 foxit.pdf.LayerTree.UsageState.e_StateUnchanged

◆ GetZoomUsage()

LayerZoomData foxit.pdf.LayerNode.GetZoomUsage ( )
inline

获取缩放用途的数据。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

返回
图层缩放用途的数据。

◆ 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

检查当前图层节点是否在指定的PDF页面中。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]page有效的PDF页面。
返回
true表示当前图层节点在指定的PDF页面中, false表示当前图层节点不在指定的PDF页面中。

◆ 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]indexIndex 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

从当前图层节点移除图形对象。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported
如果输入图形对象不属于当前图层节点, 此函数将直接返回true

参数
[in]graphics_object要从当前图层节点移除的图形对象。
返回
true表示成功,false表示失败。

◆ RemoveUsage()

bool foxit.pdf.LayerNode.RemoveUsage ( LayerContext.UsageType  usage_type)
inline

移除一种用途属性。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported
如果当前图层节点没有指定的用途或没有任何用途, 此函数将返回true

参数
[in]usage_type要移除的图层用途类型。请参考从 foxit.pdf.LayerContext.UsageType.e_UsageView 开始的值,应该是这些值中的一个。
返回
true表示成功,false表示失败。

◆ SetDefaultVisible()

bool foxit.pdf.LayerNode.SetDefaultVisible ( bool  is_visible)
inline

设置默认可见性。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]is_visibletrue表示可见,false表示不可见。
返回
true表示成功,false表示失败。

◆ SetExportUsage()

bool foxit.pdf.LayerNode.SetExportUsage ( LayerTree.UsageState  state)
inline

设置导出用途的状态。

如果用户希望新状态对渲染结果生效,请在此函数成功后构造一个新的图层上下文对象, 然后使用新的图层上下文对象来渲染器进行渲染。
此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]state图层用途状态。应该是以下值之一:
返回
true表示成功,false表示失败。

◆ SetName()

bool foxit.pdf.LayerNode.SetName ( string  name)
inline

设置当前图层节点的名称。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]name新的图层节点名称。不应为空字符串。
返回
true表示成功,false表示失败。

◆ SetPrintUsage()

bool foxit.pdf.LayerNode.SetPrintUsage ( LayerPrintData  data)
inline

设置图层打印用途的数据。

如果用户希望新状态对渲染结果生效,请在此函数成功后构造一个新的图层上下文对象, 然后使用新的图层上下文对象来渲染器进行渲染。
此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]data图层打印用途的新数据。输入数据的打印状态值 应该是以下值之一:
返回
true表示成功,false表示失败。

◆ SetViewUsage()

bool foxit.pdf.LayerNode.SetViewUsage ( LayerTree.UsageState  state)
inline

设置查看用途的状态。

如果用户希望新状态对渲染结果生效,请在此函数成功后构造一个新的图层上下文对象, 然后使用新的图层上下文对象来渲染器进行渲染。
此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]state图层用途状态。应该是以下值之一:
返回
true表示成功,false表示失败。

◆ SetZoomUsage()

bool foxit.pdf.LayerNode.SetZoomUsage ( LayerZoomData  data)
inline

设置图层缩放用途的数据。

此函数只能在函数 LayerNode.HasLayer 返回true时使用。 如果当前图层节点没有图层,此函数将抛出异常 foxit.common.ErrorCode.e_ErrUnsupported

参数
[in]data图层缩放用途的新数据。
返回
true表示成功,false表示失败。