1 2 #define BMP_RGB 0 3 #define BMP_RLE8 1 4 #define BMP_RLE4 2 5 #define BMP_BITFIELDS 3 6 7 typedef struct { 8 uchar red; 9 uchar green; 10 uchar blue; 11 uchar alpha; 12 } Rgb; 13 14 #define Filehdrsz 14 15 16 typedef struct { 17 short type; 18 long size; /* file size, not structure size */ 19 short reserved1; 20 short reserved2; 21 long offbits; 22 } Filehdr; 23 24 typedef struct { 25 long size; /* Size of the Bitmap-file */ 26 long lReserved; /* Reserved */ 27 long dataoff; /* Picture data location */ 28 long hsize; /* Header-Size */ 29 long width; /* Picture width (pixels) */ 30 long height; /* Picture height (pixels) */ 31 short planes; /* Planes (must be 1) */ 32 short bpp; /* Bits per pixel (1, 4, 8 or 24) */ 33 long compression; /* Compression mode */ 34 long imagesize; /* Image size (bytes) */ 35 long hres; /* Horizontal Resolution (pels/meter) */ 36 long vres; /* Vertical Resolution (pels/meter) */ 37 long colours; /* Used Colours (Col-Table index) */ 38 long impcolours; /* Important colours (Col-Table index) */ 39 } Infohdr; 40