Вопрос

Я пишу приложение в C -файлах ICON Windows (ICO).

Когда я читаю в BITMAPINFOHEADER структура для существующей записи значка, все переменные в структуре содержат ожидаемые значения, за исключением того, что biHeight, который должен содержать высоту в пикселях изображения, всегда вдвое больше, чем она должна быть.

Так, например, если у меня есть значок 64x64, biWidth 64, но biHeight это 128.

Это ожидаемое поведение? Это мой первый раз с BITMAPINFOHEADER.

Я в основном работаю из Статья MSDN о BitmapinfoHeader.

Это было полезно?

Решение

Да, это нормально. Это дополнительная высота «и растровой маски» и растровой маски «XOR», поэтому для любого нормального значка он просто в 2 раза высота значка. (Эти маски больше не используются для 32-разрядных значков; они-задержание.) Просто разделите на два.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top