Javascript 就地粘贴Photoshop脚本
对于Photoshop脚本编写人员(javascript),我编写了一个脚本,用于复制合并图像区域并将其粘贴到另一个文档中。困扰我的是,粘贴的图像粘贴到屏幕中间,而不是选择坐标 所以第一个图像是2000px乘以2000px,我用脚本复制合并一个500px乘以500px的区域,然后粘贴到另一个500px乘以500px的文档中。唯一的问题是粘贴的图像被扑通一声放在文档的中间,因此,如果复制的区域有一些透明像素,有时它不会粘贴到正确的位置 Photoshop有一个名为“粘贴到位”的函数,你可以通过编辑>粘贴特殊>粘贴到位来访问它,这当然解决了这个问题。对我来说,问题是我需要知道“粘贴到位”的javascript代码,这样它就可以从我的脚本中实现这一点Javascript 就地粘贴Photoshop脚本,javascript,photoshop,Javascript,Photoshop,对于Photoshop脚本编写人员(javascript),我编写了一个脚本,用于复制合并图像区域并将其粘贴到另一个文档中。困扰我的是,粘贴的图像粘贴到屏幕中间,而不是选择坐标 所以第一个图像是2000px乘以2000px,我用脚本复制合并一个500px乘以500px的区域,然后粘贴到另一个500px乘以500px的文档中。唯一的问题是粘贴的图像被扑通一声放在文档的中间,因此,如果复制的区域有一些透明像素,有时它不会粘贴到正确的位置 Photoshop有一个名为“粘贴到位”的函数,你可以通过编辑
有人知道吗?将这些变量添加到代码的开头:
cTID = function(s) { return app.charIDToTypeID(s); };
sTID = function(s) { return app.stringIDToTypeID(s); };
用于粘贴到位的功能是:
function pasteInPlace(enabled, withDialog) {
if (enabled != undefined && !enabled)
return;
var dialogMode = (withDialog ? DialogModes.ALL : DialogModes.NO);
var desc1 = new ActionDescriptor();
desc1.putBoolean(sTID("inPlace"), true);
desc1.putEnumerated(cTID('AntA'), cTID('Annt'), cTID('Anno'));
executeAction(cTID('past'), desc1, dialogMode);
};
将函数添加到脚本的末尾
然后使用:
pasteInPlace();
在代码中调用函数
我是通过使用xtools actionfileTOJavascript.jsx得到的
希望这有帮助这篇文章可能会有帮助: