Mac OS 生成 icon 和 ico 文件
【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】
1. 生成 ICON 文件
Mac 电脑自带 iconutil 工具,如果你没有 Mac 环境,可以使用 iconutil 的 npm 包,Github 地址。
首先,当前终端目录下我需要有一个 1024x1024 大小的图片,假设文件名为 app.png 。
执行命令行脚本:
mkdir icons.iconset &&
sips -z 16 16 app.png --out icons.iconset/icon_16x16.png &&
sips -z 32 32 app.png --out icons.iconset/icon_16x16@2x.png &&
sips -z 32 32 app.png --out icons.iconset/icon_32x32.png &&
sips -z 64 64 app.png --out icons.iconset/icon_32x32@2x.png &&
sips -z 64 64 app.png --out icons.iconset/icon_64x64.png &&
sips -z 128 128 app.png --out icons.iconset/icon_64x64@2x.png &&
sips -z 128 128 app.png --out icons.iconset/icon_128x128.png &&
sips -z 256 256 app.png --out icons.iconset/icon_128x128@2x.png &&
sips -z 256 256 app.png --out icons.iconset/icon_256x256.png &&
sips -z 512 512 app.png --out icons.iconset/icon_256x256@2x.png &&
sips -z 512 512 app.png --out icons.iconset/icon_512x512.png &&
sips -z 1024 1024 app.png --out icons.iconset/icon_512x512@2x.png &&
iconutil -c icns icons.iconset -o app.icns &&
rm -rf icons.iconset
你会在 app.png 旁边发现生成的 app.icns 文件。
2. 生成 ICO 文件
【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】
需要使用 npm 环境,安装 png-to-ico 工具:
npm install png-to-ico --save-dev
在 npm script 脚本中使用:
png-to-ico app.png > app.ico
可以将脚本写在 package.json 的 script 对象中:
"scripts": {
"ico": "png-to-ico app.png > app.ico"
}
调用方式:
npm run ico
或者在 node.js 程序中使用:
const fs = require('fs');
const pngToIco = require('png-to-ico');
pngToIco('app.png')
.then(buf => {
fs.writeFileSync('app.ico', buf);
})
.catch(console.error);
版权声明
【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】
Mac OS 生成 icon 和 ico 文件的更多相关文章
- 如何解压 Mac OS X 下的 PKG 文件(网摘)
如何解压 Mac OS X 下的 PKG 文件 原文出处:[Macplay] 有时候我们可能需要解包 PKG 格式的安装文件包,在 OS X 系统下完成该操作并不需要你额外再安装软件,系统内置的命令就 ...
- MAC OS X显示.开头的文件_苹果操作系统显示隐藏文件命令
转自:http://dditblog.com/blog_446.html 今天在导入Eclipse项目的时候.发现导入不了.初步估计是因为项目没有.project的文件.在Mac OS X操作系统下面 ...
- Mac OS OneDrive 无法同步.DS_Store文件 出错
Mac OS OneDrive 无法同步.DS_Store文件 同步出错 解决方案: 第一步:打开 terminal 窗口,到本地同步的目录下: cd "/Users/gkjglobal/G ...
- 解决Mac OS X 系统在home文件夹下面操作不支持的方法
解决Mac OS X 系统在home文件夹下面操作不支持的方法 最近需要使用Mac OS X 系统尝试安装使用appium程序,安装过程中发现,Mac OS X 系统在home文件夹下面操作不支持 ...
- Mac OS X 快速添加新文件
本文为 automator (中文名为 自动操作)的练习之作,尚有许多不足. 如果你想在 OS X 系统中快速添加新文件可直接参考此文 简介 本文使用 automator 创建了一个应用程序 auto ...
- [MAC] Mac OS X下快速复制文件路径的方法
在windows上复制当前目录的路径有一个特别方便的方式,只需要用鼠标点击路径栏,它就会自动变成像”D:\Downloads\tmp”这样的路径,如果要复制文件路径,只需要将目录路径和文件名拼接起来即 ...
- Mac OS X下高速拷贝文件路径
文件路径表示的是文件在文件系统里的位置,无论是用命令行操作的Linux程序猿还是使用windows的广大用户.都难免会有这种需求 在windows上复制当前文件夹的路径有一个特别方便的方式,仅仅须要用 ...
- Mac OS Virtualbox 倒入 ova 镜像文件
原文:https://www.zhihu.com/question/40785995 ------------------ 自己亲测 --------------------- 把 windows 系 ...
- Linux/Mac OS 下 批量提交 新增文件到SVN 服务器
命令行下操作svn没有使用界面形式的TortoiseSVN直观,但是不管怎样,命令行下操作svn还是有它的有点,如果你碰到一次需要svn add许多个文件怎么办?下面的命令可以帮助你解决这个问题 一次 ...
随机推荐
- TJA1040
TJA1040是NXP公司推出的一款针对汽车电子行业使用的高性能CAN收发器. TJA1040的第5引脚名称为SPLIT,描述为:稳定共模输出(common-mode stabilization ou ...
- 括号树 noip(csp??) 2019 洛谷 P5658
洛谷AC通道 本题,题目长,但是实际想起来十分简单. 首先,对于树上的每一个后括号,我们很容易知道,他的贡献值等于上一个后括号的贡献值 + 1.(当然,前提是要有人跟他匹配,毕竟题目中要求了,是不同的 ...
- Vim的三款实用插件
Vim 是 Linux 下的常用文本编辑器,但也经常被称为是一个上古神器,因为它对于初学者而言相当不友好,也不好入门. 但是,对于高手而言,他们不仅将 Vim 玩得很溜,而且还将它当作代码开发的主要工 ...
- Chrome自带全网页截图
1.等待网页打开完毕 2.组合键 ctrl+shift+i 打开开发者工具 3.按 ctrl+shift+p 调出一个面板 4.输出 full 5.在下一行出现 capture full size s ...
- Xilinx ISE多功能移位寄存器仿真及Basys2实验板实验
移位寄存器实现Verilog代码: `timescale 1ns / 1ps module add( input clk, input reset, input [1:0] s, input dl, ...
- [Pyspark]RDD常用方法总结
aggregate(zeroValue, seqOp, combOp) 入参: zeroValue表示一组初值 Tuple seqOp表示在各个分区partition中进行 什么样的聚合操作,支持不同 ...
- Redis 入门到分布式 (三) Redis客户端的使用
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.Java客服端:jedis 获取Jedis Jedis基本使用 Jedis连接池使用 1.Jedis ...
- Java实现 蓝桥杯VIP 算法训练 简单加法
时间限制:1.0s 内存限制:512.0MB 问题描述 首先给出简单加法算式的定义: 如果有一个算式(i)+(i+1)+(i+2),(i>=0),在计算的过程中,没有任何一个数位出现了进位,则称 ...
- Java实现 蓝桥杯VIP 算法提高 P0404
计算一个无符号整数的阿尔法乘积.对于一个无符号整数x来说,它的阿尔法乘积是这样来计算的:如果x是一个个位数,那么它的阿尔法乘积就是它本身:否则的话,x的阿尔法乘积就等于它的各位非0的数字相乘所得到的那 ...
- Java实现 洛谷 P1618 三连击(升级版)
import java.util.Arrays; import java.util.Scanner; public class Main { private static Scanner cin; p ...