情况:
我的脚本创建了一个以母版页为模板的周计划。
脚本中发生的事情是:
问题:
覆盖后masterPageItems的位置搞砸了。 我已经制作了两个截图作为演示。
现在真正的奇怪之处在于,它会被定制在"自定义尺寸"文件,但它没有搞砸A4格式...
我已经尝试在覆盖它之后恢复每个项目的几何边界,但这似乎不起作用......
您是否知道可能导致此行为的原因是什么?
主页: http://i.imgur.com/T0ApzZj.png?1
覆盖后搞砸了: http://i.imgur.com/Lx6rZup.png?1
修改 作为恢复几何边界的证据不起作用,我做了以下几点:
function OverrideMasterItems(currPage) {
var allItems = currPage.masterPageItems;
var itemPos;
for(var i=0;i<allItems.length;i++){
try{
itemPos = allItems[i].geometricBounds;
allItems[i].override(currPage);
allItems[i].geometricBounds = itemPos;
$.writeln("Original itemPos: " + itemPos);
$.writeln("New itemPos: " + allItems[i].geometricBounds);
if(itemPos == allItems[i].geometricBounds) {
$.writeln("same position");
}
}
catch(e){}
}
}
如您所见,我再次分配项目原始几何边界,并在控制台中表示它具有相同的值 - 但它在截图中看起来像。它也没有写出相同的位置&#34; - 这意味着if语句不是真的......
答案 0 :(得分:0)
我解决了!供将来参考:
这不是一个编程错误,但是一些尴尬的InDesign“Bug(?!)”导致了这种奇怪的行为:
我从另一个具有不同尺寸的文档复制了主页面的元素,我只是调整了文本区域的大小以适应新的格式。
这就是造成这种行为的原因 - 看起来文本字段仍然有来自我从中得到的其他文档的一些信息,而且这些信息不可删除/可编辑。
因为即使删除段落样式等也没有改变奇怪的行为......
由于我对InDesign脚本非常陌生,所以我不知道你们知道这是否是一个常见的事情,但这让我很头疼......;)
编辑1:我没解决!有时候仍然没有工作!
好吧,它仍在发生,我只是不明白为什么......当脚本对某个项目执行“覆盖”时,该项目会重新定位到一个完全错误的位置......