如何使用Mako SDK检测PDF中的透明度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Mako SDK检测PDF中的透明度?相关的知识,希望对你有一定的参考价值。

我正在使用Mako SDK来分析我的PDF。我目前正在使用DOM:

IDOMNode::walkTree(...)

但我不知道如何判断节点是透明的还是使用透明度。

有没有办法检测节点树中的透明度?

答案

IRendererTransform可以用来做到这一点。基本上你设置了一个IRendererTransform来渲染节点树中的任何透明内容。之后,您可以使用probe(...)计算出在该场景中是否会呈现任何内容。

此代码显示了如何执行此操作:

IRendererTransformPtr transform = IRendererTransform::create(jawsMako);
transform->renderTransparentNodes(true);

if (transform->probe(<your node tree here>))
{
    // If we get here there is something transparent
}

请注意,在大多数情况下,不透明度为零的项目不会被视为透明,因为它们很容易被丢弃。

以上是关于如何使用Mako SDK检测PDF中的透明度?的主要内容,如果未能解决你的问题,请参考以下文章