最近实习中有大量重复的工作,所以在想着写一个插件的话可以将3天的工作量压缩到1天
具体的工作内容是这样的。有一堆源PSD文件,每个文件里有个语言的图层:
我需要把每一个图层点为可视,然后储存为web格式的jpeg,设置品质,然后选择对应的语言文件夹保存。
查了相关的网站,帮助比较大的是这个博主和这个网页:
- http://nullice.com/
这个博主写了很多自己开发的插件 以及ps插件编写的中文文档,可以说是非常非常厉害了。他自己的主页也做的非常亮眼且功能完整,我觉得不劣与市面上任何一款博客应用。偷偷在粉丝群里看到他年龄23岁,emm?!!@¥@#¥
- http://coolketang.com/
这个里面有很多案例,注释也很详细,适合新手。
- 中文API:
http://wwwimages.adobe.com/www.adobe.com/content/dam/acom/en/devnet/photoshop/pdfs/photoshop-cc-javascript-ref-2015.pdf
PS插件是用javascript写的,需要下载一个Adobe ExtendScript Toolkit 编译器,这个在Adobe官网上就有,这个是上面第一位博客大佬提供的链接:(再次贡上膝盖)
Windows :https://pan.baidu.com/s/1geMQQYJ
Toolkit编辑界面:
左上角可以选择宿主应用,代表你的脚本是操作什么应用的,有PS,AE之类。
- 获取图层信息:
通过
app.activeDocument.artLayers[0]
和[1]
可以获得图层 5 和图层 4,而app.activeDocument.layers
除此之外还有[2]
可以获得画板 1。activeDocument可以获取当前在PS中显示的文档。
artLayers获取图层。
visible当前图层的可视性。
var i;
var countries=new Array("tw","tr","ru","ko","ja","it","fr","es","de","cn","ar");//设置
for(i=10;i>=0;i--)
{
app.activeDocument.artLayers[i].visible=true;
var fileName="E:\\test\\"+countries[i]+".jpeg";
var fileOut = new File(fileName);
var exportOptionsSaveForWeb = new ExportOptionsSaveForWeb();//这里要注意 保存为web格式的方法 和直接存储png,jpeg的方法不同
exportOptionsSaveForWeb.format = SaveDocumentType.JPEG;//保存为web形式的JPEG格式
exportOptionsSaveForWeb.quality = 60; //设置图形品质
app.activeDocument.exportDocument (fileOut, ExportType.SAVEFORWEB, exportOptionsSaveForWeb);//储存为web格式 重点
}
重点
}
其他方式保存:
http://coolketang.com/psscript/menu2lesson5.php