ICO图标格式,即指英语的“icon”,其MIME类型image/x-icon,是一种用于图标显示的图帧式。除了一般图片常见的颜色外,一般还用调色板定义了透明色和反色。

示意一个只有16×16@32bit格式的图标文件被显示为48×48后的效果。

图标中包含的图片常见尺寸有16×16(小图标)、32×32、48×48,另外24×24、64×64、128×128也比较常见。256×256多见于Windows Vista以上版本的Windows操作系统中。8×8、10×10、20×20多用于工具栏的按钮。较旧的操作系统不支持超过128×128的图标,所以向用于旧的操作系统的图标文件中添加大图标没有意义。

图标中包含的图片色阶一般有16色、256色、32位色(真彩色+Alpha通道)三种,另外也有单色、24位色(真彩色)色阶。早期的操作系统只支持显示较少色阶的的图标格式,即使系统可以显示真彩色。

同一个大小的图像可以有多个颜色深度,同一个颜色深度也可以有多个大小,都算不同的格式。比如32×32@32bit色和32×32@256色是两个不同格式,16×16@32bit色和32×32@32bit色也是两个不同格式。一个图标文件可以同包含多个格式,因此在不同的文件视图下可能显示完全不同的图案。这些格式可以被压缩以节约储存空间。图标被显示时,系统会自动根据要显示的大小和当前系统的颜色深度从最接近的格式中选择一个显示。如果没有匹配的格式,则会经过大小和颜色的变换后再显示出来,可能显示效果不佳。

Mac OS中使用的是ICNS格式。

ICO的派生格式

  • CUR:通常用于鼠标指针(光标),格式和ICO相同
  • ANI英语ANI (file format):动态指针,将多幅图标连接成为动画
  • ICL:图标库,可以包含很多图标,程序可以直接调用

在Windows中,ICO文件通常被集中打包到EXEPE文件中。

ICO支持的色阶

ICO中所有的色阶都包含透明色和反色,并且除了真彩色Windows XP色阶外其他都需要使用调色板索引颜色,调色板的颜色可变,下面不再说明。

名称 英语 颜色 色光 色料 色相 十六进制码 MS-DOS
角度 饱和 明度
红色 Red 255 0 0 0 100 100 0 100% 100% #FF0000 12
黄色 Yellow 255 255 0 0 0 100 0 60° 100% 100% #FFFF00 14
草绿 Lime 0 255 0 100 0 100 0 120° 100% 100% #00FF00 10
青色水色 Cyan / Aqua 0 255 255 100 0 0 0 180° 100% 100% #00FFFF 11
蓝色 Blue 0 0 255 100 100 0 0 240° 100% 100% #0000FF 9
品红 Fuchsia 255 0 255 0 100 0 0 300° 100% 100% #FF00FF 13
栗色 Maroon 128 0 0 0 100 100 50 100% 50% #800000 4
橄榄绿 Olive 128 128 0 0 0 100 50 60° 100% 50% #808000 6
绿色 Green 0 128 0 100 0 100 50 120° 100% 50% #008000 2
蓝绿色 Teal 0 128 128 100 0 0 50 180° 100% 50% #008080 3
藏青色 Navy 0 0 128 100 100 0 50 240° 100% 50% #000080 1
紫色 Purple 128 0 128 0 100 0 50 300° 100% 50% #800080 5
白色 White 255 255 255 0 0 0 0 0% 100% #FFFFFF 15
银色 Silver 192 192 192 0 0 0 25 0% 75% #C0C0C0 7
灰色 Gray 128 128 128 0 0 0 50 0% 50% #808080 8
黑色 Black 0 0 0 0 0 0 100 0% 0% #000000 0