如何解决如何强制imagemagick将PNG存储在ICO中
- ImageMagick版本:x16 x86_64 Q7.0.10-25
- 环境(操作系统,版本等):MacOS 10.15.6
将1.4k(96x96)png转换为ico时,生成的文件为37k。
$ magick convert jsiu.dev.black-96.png jsiu.dev.black-96.ico
$ ls -lh
-rw-r--r-- 1 js staff 37K Aug 9 22:19 jsiu.dev.black-96.ico
-rw-r--r--@ 1 js staff 1.4K Aug 8 17:49 jsiu.dev.black-96.png
相比之下:3.8k(256x256)png png生成的5.1k ico文件。
-rw-r--r-- 1 js staff 5.1K Aug 8 18:06 jsiu.dev.black-256.ico
-rw-r--r--@ 1 js staff 3.8K Aug 8 18:05 jsiu.dev.black-256.png
不确定1.3k的开销是否过多,但至少不是96x96版本的26.4倍。
经过一些测试,如果图像
以下是96x96 PNG:
以下是256x256 PNG:
其他测试:
magick jsiu.dev.white-96.png -compress none jsiu.dev.white-96.ico
magick jsiu.dev.white-96.png -compress zip jsiu.dev.white-96.ico
magick jsiu.dev.white-96.png -strip jsiu.dev.white-96.ico
magick jsiu.dev.white-96.png -define png:color-type=6 jsiu.dev.white-96.ico
它们的大小都相同:
-rw-r--r-- 1 js staff 38078 Aug 12 04:52 jsiu.dev.white-96.ico
解决方法
我没有收到任何积极的反馈,所以最终我使用golang创建了自己的命令行工具。它无需进行任何转换即可创建带有png的ico文件,
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。