#define BYTE unsigned char #define WORD unsigned short #define DWORD unsigned long typedef struct tagBITMAPFILEHEADER { WORD bfType; /* Dateikennung "ID" */ DWORD bfSize; /* Laenge der Datei in Bytes */ WORD bfReserved1; /* immer NULL */ WORD bfReserved2; /* immer NULL */ DWORD bfOffBits; /* Offset der Bilddaten */ } BITMAPFILEHEADER; typedef struct tagBITMAPINFOHEADER { DWORD biSize; /* Groesse der BITMAPINFOHEADER Struktur in Bytes */ DWORD biWidth; /* Breite der Bitmap */ DWORD biHeight; /* Hoehe der Bitmap */ WORD biPlanes; /* Anzahl der Ebenen (immer 1) */ WORD biBitCount; /* Anzahl der Bits pro Pixel (1,2,4,8,24) */ DWORD biCompression; /* Komprimierungsart */ DWORD biSizeImage; /* Groesse des Bildes in Bytes. Dieser Wert kann auf NULL gesetzt werden, falls die Komprimierungsart BI_RGB ist */ DWORD biXPelsPerMeter; /* X-Aufloesung in Pixel pro Meter */ DWORD biYPelsPerMeter; /* Y-Aufloesung in Pixel pro Meter */ DWORD biClrUsed; /* Anzahl der verwendeten Farben der Farbpalette (falls 0 => max. Anzahl verwendet) */ DWORD biClrImportant; /* Anzahl der Farben die zur Darstellung als "wichtig" betrachtet werden. (falls 0 => max. Anzahl verwendet) */ } BITMAPINFOHEADER;