概述

之前用的一个批量导出APP图标和启动图的软件,今天发现收费了,于是自己造了个简单的轮子。

实现

Mac上的sips命令,可以很方便的帮助用户修改图片尺寸

Xcode里面的APP启动图资源包含两部分

图片资源

描述文件

所以这个脚本的功能就是两个

生成描述文件Contents.json

修改图片尺寸并关联描述文件

生成描述文件

使用echo简单粗暴的写入

setContents(){

echo { >> ./AppIcon/Contents.json

echo " \"images\"" : [>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"20x20\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"2x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_40x40.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"20x20\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"3x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_60x60.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"29x29\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"2x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_58x58.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"29x29\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"3x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_87x87.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"40x40\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"2x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_80x80.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"40x40\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"3x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_120x120.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"60x60\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"2x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_120x120.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"60x60\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"iphone\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"3x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_180x180.png\"">> ./AppIcon/Contents.json

echo " "},>> ./AppIcon/Contents.json

echo " "{>> ./AppIcon/Contents.json

echo " \"size\"" : "\"1024x1024\"",>> ./AppIcon/Contents.json

echo " \"idiom\"" : "\"ios-marketing\"",>> ./AppIcon/Contents.json

echo " \"scale\"" : "\"1x\"",>> ./AppIcon/Contents.json

echo " \"filename\"" : "\"icon_1024x1024.png\"">> ./AppIcon/Contents.json

echo " "}>> ./AppIcon/Contents.json

echo " "],>> ./AppIcon/Contents.json

echo " \"info\"" : {>> ./AppIcon/Contents.json

echo " \"version\"" : 1,>> ./AppIcon/Contents.json

echo " \"author\"" : "\"xcode\"">> ./AppIcon/Contents.json

echo " "}>> ./AppIcon/Contents.json

echo }>> ./AppIcon/Contents.json

}

修改图片尺寸

iconWithSize() {

sips -Z $1 icon.png --out ./AppIcon/icon_$1x$1.png

}

函数调用

mkdir AppIcon

setContents

for size in 40 58 60 80 87 120 180 1024

do

iconWithSize $size

done

效果展示

怎么使用

AppIcon

下载对应的sh文件,放到你想导出图片的目录下,将你的原图命名为icon.png,然后在控制台中进入该目录,执行

sh AppIcon.sh

LaunchImage

下载对应的sh文件,放到你想导出图片的目录下,将你的原图命名为Default.png,然后在控制台中进入该目录,执行

sh AppLaunch.sh

就可以得到你要的资源啦。

扩展

在命令行使用sips命令修改图片尺寸

重新定义单个图片尺寸(忽略比例)

sips -z 768 1024 xxx.png

修改后图片尺寸为1024x768

重新定义单个图片尺寸(保留比例)

sips -Z 500 xxx.png

==保留图片比例,宽高不超过500。注意是大写的Z==。要想保留图片原始比例就得这样做,比如你有一张尺寸为750 x 1334的图片,执行完上面这条命令后,图片尺寸就变成了281x500

在一个目录里批量修改同一后缀格式的图片尺寸

sips -Z 300 *.png

只需要用*作为通配符来代替图片名就可以了

下载点我

python画苹果标志图片_Mac生成APP图标和启动图的脚本相关推荐

  1. ios 启动图一键生成工具_Mac生成APP图标和启动图的脚本

    概述 之前用的一个批量导出APP图标和启动图的软件,今天发现收费了,于是自己造了个简单的轮子. 实现 Mac上的sips命令,可以很方便的帮助用户修改图片尺寸 Xcode里面的APP启动图资源包含两部 ...

  2. python画苹果标志图片_OC图标+启动图

    如何设置App的启动图,也就是Launch Image? Step1 1.点击Assets.xcassets 进入图片管理,然后右击,弹出"App Icons & Launch Im ...

  3. python画苹果标志图片_替换/绘制/分享:让所有 App 拥有 macOS 11 Big Sur 风格的图标...

    原标题:替换/绘制/分享:让所有 App 拥有 macOS 11 Big Sur 风格的图标 前言 Hello 各位不大不小的伙伴们,大家好~ 我是@旅客君.北京时间 2020 年 06 月 23 日 ...

  4. 01.使用.svg格式图片生成app图标详细步骤和注意事项

    Android8.0之后引入了矢量图标,可以支持动态特效,在不同安卓版本上可以相对应的显示圆形.方形圆角,方形图标 需要两张.svg格式的图片,一张前景图,一张背景图,分别命名为ic_launcher ...

  5. 旋转狗头:Python如何读取STL文件,生成STL文件预览图(缩略图)之进化,动态旋转Gif图

    之前的文章<Python如何读取STL文件,生成STL文件预览图(缩略图)>实现了将STL文件读取加载.绘制保存为某个角度下2D的png图片,作为预览图(缩略图).但是3D转2D,预览就丢 ...

  6. iOS开发简记(1):指定APP的图标与启动图

    各位兄弟姐妹们,早上好,本人花了将近一个月的时间打造了一个完整的IOS版的App, 期间包括开发,测试,上线审核,现在花点时间把实现的过程分享给大家,"知音"app功能简单,适合对 ...

  7. iOS11.0后APP的图标和启动图

    随着Xcode9的更新,APP的图标和启动图也发生了略微变化,下面介绍下图标和启动图的设置. *APP图标: 这些是系统默认你开发的项目支持iPad.Spotlight等,其实真正我们的项目只要支持i ...

  8. 项目总结2:ionic3开发跨平台App如何设置和替换应用图标及启动图

     前言: 和原生开发一样,ionic官方提供的设置方式也很简单,只不过多了一个步骤:基于ionic命令的方式自动修改全局的配置文件config.xml. 设置或替换应用图标和应用启动图: 把UI提供的 ...

  9. iOS 最新App图标和启动画面尺寸(补充-2)

                          联系人:石虎 QQ:1224614774  昵称: 嗡嘛呢叭咪哄                                QQ群:807236138  ...

最新文章

  1. HashMap 在并发下可能出现的问题分析!
  2. eclipse创建springboot项目_创建一个 Spring Boot 项目,你会几种方法?
  3. 用python 登录 ssh 与 sftp 通过证书登录系统
  4. mysql索引下沉_MySQL 5.6 索引条件下推优化
  5. css黑色字白色描边,css怎么设置字体白色描边
  6. C++字符串转化为数字的库函数
  7. 如何用结构型信号量实现互斥和同步
  8. 2017全球超算峰会召开 联想以智能超算赋能AI时代
  9. 单用户模式 启动 mysql_单用户模式连接以及故障排除
  10. 6. 分类图显示和保存
  11. shell脚本循环嵌套
  12. java下载 文件_Java下载文件的几种方式
  13. 2012 年上半年系统分析师 案例分析真题
  14. python主函数_Python main() 函数
  15. 485集线器,485Hub、485分配器、485共享器、三级浪涌保护,485星型接法设备 1拖4...
  16. 如何用cmd打开管理员模式
  17. 谷歌论文Weight Agnostic Neural Networks(WANN)权重无关神经网络
  18. [Vjudge]卡片游戏
  19. asp毕业设计——基于asp+access的学生排课管理系统设计与实现(毕业论文+程序源码)——学生排课管理系统
  20. c语言 unique函数,C++ unique(STL unique)算法详解

热门文章

  1. 【非公开】#include
  2. 使用keras进行深度学习_如何在Keras中通过深度学习对蝴蝶进行分类
  3. matlab中最接近零的数值
  4. 12个很棒的Pandas和NumPy函数,让python数据分析事半功倍
  5. python的json中方法以及jsonpath模块
  6. TCP中recv解阻塞的两种方式
  7. 在微信小程序中使用字体图标
  8. double和float的误区!
  9. Redis与python交互
  10. 有关l2,1范数作用的理解--正则化项作用,不同于l1范数(矩阵元素绝对值之和)的稀疏要求,l21范数还要求行稀疏