Reserved |
2 byte |
=0 |
Type |
2 byte |
=1 |
Count |
2 byte |
Number of Icons in this file=1 |
Width |
1 byte |
Cursor Width=32 |
Height |
1 byte |
Cursor Height=32 |
ColorCount |
1 byte |
Number of Colors =16 |
Reserved |
1 byte |
=0 |
Planes |
2 byte |
=1 |
BitCount |
2 byte |
bits per pixel =4 |
SizeInBytes |
4 byte |
Size of (InfoHeader + ANDbitmap + XORbitmap) |
FileOffset |
4 byte |
FilePos, where InfoHeader starts |
InfoHeader |
- |
- |
Size |
4 bytes |
Size of InfoHeader structure = 40 |
Width |
4 bytes |
Icon Width=32 |
Height |
4 bytes |
Icon Height=64 (added height of XOR-Bitmap and AND-Bitmap) |
Planes |
2 bytes |
number of planes = 1 |
BitCount |
2 bytes |
bits per pixel = 4 |
Compression |
4 bytes |
Type of Compression = 0 |
ImageSize |
4 bytes |
Size of Image in Bytes = 0 (uncompressed) |
XpixelsPerM |
4 bytes |
unused = 0 |
YpixelsPerM |
4 bytes |
unused = 0 |
ColorsUsed |
4 bytes |
unused = 0 |
ColorsImportant |
4 bytes |
unused = 0 |
Colors |
16 * 4 bytes |
Color Map: red (1 byte), green, blue component and reserved (1 byte) |
XORBitmap |
16*32 bytes |
Pixels are stored bottom-up, left-to-right. Every byte holds 2 pixels, its high-order 4 bits representing the left of those. |
ANDBitmap |
4*32 bytes |
Every byte holds 8 pixels, its highest order bit representing the leftmost pixel of those. |