1. 首页
  2. Foxit PDF SDK(Windows版)
  3. 如何创建图层(Java)
  1. 首页
  2. Foxit PDF SDK(Mac版)
  3. 如何创建图层(Java)
  1. 首页
  2. Foxit PDF SDK(Linux版)
  3. 如何创建图层(Java)

如何创建图层(Java)

PDF 图层 (PDF Layer)

Foxit PDF SDK支持PDF图层,也称为可选内容组 (Optional Content Groups,OCG) 。用户可以选择性地查看或隐藏多图层PDF文档的不同层中的内容。多图层广泛用于许多应用领域,如CAD制图、地图、分层艺术品以及多语言文档等。

在Foxit PDF SDK中,PDF图层与图层节点相关联。要获取图层节点,用户应首先构建PDF LayerTree对象,然后调用函数LayerTree.getRootNode以获取整个图层树的根图层节点。另外,您可以从根图层节点开始枚举图层树中的所有节点。Foxit PDF SDK提供APIs用来获取/设置图层数据,查看或隐藏不同图层中的内容,设置图层名称,添加或删除图层,以及编辑图层。

Example:

如何创建一个PDF图层

import static com.foxit.sdk.pdf.LayerTree;
import static com.foxit.sdk.pdf.LayerNode;
...    

LayerTree layertree = new LayerTree(doc);
LayerNode root = layertree.getRootNode();

如何设置所有图层节点的信息

import com.foxit.sdk.pdf.*;
...    

static void setAllLayerNodesInformation(LayerNode layer_node) throws PDFException {
    if (layer_node.hasLayer()) {
        layer_node.setDefaultVisible(true);
        layer_node.setExportUsage(e_StateUndefined);
        layer_node.setViewUsage(e_StateOFF);
        LayerPrintData print_data = new LayerPrintData("subtype_print", e_StateON);
        layer_node.setPrintUsage(print_data);
        LayerZoomData zoom_data = new LayerZoomData(1, 10);
        layer_node.setZoomUsage(zoom_data);
        String new_name = String.format("[View_OFF_Print_ON_Export_Undefined]") +  layer_node.getName();
        layer_node.setName(new_name);
    }
    int count = layer_node.getChildrenCount();
    for (int i = 0; i < count; i++) {
        LayerNode child = layer_node.getChild(i);
        setAllLayerNodesInformation(child);
    }
}
...    

如何编辑图层树

import com.foxit.sdk.pdf.*;
...

LayerTree layertree = new LayerTree(doc);
LayerNode root = layertree.getRootNode();
int children_count = root.getChildrenCount();
root.removeChild(children_count -1);
LayerNode child = root.getChild(children_count - 2);
LayerNode child0 = root.getChild(0);
child.moveTo(child0, 0);
child.addChild(0, "AddedLayerNode", true);
child.addChild(0, "AddedNode", false);
...
更新于 2020年4月22日

这篇文章有用吗?

相关文章