ICO (формат файлов)

Поделись знанием:
Перейти к: навигация, поиск
ICO, Windows icon
Тип формата

растровая графика

ICO (Windows icon) — формат хранения файлов значков в Microsoft Windows.

Формат ICO аналогичен формату CUR (Windows cursors), предназначенному для хранения курсоров. Отличие состоит в численном значении одного поля в заголовочной структуре, и интерпретации значений двух других полей этой же структуры.

Один ICO-файл содержит один или несколько значков, размер и цветность каждого из которых задаётся отдельно. Размер значка может быть любым, но наиболее употребимы квадратные значки со стороной 16, 32 и 48 пикселей. Также используются значки с размером 24, 40, 60, 72, 92, 108, 128 пикселей.

Начиная с Windows 98/2000, формат поддерживает внедрение изображений в формате JPEG и PNG, но обычно данные значков хранятся в несжатом виде.К:Википедия:Статьи без источников (тип: не указан)[источник не указан 5236 дней]

Значки бывают в естественном цвете (True Color, глубина цвета 32 бит), High Color (глубина цвета 16 бит), или с фиксированной палитрой (из двухсот пятидесяти шести, шестнадцати, или всего из двух цветов). В этом случае число, соответствующее каждому пикселю указывает не на цвет, а на номер цвета в палитре.

По своей структуре изображения в файле ICO наиболее близки к BMP, но принципиально отличаются от них наличием дополнительного изображения — маски, накладываемой на задний план при помощи операции побитового «И», что позволяет реализовать (полную) прозрачность рисунка. Последующее наложение основного изображения с помощью «исключающего ИЛИ» может даже дать «инверсные» пиксели в тех местах, где задний план не был замаскирован.

Кроме того, начиная с Windows XP поддерживаются 32-битные значки — каждому пикселу соответствует 24-бита цвета и 8-битный альфа-канал, позволяющий реализовать 256 уровней частичной прозрачности. С помощью альфа-канала можно отображать значки со сглаженными (размытыми) краями и тенью, сочетающимися с любым фоном; маска в этом случае игнорируется.





Формат файла

Файл состоит из заголовка фиксированной длины, каталога информации о изображениях и непосредственно изображений.

Заголовок

Заголовок имеет размер 6 байт:

Поле Смещение
(в байтах)
Размер
(в байтах)
Описание
reserved 0 2 Зарезервировано. Всегда 0.
type 2 2 Тип файла:
  • 1 для значков (.ICO)
  • 2 для курсоров (.CUR)

Иные значения недопустимы.

count 4 2 Количество изображений в файле, минимум 1.

Каталог информации об изображениях

Представляет собой последовательные записи фиксированного размера (16 байт), следующие одна за другой. Количество записей определяется полем count заголовка.

Поле Смещение Размер
(в байтах)
Описание
width 0 1 Указывает ширину изображения в точках. Может принимать значения от 0 до 255. Если указано 0, то изображение имеет ширину 256 точек.
height 1 1 Указывает высоту изображения в точках. Может принимать значения от 0 до 255. Если указано 0, то изображение имеет высоту 256 точек.
colors 2 1 Указывает количество цветов в палитре изображения. Для полноцветных значков должно быть 0.
reserved 3 1 Зарезервировано. Должно быть 0. В технической документации Microsoft указано, что это значение всегда должно быть 0, однако значки, которые создаются встроенными средствами .NET (System.Drawing.Icon.Save) содержат в этом поле значение 255.
planes 4 2
  • В .ICO определяет количество плоскостей. Может быть 0 или 1.
  • В .CUR определяет горизонтальную координату "горячей точки" в пикселях относительно левого края изображения.
bpp 6 2
  • В .ICO определяет количество битов на пиксель (bits-per-pixel). Это значение может быть 0, так как легко получается из других данных; например, если изображение не хранится в формате PNG, тогда количество битов на пиксель рассчитывается на основе информации о размере растра, а также его ширине и высоте. Если же изображение хранится в формате PNG, то соответствующая информация хранится в самом PNG. Однако указывать в этом поле 0 не рекомендуется, так как логика выбора наилучшего изображения в различных версиях Windows неизвестна.
  • В .CUR определяет вертикальную координату "горячей точки" в пикселях относительно верхнего края изображения.
size 8 4 Указывает размер растра в байтах
offset 12 4 Указывает абсолютное смещение растра в файле.

Напишите отзыв о статье "ICO (формат файлов)"

Примечания

См. также

Ссылки

Отрывок, характеризующий ICO (формат файлов)



Как и всегда, и тогда высшее общество, соединяясь вместе при дворе и на больших балах, подразделялось на несколько кружков, имеющих каждый свой оттенок. В числе их самый обширный был кружок французский, Наполеоновского союза – графа Румянцева и Caulaincourt'a. В этом кружке одно из самых видных мест заняла Элен, как только она с мужем поселилась в Петербурге. У нее бывали господа французского посольства и большое количество людей, известных своим умом и любезностью, принадлежавших к этому направлению.
Элен была в Эрфурте во время знаменитого свидания императоров, и оттуда привезла эти связи со всеми Наполеоновскими достопримечательностями Европы. В Эрфурте она имела блестящий успех. Сам Наполеон, заметив ее в театре, сказал про нее: «C'est un superbe animal». [Это прекрасное животное.] Успех ее в качестве красивой и элегантной женщины не удивлял Пьера, потому что с годами она сделалась еще красивее, чем прежде. Но удивляло его то, что за эти два года жена его успела приобрести себе репутацию
«d'une femme charmante, aussi spirituelle, que belle». [прелестной женщины, столь же умной, сколько красивой.] Известный рrince de Ligne [князь де Линь] писал ей письма на восьми страницах. Билибин приберегал свои mots [словечки], чтобы в первый раз сказать их при графине Безуховой. Быть принятым в салоне графини Безуховой считалось дипломом ума; молодые люди прочитывали книги перед вечером Элен, чтобы было о чем говорить в ее салоне, и секретари посольства, и даже посланники, поверяли ей дипломатические тайны, так что Элен была сила в некотором роде. Пьер, который знал, что она была очень глупа, с странным чувством недоуменья и страха иногда присутствовал на ее вечерах и обедах, где говорилось о политике, поэзии и философии. На этих вечерах он испытывал чувство подобное тому, которое должен испытывать фокусник, ожидая всякий раз, что вот вот обман его откроется. Но оттого ли, что для ведения такого салона именно нужна была глупость, или потому что сами обманываемые находили удовольствие в этом обмане, обман не открывался, и репутация d'une femme charmante et spirituelle так непоколебимо утвердилась за Еленой Васильевной Безуховой, что она могла говорить самые большие пошлости и глупости, и всё таки все восхищались каждым ее словом и отыскивали в нем глубокий смысл, которого она сама и не подозревала.
Пьер был именно тем самым мужем, который нужен был для этой блестящей, светской женщины. Он был тот рассеянный чудак, муж grand seigneur [большой барин], никому не мешающий и не только не портящий общего впечатления высокого тона гостиной, но, своей противоположностью изяществу и такту жены, служащий выгодным для нее фоном. Пьер, за эти два года, вследствие своего постоянного сосредоточенного занятия невещественными интересами и искреннего презрения ко всему остальному, усвоил себе в неинтересовавшем его обществе жены тот тон равнодушия, небрежности и благосклонности ко всем, который не приобретается искусственно и который потому то и внушает невольное уважение. Он входил в гостиную своей жены как в театр, со всеми был знаком, всем был одинаково рад и ко всем был одинаково равнодушен. Иногда он вступал в разговор, интересовавший его, и тогда, без соображений о том, были ли тут или нет les messieurs de l'ambassade [служащие при посольстве], шамкая говорил свои мнения, которые иногда были совершенно не в тоне настоящей минуты. Но мнение о чудаке муже de la femme la plus distinguee de Petersbourg [самой замечательной женщины в Петербурге] уже так установилось, что никто не принимал au serux [всерьез] его выходок.
В числе многих молодых людей, ежедневно бывавших в доме Элен, Борис Друбецкой, уже весьма успевший в службе, был после возвращения Элен из Эрфурта, самым близким человеком в доме Безуховых. Элен называла его mon page [мой паж] и обращалась с ним как с ребенком. Улыбка ее в отношении его была та же, как и ко всем, но иногда Пьеру неприятно было видеть эту улыбку. Борис обращался с Пьером с особенной, достойной и грустной почтительностию. Этот оттенок почтительности тоже беспокоил Пьера. Пьер так больно страдал три года тому назад от оскорбления, нанесенного ему женой, что теперь он спасал себя от возможности подобного оскорбления во первых тем, что он не был мужем своей жены, во вторых тем, что он не позволял себе подозревать.