Often, ICO files are converted to and from other file types to use certain images as icons or to save the icon image into an editable or portable format. A popular program for manipulating ICO files is GNU Image Manipulation Program. ICO is supported by Mac, Linux, and Windows operating systems. Other programs that can open ICO files include. The ICO file format is an image file format for computer icons in Microsoft Windows.ICO files contain one or more small images at multiple sizes and color depths, such that they may be scaled appropriately. In Windows, all executables that display an icon to the user, on the desktop, in the Start Menu, or in Windows Explorer, must carry the icon in ICO format.
Filename extension | |
---|---|
Type code | icns |
Uniform Type Identifier (UTI) | com.apple.icns |
Developed by | Apple Inc. |
Type of format |
Slayer 2 vst. The Apple Icon Image format is the icon format used in Apple Inc.'s macOS. It supports icons of 16 × 16, 32 × 32, 48 × 48, 128 × 128, 256 × 256, 512 × 512 points at 1x and 2x scale, with both 1- and 8-bitalpha channels and multiple image states (example: open and closed folders). The fixed-size icons can be scaled by the operating system and displayed at any intermediate size.
File structure[edit]
The file format consists of an 8 byte header, followed by any number of icons.
Header[edit]
Free Desktop Icons For Mac
Offset | Size | Purpose |
---|---|---|
0 | 4 | Magic literal, must be 'icns' (0x69, 0x63, 0x6e, 0x73) |
4 | 4 | Length of file, in bytes, msb first |
Icon data[edit]
Offset | Size | Purpose |
---|---|---|
0 | 4 | Icon type, see OSType below. |
4 | 4 | Length of data, in bytes (including type and length), msb first |
8 | Variable | Icon data |
Compression[edit]
lead value | tail bytes | result uncompressed |
---|---|---|
0…127 | 1…128 | 1…128 bytes |
128…255 | 1 byte | 3…130 copies |
Over time the format has been improved and there is support for compression of some parts of the pixel data. The 32-bit ('is32', 'il32', 'ih32','it32') and ARGB ('ic04', 'ic05') pixel data are often compressed (per channel) with a format similar to PackBits.[1]Some sources mentioned that the OS supports both compressed or uncompressed data chunks.
The following pseudocode decompresses the data:
Icon File Type For Mac Shortcut
Example: 02 01 02 02 80 03 81 04 82 05
should decompress to 01 02 02 03 03 03 04 04 04 04 05 05 05 05 05
Icon types[edit]
Icon File Type For Mac Os
OSType | Length (bytes) | Size (pixels) | Supported OS Version | Description |
---|---|---|---|---|
ICON | 128 | 32 | 1.0 | 32×32 1-bit mono icon |
ICN# | 256 | 32 | 6.0 | 32×32 1-bit mono icon with 1-bit mask |
icm# | 48 | 16 | 6.0 | 16×12 1 bit mono icon with 1-bit mask |
icm4 | 96 | 16 | 7.0 | 16×12 4 bit icon |
icm8 | 192 | 16 | 7.0 | 16×12 8 bit icon |
ics# | 64 (32 img + 32 mask) | 16 | 6.0 | 16×16 1-bit mask |
ics4 | 128 | 16 | 7.0 | 16×16 4-bit icon |
ics8 | 256 | 16 | 7.0 | 16x16 8 bit icon |
is32 | varies (768) | 16 | 8.5 | 16×16 24-bit icon |
s8mk | 256 | 16 | 8.5 | 16x16 8-bit mask |
icl4 | 512 | 32 | 7.0 | 32×32 4-bit icon |
icl8 | 1,024 | 32 | 7.0 | 32×32 8-bit icon |
il32 | varies (3,072) | 32 | 8.5 | 32x32 24-bit icon |
l8mk | 1,024 | 32 | 8.5 | 32×32 8-bit mask |
ich# | 288 | 48 | 8.5 | 48×48 1-bit mask |
ich4 | 1,152 | 48 | 8.5 | 48×48 4-bit icon |
ich8 | 2,304 | 48 | 8.5 | 48×48 8-bit icon |
ih32 | varies (6,912) | 48 | 8.5 | 48×48 24-bit icon |
h8mk | 2,304 | 48 | 8.5 | 48×48 8-bit mask |
it32 | varies (49,152) | 128 | 10.0 | 128×128 24-bit icon |
t8mk | 16,384 | 128 | 10.0 | 128×128 8-bit mask |
icp4 | varies | 16 | 10.7 | 16x16 icon in JPEG 2000 or PNG format |
icp5 | varies | 32 | 10.7 | 32x32 icon in JPEG 2000 or PNG format |
icp6 | varies | 64 | 10.7 | 64x64 icon in JPEG 2000 or PNG format |
ic07 | varies | 128 | 10.7 | 128x128 icon in JPEG 2000 or PNG format |
ic08 | varies | 256 | 10.5 | 256×256 icon in JPEG 2000 or PNG format |
ic09 | varies | 512 | 10.5 | 512×512 icon in JPEG 2000 or PNG format |
ic10 | varies | 1024 | 10.7 | 1024×1024 in 10.7 (or 512x512@2x 'retina' in 10.8) icon in JPEG 2000 or PNG format |
ic11 | varies | 32 | 10.8 | 16x16@2x 'retina' icon in JPEG 2000 or PNG format |
ic12 | varies | 64 | 10.8 | 32x32@2x 'retina' icon in JPEG 2000 or PNG format |
ic13 | varies | 256 | 10.8 | 128x128@2x 'retina' icon in JPEG 2000 or PNG format |
ic14 | varies | 512 | 10.8 | 256x256@2x 'retina' icon in JPEG 2000 or PNG format |
ic04 | varies | 16 | 16x16 ARGB | |
ic05 | varies | 32 | 32x32 ARGB | |
icsB | varies | 36 | 36x36 | |
icsb | varies | 18 | 18x18 |
- the values inside the brackets () in the length column is the uncompressed length.
- the ARGB format consists of the ascii values for 'ARGB' and the four compressed channels tightly packed
Other types[edit]
OSType | Length (bytes) | Description |
---|---|---|
'TOC ' | varies | 'Table of Contents' a list of all image types in the file, and their sizes (added in Mac OS X 10.7) |
'icnV' | 4 | 4-byte big endian float - equal to the bundle version number of Icon Composer.app that created to icon |
'name' | Unknown | |
'info' | 259 | Info binary plist. Usage unknown |
Filename extension | |
---|---|
Type code | icns |
Uniform Type Identifier (UTI) | com.apple.icns |
Developed by | Apple Inc. |
Type of format |
Slayer 2 vst. The Apple Icon Image format is the icon format used in Apple Inc.'s macOS. It supports icons of 16 × 16, 32 × 32, 48 × 48, 128 × 128, 256 × 256, 512 × 512 points at 1x and 2x scale, with both 1- and 8-bitalpha channels and multiple image states (example: open and closed folders). The fixed-size icons can be scaled by the operating system and displayed at any intermediate size.
File structure[edit]
The file format consists of an 8 byte header, followed by any number of icons.
Header[edit]
Free Desktop Icons For Mac
Offset | Size | Purpose |
---|---|---|
0 | 4 | Magic literal, must be 'icns' (0x69, 0x63, 0x6e, 0x73) |
4 | 4 | Length of file, in bytes, msb first |
Icon data[edit]
Offset | Size | Purpose |
---|---|---|
0 | 4 | Icon type, see OSType below. |
4 | 4 | Length of data, in bytes (including type and length), msb first |
8 | Variable | Icon data |
Compression[edit]
lead value | tail bytes | result uncompressed |
---|---|---|
0…127 | 1…128 | 1…128 bytes |
128…255 | 1 byte | 3…130 copies |
Over time the format has been improved and there is support for compression of some parts of the pixel data. The 32-bit ('is32', 'il32', 'ih32','it32') and ARGB ('ic04', 'ic05') pixel data are often compressed (per channel) with a format similar to PackBits.[1]Some sources mentioned that the OS supports both compressed or uncompressed data chunks.
The following pseudocode decompresses the data:
Icon File Type For Mac Shortcut
Example: 02 01 02 02 80 03 81 04 82 05
should decompress to 01 02 02 03 03 03 04 04 04 04 05 05 05 05 05
Icon types[edit]
Icon File Type For Mac Os
OSType | Length (bytes) | Size (pixels) | Supported OS Version | Description |
---|---|---|---|---|
ICON | 128 | 32 | 1.0 | 32×32 1-bit mono icon |
ICN# | 256 | 32 | 6.0 | 32×32 1-bit mono icon with 1-bit mask |
icm# | 48 | 16 | 6.0 | 16×12 1 bit mono icon with 1-bit mask |
icm4 | 96 | 16 | 7.0 | 16×12 4 bit icon |
icm8 | 192 | 16 | 7.0 | 16×12 8 bit icon |
ics# | 64 (32 img + 32 mask) | 16 | 6.0 | 16×16 1-bit mask |
ics4 | 128 | 16 | 7.0 | 16×16 4-bit icon |
ics8 | 256 | 16 | 7.0 | 16x16 8 bit icon |
is32 | varies (768) | 16 | 8.5 | 16×16 24-bit icon |
s8mk | 256 | 16 | 8.5 | 16x16 8-bit mask |
icl4 | 512 | 32 | 7.0 | 32×32 4-bit icon |
icl8 | 1,024 | 32 | 7.0 | 32×32 8-bit icon |
il32 | varies (3,072) | 32 | 8.5 | 32x32 24-bit icon |
l8mk | 1,024 | 32 | 8.5 | 32×32 8-bit mask |
ich# | 288 | 48 | 8.5 | 48×48 1-bit mask |
ich4 | 1,152 | 48 | 8.5 | 48×48 4-bit icon |
ich8 | 2,304 | 48 | 8.5 | 48×48 8-bit icon |
ih32 | varies (6,912) | 48 | 8.5 | 48×48 24-bit icon |
h8mk | 2,304 | 48 | 8.5 | 48×48 8-bit mask |
it32 | varies (49,152) | 128 | 10.0 | 128×128 24-bit icon |
t8mk | 16,384 | 128 | 10.0 | 128×128 8-bit mask |
icp4 | varies | 16 | 10.7 | 16x16 icon in JPEG 2000 or PNG format |
icp5 | varies | 32 | 10.7 | 32x32 icon in JPEG 2000 or PNG format |
icp6 | varies | 64 | 10.7 | 64x64 icon in JPEG 2000 or PNG format |
ic07 | varies | 128 | 10.7 | 128x128 icon in JPEG 2000 or PNG format |
ic08 | varies | 256 | 10.5 | 256×256 icon in JPEG 2000 or PNG format |
ic09 | varies | 512 | 10.5 | 512×512 icon in JPEG 2000 or PNG format |
ic10 | varies | 1024 | 10.7 | 1024×1024 in 10.7 (or 512x512@2x 'retina' in 10.8) icon in JPEG 2000 or PNG format |
ic11 | varies | 32 | 10.8 | 16x16@2x 'retina' icon in JPEG 2000 or PNG format |
ic12 | varies | 64 | 10.8 | 32x32@2x 'retina' icon in JPEG 2000 or PNG format |
ic13 | varies | 256 | 10.8 | 128x128@2x 'retina' icon in JPEG 2000 or PNG format |
ic14 | varies | 512 | 10.8 | 256x256@2x 'retina' icon in JPEG 2000 or PNG format |
ic04 | varies | 16 | 16x16 ARGB | |
ic05 | varies | 32 | 32x32 ARGB | |
icsB | varies | 36 | 36x36 | |
icsb | varies | 18 | 18x18 |
- the values inside the brackets () in the length column is the uncompressed length.
- the ARGB format consists of the ascii values for 'ARGB' and the four compressed channels tightly packed
Other types[edit]
OSType | Length (bytes) | Description |
---|---|---|
'TOC ' | varies | 'Table of Contents' a list of all image types in the file, and their sizes (added in Mac OS X 10.7) |
'icnV' | 4 | 4-byte big endian float - equal to the bundle version number of Icon Composer.app that created to icon |
'name' | Unknown | |
'info' | 259 | Info binary plist. Usage unknown |
Support[edit]
Various image viewers can load *.icns files, and free and open source converters from or to PNG also exist.[2][3]GTK+ can load *.icns resources since 2007.[4] Other tools supporting the format include the Apple Icon Composer and icns Browser, The Iconfactory, and IconBuilder.
MacOS[clarification needed] offers the built-in iconutil
command line tool to pack and unpack *.icns files.
External links[edit]
- IconFamily – Open source Objective C class to read and write Apple icns files
- osxiconutils - Command line tools to work with Apple icns files
See also[edit]
- ICO format on Windows
- X PixMap format for X11
References[edit]
Mac Folder Icons
- ^Macintosh Icons
- ^'libicns'. SourceForge project icns. 2009. Retrieved August 18, 2016.
- ^'png2icns'. Moin Uddin. 2016. Retrieved May 25, 2017.
- ^Lyonel Vincent (2007). 'Mac OS X icons for GTK+'. Retrieved August 18, 2016.