ICO 文件:一小包图标,以及浏览器真正需要什么
.ico 里装着什么、为什么一个叫 .ico 的 PNG 能当 favicon、什么时候你需要真正的 ICO。在浏览器里转换 ICO,不上传。
速览
- 类型
- 图片
- 压缩
- 无损
- 扩展名
- .ico
- MIME 类型
- image/x-icon
- 别称
- favicon
ICO 文件不是单张图像,而是一个小型归档:同一个图标的多个不同尺寸版本——16、32、48、256 像素——被打包在一起,好让显示它的东西挑到自己需要的尺寸。微软在 1985 年推出这个格式,而它至今仍是应用程序图标、快捷方式图标和安装包资源的提供方式。
展开说明
在网页上情况宽松得多。浏览器按惯例请求 /favicon.ico,但它们很乐意接受这个文件名背后是一份 PNG 内容,而且已经这样多年。这就是为什么那么多 favicon 工具——包括本站——把 PNG 字节写进一个 .ico 文件:凡是需要 favicon 的地方它都能用,而浏览器 canvas 产不出真正的多图 ICO。
这个区别在你离开浏览器时才要紧。Windows 应用程序图标、快捷方式或安装包资源,需要的是里面装着多个尺寸的真 ICO,单张 PNG 改个名字是不行的。那种场合请用专门的图标编辑器。而在本站把 ICO 转成 PNG 是反方向,很直接:图标被拆成一张可编辑的图片、透明完整保留,而你拿到的是浏览器解码器返回的那个尺寸——通常是最大的。
把 ICO 转成其他格式
把其他格式转成 ICO
ICO常见问题
ICO 转 PNG 我会拿到什么尺寸?
浏览器解码器返回的那个,通常是里面打包的最大尺寸。要挑指定尺寸——尤其是单独绘制而非缩放出来的——请用专门的图标编辑器。
本站产出的 .ico 是真正的 ICO 吗?
不是。它是装在 .ico 文件名里的 PNG 数据,浏览器接受它作为 favicon。真正的多尺寸 ICO 无法由浏览器 canvas 产出。
那它能当 favicon 用吗?
能。所有当前浏览器都接受「.ico 文件名 + PNG 内容」,而且大量网站的图标就是这么发布的。
能用作 Windows 应用程序图标吗?
不能。应用图标、快捷方式和安装包需要里面打包多个尺寸的真 ICO。那些场景请用专门的图标工具。
透明会被保留吗?
会。图标几乎总是透明背景,而 PNG 精确承载 alpha 通道。
是不是干脆用 PNG 做 favicon?
很多时候是的。现代站点直接引用 .png favicon。.ico 这个名字主要是为了服务老客户端仍会请求的那个默认 /favicon.ico 路径。