之前的项目都是用一套尺寸的图标做适配,优点就是减少APP的大小,还不用做多套适配图标,缺点就是每次加载图标都要做缩放,影响APP的性能。
公司最近终于招到UI了,发现他的PS工具可以一键生成Android和iOS各种尺寸图标。最近新建一个项目,打算尝试自己生成Android各种尺寸图标。

工具

PS

脚本

这个PS脚本是我参照别人写的,直接共享出来:

try {// 获取当前的文档var pngDoc = activeDocument;// 获取当前的文档名称var destName = pngDoc.name;// 有则使用当前文档名称// 没有则提示用户输入if (destName == undefined) {// 弹出对话框,提示输入文件名destName = prompt("请输入文件名", "icon_");} else {// 去掉后缀var index = destName.indexOf(".");if (index != -1) {destName = destName.substring(0, index);}}if (destName == undefined) {throw SyntaxError();}// 弹出文件夹选择窗口,提示选择输出图标的文件夹var destFolder = Folder.selectDialog( "请选择一个输出的文件夹:");if (destFolder == undefined) {throw SyntaxError();}// 定义放缩倍数/**var icons = [{"name": "drawable-hdpi",    "size":72},{"name": "drawable-ldpi",    "size":36},{"name": "drawable-mdpi",    "size":48},{"name": "drawable-xhdpi",   "size":96},{"name": "drawable-xxhdpi",  "size":144},{"name": "drawable-xxxhdpi", "size":192}];**/var icons = [{"dir": "drawable-hdpi",    "scale":0.5},{"dir": "drawable-mdpi",    "scale":0.334},{"dir": "drawable-xhdpi",   "scale":0.667},{"dir": "drawable-xxhdpi",  "scale":1},{"dir": "drawable-xxxhdpi", "scale":1.333}];// 表示输出的格式为PNG。并设置输出PNG时不执行PNG8压缩,以保证图标质量var option = new PNGSaveOptions();// 保存当前的历史状态,以方便缩放图片后,再返回至最初状态的尺寸option.PNG8 = false;var startState = pngDoc.historyStates[pngDoc.historyStates.length - 1];// 遍历所有图标对象的数组for (var i = 0; i < icons.length; i++) {// 当前遍历到的图标对象var icon = icons[i];// 将原图标,放缩到当前遍历到的图标对象定义的尺寸pngDoc.resizeImage(pngDoc.width * icon.scale, pngDoc.height * icon.scale);// 导出的图标的名称var destFileName = destName + ".png";// 创建文件夹var savePath = destFolder + "/" + destName + "/" + icon.dir;var saveFolder = Folder(savePath);if(!saveFolder.exists) {saveFolder.create();}// 图标输出的文件var file = new File(savePath + "/" + destFileName);// 将缩小尺寸后的图标导出到指定路径pngDoc.saveAs(file, option, true, Extension.LOWERCASE);// 将历史状态,恢复到尺寸缩放之前的状态,即恢复到原来尺寸,为下次缩小尺寸做准备。pngDoc.activeHistoryState = startState;}// 保存PSD格式option = new PhotoshopSaveOptions();var destFileName = destName + ".psd";var savePath = destFolder + "/" + destName;var file = new File(savePath + "/" + destFileName);pngDoc.saveAs(file, option, true, Extension.LOWERCASE);// 关闭pngDoc.close(SaveOptions.DONOTSAVECHANGES);} catch (err) {// 抛异常来退出程序
}

代码复制出来,保存为xxx.jsx格式文件。

操作步骤

  • 用PS新建或者打开图标
  • 选择菜单【文件】>> 【脚本】>> 【浏览】,选择刚才保存的xxx.jsx脚本文件
  • 第一个弹出框输入文件名,第二个弹出框输入保存图片的路径
  • 等待脚本执行结束即可

可能遇到的问题

希望对你有帮助!!!

PS 一键生成Android各个尺寸的图标相关推荐

  1. PS一键生成鎏金字特效插件(糖果滤镜Skin Eye Candy)

    给大家带来的这款非常好用的PS糖果滤镜插件Skin Eye Candy汉化版,不用3D软件.更不用C4D,在PS就能一键生成金属以及各种材质质感.无论是制作字体效果,还是图形质感,都是秒出效果,用一次 ...

  2. 如何快速生成icns格式的Mac图标

    快速生成Mac图标 第一步 生成不同尺寸的png图标 创建icons.iconset文件夹用来放置不同尺寸的图标 注:此文件夹名必须以.iconset结尾,否则生成icns文件时会报错,报错信息为 i ...

  3. PS自动生成不同尺寸图标

    2019独角兽企业重金招聘Python工程师标准>>> ####一.简介 通过在ps执行脚本将当前编辑的素材生成各种不同尺寸的png图标.下面例子在cs6下测试通过. 参考:http ...

  4. sketch html尺寸,SketchSize一键生成多尺寸,为何你的设计效率如此之高?

    Sketch是一款轻量的矢量设计工具,广泛应用于UI设计.SketchSize是一款基于Sketch的插件,可以在完成设计工作之后,一键自动生成7个常用屏幕尺寸的设计稿,将设计师从重复劳动中解放出来. ...

  5. 赛效:安卓APP移动应用图标一键生成如何实现

    APP图标生成器的作用主要是用来美化和修饰APP的图标,给用户视觉上的好感,从而提高APP的下载量和用户满意度.此外,APP图标生成器还可以用来区分不同的APP,增强APP的可识别性和可用性.如果你想 ...

  6. ps转换html适应网页尺寸,【ps制作网页页面】ps图像如何生成html?如何将PS制作的网页效果图变成可用的网页?PC端UI设计尺寸规范?...

    [ps制作网页页面]ps图像如何生成html?如何将PS制作的网页效果图变成可用的网页?PC端UI设计尺寸规范?下面就和小编一起来看看吧! ps图像如何生成html? 事实上,ps有很多功能.你还羡慕 ...

  7. 【Android】一键生成MVP代码-DevMvp快速开发框架

    序言 每个程序员看到一堆烂代码都有一颗重构的心.烂代码写起来嘴上 笑嘻嘻,心里mmp.特别是有代码洁癖的人.重构不易且行且珍惜,此框架将减少开发时间.如果你们的项目结构跟我的不一样,这也不用担心,你看 ...

  8. android批处理脚本,BAT批处理一键生成APK包脚本分享

    BAT批处理一键生成APK包脚本分享 将本bat放到cocos2dx目录下你的工程的project.android下(需修改变量). ASmaker 用来将Resources文件夹下的lua文件批量加 ...

  9. android 屏幕适配dimens,关于android:安卓屏幕适配一键生成dimens文件

    工具类 import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.Pr ...

最新文章

  1. Yahoo!的网站项目工作流程
  2. STL容器之Deque-《C++标准库(第二版)》读书笔记
  3. java传值和通过引用传递
  4. Minecraft Forge:如何下载,安装和使用Forge
  5. 为何各家抢滩物联网?
  6. (1)Matplotlib_xticks, yticks
  7. HTML+CSS——网页设计项目完整版本(阿里矢量图标库)分享
  8. 【JanusGraph入门】(第一天,下载项目)
  9. 解二元一次方程组的c语言编程,如何利用C语言求二元一次方程的解
  10. linux合并ts文件吗,Linux 下使用 ffmpeg 大批量合并 ts 文件, mp4切割文件为m3u8
  11. python安装pyaudio
  12. 动手学 《动手学深度学习》(安装pytorch)
  13. Java itext tiff转换pdf
  14. 机器学习-SVD(隐语义模型)协同过滤
  15. 如何清除电脑桌面图标蓝底
  16. Debian自动化安装
  17. Pytorch | 报错The given NumPy array is not writeable,and PyTorch does not support non-writeable tensor
  18. 记《三言二拍》读后感
  19. 多元线性回归的正规方程解
  20. WEB前端学习-合并单元格

热门文章

  1. python人民邮电出版社_人民邮电出版社 - 主页
  2. MP3歌词的同步与拖拽设计
  3. 日本地震波及芯片产业链致价格走势难料
  4. win10 激活工具 Re-LoaderByR@1n.exe
  5. python之路(1)_重要函数使用
  6. 2022高频面试题之css篇
  7. LT8911EXB:MIPI CSI/DSI转EDP信号转换芯片-润百信科技提供技术批量支持
  8. 通过指针访问二维数组的三种方法
  9. Java-买飞机票(方法优化版)
  10. Altium Designer 19简易教程(原理图的绘制)