免费转换器

ICO 转 PNG 转换器

在浏览器中立即将 Windows 图标 (.ico) 文件转换为高质量的透明 PNG 图像。

点击或拖拽 ICO 文件到此处

最大支持 50MB

关于此工具

ICO 是 1990 年为 Windows 3.0 发明的图标文件格式,至今仍在网络上作为事实上的 favicon 格式使用。尽管有这个名字,ICO 文件是一个可以容纳多个不同大小和颜色深度的图像的容器。典型的 Windows 桌面 ICO 可能会捆绑同一图标的 16×16、32×32、48×48、64×64、128×128 和 256×256 版本;操作系统选择与显示上下文匹配的大小。将 ICO 转换为 PNG 意味着提取一个或多个嵌入图像并将它们保存为独立的 PNG 文件。

该转换器解析浏览器中的 ICO 标头,识别所有嵌入的图像条目,并对每个条目进行解码。大多数现代 ICO 文件在内部将其图像存储为 PNG;较旧的使用 BMP 样式的原始位图数据。两种编码都被处理。每个嵌入图像的输出是一个 PNG — 对于典型的 Windows 图标,这意味着六个或更多不同大小的 PNG 文件。

文件永远不会离开您的设备。解析在 JavaScript 中进行,使用 DataView 读取 ICO 目录并将每个图像分派到适当的解码器。输出 PNG 是通过 canvas.toBlob('image/png') 生成的。

为什么将 ICO 转换为 PNG

ICO 是一种以 Windows 为中心的格式,很少有图像编辑器可以很好地处理它。 Photoshop 需要插件;许多基于网络的工具根本无法读取ICO; Linux 桌面环境将 ICO 视为二等。 PNG 得到普遍支持。将现有 ICO 转换为 PNG 会生成可以在任何工具中打开和编辑的文件。

另一个常见原因是提取个体尺寸。更新网站图标的 Web 开发人员通常只需要现有 ICO 的 32×32 或 64×64 版本。重新绘制旧图标的设计师希望以最大的嵌入版本作为起点。这两种工作流程都受益于提取单独的 PNG 文件(每种大小一个),而不是直接处理 ICO 容器。

使用方法

放弃 ICO,为每个嵌入尺寸获取一个 PNG。

  1. 上传ICO文件: 将文件拖入上传区域或点击浏览。支持最大 50 MB 的文件,但典型的 ICO 文件远低于 100 KB。
  2. 检查嵌入尺寸: 该工具列出了 ICO 中嵌入的所有图像及其尺寸和颜色深度。典型的favicon ICO有16×16、32×32和48×48版本; Windows 桌面图标可能有八种或更多尺寸。
  3. 提炼: 每个嵌入图像都会被解码并重新编码为 PNG。对于包含 PNG 压缩条目的 ICO,解码是直接的。对于 BMP 样式条目,原始像素数据被读入画布并导出为 PNG。
  4. 下载: 单图像 ICO 会生成单个 PNG 下载。多图像 ICO 会生成一个 ZIP 存档,每个尺寸包含一个 PNG,并以尺寸命名(icon-16.png、icon-32.png 等)。

常见用例

技术细节

ICO 文件以 6 字节标头 (ICONDIR) 开头,后跟条目目录(ICONDIRENTRY,每个 16 字节),最后是每个条目的图像数据。每个目录条目指定宽度、高度、颜色计数以及指向图像字节的偏移量和大小。

图像数据被编码为 BMP 样式的 DIB(不带 BITMAPFILEHEADER)或直接嵌入的完整 PNG 文件。 PNG 编码的条目对于 256×256 的现代图标很常见,并且在开头有一个标准的 PNG 签名。 BMP 样式条目省略文件头,但包括信息头和像素数据。

This converter reads the directory, locates each entry, and dispatches to the appropriate decoder. PNG entries are decoded using a Blob and an Image element; BMP entries are read by parsing the BITMAPINFOHEADER and writing pixels into a canvas manually.输出始终为 PNG。

最佳实践

常见问题

将 ICO 转换为 PNG 时是否有任何质量损失?
不会。PNG 使用无损 DEFLATE,因此在转换过程中可以完全保留图像质量。
为什么我要转换为 PNG 而不是保留原始格式?
当您需要透明度支持、屏幕截图或图形的无损质量或通用浏览器兼容性时,PNG 是理想的选择。与 ICO 不同,PNG 保留了每个像素,没有压缩伪影。
我可以批量转换多个 ICO 文件吗?
该工具一次处理一个文件以确保最高质量。对于多个文件,只需重复该过程 - 每次转换只需几秒钟。
我的图像在转换过程中是否保密?
是的。您的 ICO 文件完全在浏览器中使用 Canvas API 和 JavaScript 进行处理。没有任何内容上传到任何服务器 - 文件直接从您的设备传输到转换器,然后返回到您的设备。
我的文件是否已上传到服务器?
不会。解析和解码发生在您的浏览器中。该文件不会离开您的设备。
我可以将 PNG 转换回 ICO 吗?
是的 - 使用专用的 PNG 到 ICO 工具,该工具将一个或多个 PNG 捆绑到具有正确目录结构的新 ICO 文件中。
为什么我会看到一个 ICO 被多次下载?
因为ICO包含多个嵌入图像。每个都成为一个单独的 PNG。如果您只想要一种尺寸,请选择符合您需要的一种,然后丢弃其余的。
EXIF 或其他元数据会被保留吗?
ICO 文件通常不携带 EXIF 元数据。输出 PNG 仅包含像素数据。如果源 ICO 的 PNG 条目具有元数据,则不会通过画布重新编码来保留它。