PhotoShop 导出iOS/Android设备Icon脚本

运行环境
photoshop cc
photoshop cs6
使用方法
·PhotoShop - 菜单 - 文件 - 脚本 - 浏览 - 选择.jsx脚本
·选择需要导出的Icon原始图
脚本.jsx

#target photoshop
app.bringToFront();

var sizeList =
[
  {"name": "iTunesArtwork",        "size":1024},
  {"name": "Icon",                      "size":57},
  {"name": "Icon@2x",                "size":114},
  {"name": "Icon-72",                  "size":72},
  {"name": "Icon-76",                  "size":76},
  {"name": "Icon-120",                "size":120},
  {"name": "Icon-144",                  "size":144},
  {"name": "Icon-152",                "size":152},
  {"name": "Icon-167",                "size":167},
  {"name": "Icon-180",                "size":180}
];

var fileRef = File.openDialog ("请选择一个文件", "*.png", false);

// 选择输出目录
//var destFolder = Folder.selectDialog( "请选择一个输出的文件夹:"); 

// 输出到图片所在目录
var destFolder = fileRef.parent; 

//打开文件
var activeDocument = app.open(fileRef);

//运行批处理尺寸
runNow() ;

function runNow()
{
     if(activeDocument.height != activeDocument.width)
     {
         alert("当前文件宽高尺寸不一致,脚本已中止。");
         return;
     }
     
    //以PNG格式保存,带压缩
    var pngSaveOptions = new ExportOptionsSaveForWeb();
    pngSaveOptions.format = SaveDocumentType.PNG;
    pngSaveOptions.transparency = true;
    pngSaveOptions.PNG8 = false;
    pngSaveOptions.interlaced = false;
    //pngSaveOptions.quality = 30;
     
     for(var i = 0; i < sizeList.length; i ++)
     {
         //重置图像尺寸
         activeDocument.resizeImage(UnitValue(sizeList[i].size,"px"),UnitValue(sizeList[i].size,"px"),null,ResampleMethod.BICUBIC);

         var destFileName = destFolder + "/" + sizeList[i].name +".png";

         //保存的文件
         var saveFile = new File(destFileName);

         //如果文件已经存在就先删除它
         if (saveFile.exists)
         {
               saveFile.remove();
         }

         activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, pngSaveOptions);
         activeDocument.activeHistoryState = activeDocument.historyStates[0];//还原到打开状态
     }
     activeDocument.close(SaveOptions.DONOTSAVECHANGES);//原始被打开的文件不保存,关闭源文件
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 网上找了几篇文章: 这个导出的图片会非常大如 icon-100的会导出 2835x2835的图片。如何里面包含第一...
    antz阅读 7,926评论 2 4
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,410评论 25 709
  • “我唯一锲而不舍,愿意以自己的生命去努力的,只不过是保守我个人的心怀意念,在我有生之日,做一个真诚的人,不放弃对生...
    赵赵赵O_o阅读 1,454评论 0 0
  • 梦。 口渴极了。 这样一行字挨一挨二冒出来,仿佛蛰伏许久的疹子:一只乌鸦口渴了,到处找水喝。司马光,没有慌,拿起一...
    scumalapert阅读 2,720评论 2 4

友情链接更多精彩内容