File Extension ICO
File extension ICO is most commonly associated with an image file used for icons developed by Microsoft for use with the Windows operating system.
ICO files contain multiple images with varying dimensions and colour depths which allow icons to be displayed on various resolutions and display colour depths in a GUI (Graphical User Interface), and may represent a file, folder or application. ICO files have an almost identical file structure to CUR files, which are used to store cursor images for use in Windows.
Prior to Windows XP, ICO files could contain images anywhere between 1 x 1 pixels up to 255 x 255 pixels at 4, 8, 16 or 24-bit colour, though the most common sizes were 16 x 16 and 32 x 32 pixels to accommodate menu icons and large icon view respectively. ICO files also usually contained two bitmaps - an AND bitmap and an XOR bitmap - which were used in conjunction to provide transparency and inversion of colours on same-colour backgrounds. Windows XP brought support for 32-bit images in ICO files, with transparency taken from the 8-bit alpha channel. This allowed effects such as shadows and anti-aliasing to be applied to icons to improve their look. Windows Vista added support for 256 x 256 pixel compressed PNG images to be used as icons which also have inbuilt transparency removing the need for two separate images per icon.
ICO files are not images themselves - they are simply a container for multiple bitmaps (or File extension PNG images in Windows Vista) which can be used by the operating system as icons. An ICO file contains header information, which defines its file type, a directory, which stores information about each image contained within the file, and multiple icon images with varying resolutions and colour depths stored in bitmap or PNG format.
ICO files can be opened and edited by a number of applications including The GIMP, Irfanview, Pixelshop and Microangelo. Icons can then be applied to individual files and folders in Windows which allows users to customise their desktop and user interface.