今天和同事聊起图片的事情,他告诉我说 ico 格式的图片可以包含多种不同尺寸的照片文件,我是不信的,直到他打开了看图软件,给我看到了真实的文件……
了解了下才知道,ico 图标格式是一种包含多种尺寸位图的容器格式。
尝试用了一些在线 ico 转换工具,发现都无法制作出多个位图尺寸的图片。
作为一种开发,当然就考虑去 github 上看看,于是就有了今天的主角:ImageMagick
什么是 ImageMagick
ImageMagick® 是一款免费的开源软件套件,用于编辑和处理数字图像。它可用于创建、编辑、合成或转换位图图像,并支持多种文件格式,包括 JPEG、PNG、GIF、TIFF 和 PDF。
ImageMagick 包括用于执行复杂图像处理任务的命令行界面,以及将其功能集成到软件应用程序中的应用程序接口。它采用 C 语言编写,可在 Linux、Windows 和 macOS 等多种操作系统上使用。
那么回到正题,直接开始使用 ImageMagick,实现制作多种尺寸的 ico 图标文件。
制作多尺寸 ico 图标
1.
下载 ImageMagick
Windows 可以点击链接下载:ImageMagick-7.1.1-32-Q16-HDRI-x64-dll.exe
Mac 可以用brew
包管理工具来下载:
brew install imagemagick
如果下载遇到问题,可以去官网寻找最新链接:ImageMagick
等待安装完成后,我们可以打开命令行工具,通过下面命令确认是否安装成功:
magick --help
如果有错误,可能需要重新安装 ImageMagick。
如果没有报错,就可以开始准备使用了。
2.
使用 ImageMagick
我们先准备多个尺寸的图片,放在目录中,比如我现在有这四个尺寸的 png 图片:
然后通过命令行,进入该目录(使用 cd 命令,如果不理解可以自行搜索学习)
之后就可以使用下列命令来转成多尺寸位图的 ico 格式图片了:
magick 16px16px.png 48px48px.png 64px64px.png 128px128px.png favicon.ico
没问题的话,现在就可以在目录中看到转好的图片了:
以下是操作的命令行历史及结果,供参考:
ethan@shejibiji.com ~ % cd /Users/ethan/Documents/TinyImage/output
ethan@shejibiji.com output % ls
128px128px.png 16px16px.png 48px48px.png 64px64px.png
ethan@shejibiji.com output % magick 16px16px.png 48px48px.png 64px64px.png 128px128px.png favicon.ico
# 完成后无提示,可以去目录查看文件