免费将 PNG 转换为 ICO

作者

.ico 仍是网站根目录中常用的图标格式,而多数在线转换器会要求把图片上传到服务器。本指南介绍如何从 PNG 生成正确的多尺寸 favicon.ico,全程无需上传。

PNG 图片转换为包含多个尺寸的 ICO 容器
ICO 容器将适合小尺寸显示的多个版本组合在一起。

.ico 并不是简单改名后的图片

将 logo.png 改名为 favicon.ico 并不够。ICO 是具有独立文件头的容器格式,文件头描述容器内图片的数量、尺寸,以及各张图片在文件中的起始位置。改名后的 PNG 没有这样的文件头,检查较严格的浏览器会拒绝显示。

正确的 ICO 会包含同一图标的多个分辨率。浏览器读取文件头,选择最接近所需尺寸的版本,从而避免放大。

三步将 PNG 转换为 ICO

第一步,准备源文件。至少 512×512 像素的正方形 PNG 效果最好,因为所有尺寸都可以通过缩小生成。如果图片背景透明,请先决定是否保留:透明背景适合标签页,但 iOS 和 Android 会将其替换为黑色。

第二步,生成各个分辨率。文件至少应包含 16×16、32×32 和 48×48。调整尺寸时必须使用高质量重采样滤镜,否则小尺寸图标会难以辨认。

第三步,打包。将三张图片组合成一个 ICO 容器,由文件头描述各个条目。生成的文件命名为 favicon.ico,放在网站根目录中,即使没有 HTML 标签,浏览器也能找到它。

为什么本地转换很重要

大多数 PNG 转 ICO 工具会先把文件上传到服务器,再由服务器处理并返回结果。你的标志可能尚未公开发布,就已经存放在不受你控制的设备上,并受你未曾阅读的数据保留政策约束。

但现代浏览器可以独立完成全部步骤:解码 PNG、在画布上调整尺寸、重新编码各个尺寸,并组装 ICO 容器。LFFavicon 正是这样做的。图片不会通过任何请求传出,关闭标签页即可清除所有内容。

好处不止于隐私:转换即时完成,页面加载后可以离线使用,无需排队,也没有每日次数限制。

仅有 .ico 已经不够

将 PNG 转为 ICO 可以满足标签页和旧客户端,但仍有三类场景未覆盖:偏好任意尺寸都清晰的 SVG 的现代浏览器、需要不透明 180×180 PNG 的 iOS 主屏幕,以及读取网页应用清单的 Android。

既然要处理图片,不如一次生成完整组合。生成器正是如此:从同一源图片生成 .ico、SVG、Apple Touch 图标和清单图标,下载前还可以预览各个场景。

一手资料

常见问题

创建 ICO 需要多大的 PNG?

至少 512×512 像素的正方形图片。低于 128×128 时,图标包中的较大尺寸只能通过放大生成,效果会模糊。SVG 更好,因为它没有分辨率限制。

.ico 会保留透明度吗?

会。ICO 格式支持完整的 Alpha 通道,透明 PNG 在标签页中仍会保持透明。但要注意 iOS 图标:系统会将透明区域填充为黑色,因此请为它添加背景。

favicon.ico 文件应该放在哪里?

放在域名根目录,使其可以通过 https://yoursite.com/favicon.ico 访问。即使没有 link 标签声明,浏览器和抓取程序也会按惯例请求这个地址。

动手实践

生成器可在几秒内免费生成完整图标组合,无需上传图片。

立即转换我的 PNG

接下来可以阅读与尝试

探索 LFFavicon 的其他工具,以及解答常见问题的指南。

工具

指南