Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过ID获取图层对象_Javascript_Photoshop_Photoshop Script_Jsx - Fatal编程技术网

Javascript 如何通过ID获取图层对象

Javascript 如何通过ID获取图层对象,javascript,photoshop,photoshop-script,jsx,Javascript,Photoshop,Photoshop Script,Jsx,Photoshop脚本API让我很挣扎。一点也不友好。 但我仍然相信,当我有图层id时,有办法得到图层对象吗 我所要做的就是将选定的图层复制到新文档中。层可能嵌套在组中。没错,这样一个简单的操作不应该如此复杂。 试试这个: var curDoc = app.activeDocument; var newDoc = app.documents.add(curDoc.width,curDoc.height,curDoc.resolution);//add a new doc with the sa

Photoshop脚本API让我很挣扎。一点也不友好。 但我仍然相信,当我有图层id时,有办法得到图层对象吗


我所要做的就是将选定的图层复制到新文档中。层可能嵌套在组中。

没错,这样一个简单的操作不应该如此复杂。 试试这个:

var curDoc  = app.activeDocument;
var newDoc = app.documents.add(curDoc.width,curDoc.height,curDoc.resolution);//add a new doc with the same dimensions as the active one
app.activeDocument = curDoc;//set the original doc as active
try {
    var curLayer = newDoc.activeLayer;//get a reference to the new document's current layer
    curDoc.activeLayer.duplicate(newDoc,ElementPlacement.PLACEATBEGINNING);//dupliate the active layer from the original doc to the new/copy doc
} catch(e) {    alert(e);   }

如果有帮助,Photshop附带了一个参考(应该在
PHOTOSHOP\u INSTALL\u文件夹/Scripting/Documents
)和/或对象模型查看器(在ExtendScriptToolkit的“帮助”菜单下可见)。

我试过按名称获取,但没有找到任何内容。我也试过玩一些动作参考,但找不到好的参考(而且似乎把简单的事情复杂化了)。好的。我找到了脚本,它将选定的层复制到所有打开的文档()。我可以修改它以适应我的需要。这仍然是唯一的办法吗?对于这样简单的操作来说相当复杂。这对我来说是有效的:)doc的问题是,在我的情况下,这些函数中的许多都不起作用。我尝试了几种方法,并收到“此功能可能在此版本的程序中不可用”。您使用的是哪个版本的Photoshop?我已经用CS5.1进行了测试,也许API稍微适合您的版本。如果是这种情况,请隔离抛出错误的函数(可能是
duplicate()
),并检查文档中的签名,说明您的PhotoshopI版本正在使用CS6试用版(它是否试用很重要?),我认为它是否试用并不重要。我有点困惑,上面的全部代码都能用吗?“此功能在此版本的程序中可能不可用”来自何处?“文档”是指引用Photoshop文档或文档的变量吗?上面的代码非常有效。“doc”代表“documentation”。但例如,函数Document.saveAs会引发这样的异常。不仅是这个功能。