我已经在网上搜索了一段时间,想知道如何在没有在线转换器的情况下制作自己的图标,他们都说了同样的话,但都行不通。即将像素数更改为 16x16 / 32x32 / 256x256,另存为 bmp/png/jpg,然后将文件重命名为 .ico。
但是这不起作用,因为它不是正确的图标格式。当尝试使用这种自制图标时,Visual Studio 会给出错误。
Error building Win32 resources -- Icon stream is not in the expected format
然而,使用在线 ico 转换工具是可行的。但为什么需要这样做呢?这些在线工具有什么魔力,让我无法使用画图或其他工具来制作图标文件?
Windows图标文件不仅仅是一个位图。一个 .ico 文件可以包含多个不同分辨率或颜色深度的图像。有些操作系统对桌面图像的限制较少,但 Microsoft 定义了一个与 JPEG、TIFF、PNG 或其他图像格式不同的标准。每个.ico 文件都以“ICONDIR(“图标目录”)结构开头,其中包含文件中每个图像的 ICONDIRENTRY [sub] 结构,后跟所有图像位图数据的连续块。”
有免费和商业的图标编辑软件,例如greenfish icon editor和 alternatives。这些工具中的大多数还可以制作光标文件,.cur 和 .ani,它们类似于 .ico 标准,但将一个像素设置为热点,而 .ani 格式包含动画。