我正在尝试编写一个脚本,将一个图层从一个文档复制到另一个文档。
var srcDocName = 0;
var destDocName = 1;
var layerNameOriginal = "Original";
var layerNameCopyTo = "Destination";
var destDoc = app.documents.item(destDocName);
var layerSrc = app.documents.item(srcDocName).layers.item(layerNameOriginal);
try {
layerSrc.duplicate(destDoc, ElementPlacement.INSIDE);
}
catch(e) {
alert(e)
}
显然,这可以在Photoshop中使用,但不能在凹痕中使用。我一直在努力为Indesign脚本找到一些不错的文档。但我能找到的只是CS脚本指南,它没什么用处。
如果有人能指出我对对象模型的一个很好的参考,我将不胜感激。
答案 0 :(得分:2)
经过一番谷歌搜索后,我终于找到了答案:
var sourceLayer = app.documents[0].layers.itemByName("Layer1");
var destLayer = app.documents[1].layers[0];
sourceLayer.pageItems.everyItem().duplicate(destLayer);
我也遇到jongware,这似乎是直接从Adobe CS中提取的完整对象引用。
答案 1 :(得分:0)
您可以使用此脚本:https://redokun.com/blog/indesign-copy-entire-layer-one-file-another
底层实现基本相同,但我们添加了一个UI,因此每次图层名称更改时都不需要编辑脚本。
编辑:我们被告知上述解决方案不适用于线程文本框架,因此我重新编写了脚本。新的实现方式更复杂,但它现在支持线程TF。
答案 2 :(得分:0)
要扩展Loopo提供的解决方案,并使您能够将所有层从一个文档复制到另一个文档...
fadeIn()