PDF根目录下有个字典OCProperties,这里保存了图层信息,在《PDF的图层处理笔记》里面我已经提到过PDFium的处理渲染的问题,但是PDFium将PDF拆分单页PDF后就会丢失OCProperties的信息。于是就有了今天的笔记。
其中OCProperties包含OCGs(映射集合或称为引用集合)和D(配置字典),在页面中标识OCG属性的映射一般是在页面属性下“/Resources/Properties/...”
图中的Pr12,Pr104,Pr105实际上是Reference类型(映射),指向的实体类型是字典,Reference类型无法直接和OCProperties产生联系,但是有一个顺序表是一一对应的。所有的包含OC的Reference都是按顺序在OCGs下排列好的。想要知道顺序,完全可以先取得页面OC的顺序,然后在OCGs里面找到对应的字典引用,再通过引用在ON或OFF两个表单上查询。这样可以简单判断Pr12这些实体隐藏与否。