.ICO вариант №
Файлы с расширением ICO представляют собой типы файлов изображений, используемые в качестве значков для представления приложения в Microsoft Windows. Они бывают разного размера, поддерживают цвет и разрешение в соответствии с требованиями дисплея. Другим подобным форматом файла изображения в Microsoft Windows является CUR для представления курсора и определения активной области в заголовке изображения. В MacOS форматы файлов ICNS служат той же цели, что и файлы ICO. Несколько онлайн-сайтов, а также приложений предоставляют возможность создания таких файлов и преобразования других форматов изображений, таких как BMP, PNG и т. д., в формат файла значка. Официальным зарегистрированным IANA типом интернет-носителя для файлов ICO является image/vnd.microsoft.icon.
Краткая история
Иконки были представлены с запуском Microsoft Windows 1.0. Они были размером 32x32 и были монохромными. С появлением win32 была введена поддержка изображений значков в истинном цвете с размером до 256x256 пикселей. Windows XP была первой, которая обеспечила поддержку 32-битных цветных изображений значков, позволяя добавлять к значку полупрозрачные области, такие как тени, сглаживание и эффекты, подобные стеклу. Microsoft рекомендует только размеры значков до 48×48 пикселей для Windows XP. Windows Vista добавила в проводник Windows представление значков размером 256 × 256 пикселей, а также поддержку сжатого формата PNG. Пользователям, использующим более высокие разрешения и режимы с высоким DPI, рекомендуются более крупные форматы значков (например, 256 × 256).
Формат файла ICO
Один файл ICO состоит из одного или нескольких небольших изображений разных размеров и глубины цвета. Наличие изображений нескольких размеров для соответствующего масштабирования при разных разрешениях экрана. Все значения в файлах ICO/CUR представлены в порядке байтов little-endian.
Файл ICO состоит из заголовка значка, каталога значков,
Поле | Описание |
---|---|
Заголовок значка | Хранит общую информацию о файле ICO. |
Directory[1..n] | Хранит общую информацию о каждом изображении в файле. |
Иконка №1 | Фактические «данные» для первого изображения в старом формате AND/XOR DIB или более новом формате PNG |
… | |
Icon #n | Данные для последнего изображения значка |
Заголовок
Смещение | Размер (в байтах) | Назначение |
---|---|---|
0 | 2 | Зарезервировано. Всегда должен быть 0. |
2 | 2 | Указывает тип изображения: 1 для изображения значка (.ICO), 2 для изображения курсора (.CUR). Другие значения недействительны. |
4 | 2 | Указывает количество изображений в файле. |
Справочник
Каталог, содержащийся в файле ICO, представленный как структура ICONDIR, содержит структуру ICONDIRECTORY для каждого изображения в файле. За ним следует непрерывный блок всех растровых данных изображения. Это показано ниже.
Смещение | Размер | Описание |
---|---|---|
0 (0) | 1 | Ширина, должна быть 0, если 256 пикселей |
1 (1) | 1 | Высота, должна быть 0, если 256 пикселей |
2 (2) | 1 | Количество цветов, должно быть 0, если цветов больше 256 |
3 (3) | 1 | Зарезервировано, должно быть 0 |
4 (4) | 2 | Цветные плоскости в формате .ICO должны быть 0 или 1, или точка доступа X в формате .CUR |
6 (6) | 2 | Бит на пиксель в формате .ICO или точка Y в формате .CUR |
8 (8) | 4 | Размер растровых данных в байтах. |
12 (C) | 4 | Смещение в файле. |