标记PDF如何将PDSELECTION移动到PDSTreeRoot中的另一个位置?

标记PDF如何将PDSELECTION移动到PDSTreeRoot中的另一个位置?,pdf,adobe,accessibility,Pdf,Adobe,Accessibility,我正在用Adobe的PDF库标记PDF内容。我的逻辑树结构有几个元素 顶部元素称为文档。我需要移动PSDEelement文档下的所有其他psdelement。这是创建可访问PDF所必需的 我可以用AcrobatPro(只需按住shift键并单击标记所有标记元素,然后将它们移动到文档标记下)来实现这一点,因此我认为这在AdobePDF库中是可能的 ASInt32 numKids = PDSTreeRootGetNumKids (myTreeRoot); PDSElement pd

我正在用Adobe的PDF库标记PDF内容。我的逻辑树结构有几个元素

顶部元素称为
文档
。我需要移动
PSDEelement文档下的所有其他
psdelement
。这是创建可访问PDF所必需的

我可以用AcrobatPro(只需按住shift键并单击标记所有标记元素,然后将它们移动到文档标记下)来实现这一点,因此我认为这在AdobePDF库中是可能的

    ASInt32 numKids = PDSTreeRootGetNumKids (myTreeRoot);
    PDSElement  pdsDocElem, pdsElem;
    //First PDSElement is the Document-Element
    PDSTreeRootGetKid(myTreeRoot, 0, &pdsDocElem);


    for( int i2 = 1; i2 < numKids;i2++)
    {
        PDSTreeRootGetKid(myTreeRoot,i2,&pdsElem);
        PDSElementInsertKid(pdsDocElem,pdsElem,kPDSAfterLast);
    }
ASInt32 numKids=PDSTreeRootGetNumKids(myTreeRoot);
PDSElement-pdsDocElem,pdsElem;
//第一个PDSElement是Document元素
PDSTreeRootGetKid(myTreeRoot、0和pdsDocElem);
for(inti2=1;i2
最后一行抛出以下错误:

错误代码:1074855939:为PDS过程提供的类型参数错误


有什么帮助吗?

它会立即抛出该错误吗?还是只在迭代之后?我不知道这棵树到底是如何工作的,但是你在计算PDSTreeRoot中的元素数量,然后在一个循环中,你开始将东西从PDSTreeRoot数组移动到另一个元素中;有效地从PDSTreeRoot对象中删除它我猜。。。你不是在破坏你自己的计票计划吗?谢谢你的回答,瑞安。你在描述一个我没想到的问题!但在第一次调用时会抛出错误:(