为什么我的favicon.ico文件比其各部分的总和大得多?

Dre*_*vid 2 favicon image ico image-optimization

我创建了一个favicon.ico文件,其中包含三种尺寸的.png图标大小,16px,32px和64px.

在我的Mac Finder中,我使用ImageOptim优化它们后,它们的大小分别为339b,1kb和4kb.那么我们可能会达到6kb?

但是,当我运行此ImageMagick命令时:

convert 16.png 32.png 64.png myfav.ico
Run Code Online (Sandbox Code Playgroud)

生成的.ico文件是22kb!

这是一个非常大的文件,出乎意料.

我做错了什么?我能做些什么来缩小它(如果有的话)?

Abd*_*iJK 6

ico文件本身不是压缩文件.

你可以gzip它,你会发现gzip压缩的大小将小于3 png文件大小的总和.在用于减小大小之前,ico文件最常被gzip压缩(使用apache,nginx等).

所以,它们如此之大的原因是因为压缩算法很弱.

  • 通常,.ico 中的图像保存为未压缩的 BMP 图像。如果您从 png 转换,这些可能会以每像素 32 位存储。当 Windows Vista 出现时,微软增加了对嵌入 PNG 文件的支持,但这往往是针对 256x256 图标的,这样旧的应用程序就不会中断。 (2认同)