scripting - InDesign 将图层复制到另一个文档

标签 scripting adobe-indesign extendscript

我正在尝试编写一个脚本,将一个图层从一个文档复制到另一个文档。

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 中无效。多年来,我一直在努力为 InDesign 脚本寻找一些不错的文档。但我能找到的只有 CS 脚本指南,它用处不大。

http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/products/indesign/pdfs/InDesignCS5_ScriptingGuide_JS.pdf

如果有人能指出对象模型的良好引用,我将不胜感激。

最佳答案

经过一番谷歌搜索,我终于找到了答案:

 var sourceLayer = app.documents[0].layers.itemByName("Layer1");
 var destLayer = app.documents[1].layers[0];

 sourceLayer.pageItems.everyItem().duplicate(destLayer);

我也遇到了jongware这似乎是直接从 Adob​​e CS 中提取的完整对象引用。

关于scripting - InDesign 将图层复制到另一个文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16476879/

相关文章:

javascript - 如何为 Illustrator CS5 的嵌套复合路径 Extendscript 着色?

events - InDesign CC 2014 扩展脚本 : How to reliably close document after asynchronous PDF export

bash - bash 中的动态 case 语句

linux - 在 Mac OS X 上运行 "yes 0 | script -c ' ispell text.txt'/dev/null"

linux - 在 Linux 中快速简单的 GUI 编程

html - 将 Html 导入 Adob​​e Indesign

c# - .NET 应用程序中的嵌入式脚本引擎

正则表达式选择长度超过 4 个字符的单词,但如果重复则仅选择一个实例

c# - 通过 COM 使用 C# 进行 InDesign Server 开发

unit-testing - Extendscript 的单元测试