60 likes | 186 Views
Dateiformate für Rasterbilder. . pcx. .bmp. .tiff. .jpeg. .png. Windows Bitmap. typedef struct tagBITMAPFILEHEADER { WORD bfType ; „BM“ Magic number DWORD bfSize ; Dateigröße WORD bfReserved1 ; „0“ WORD bfReserved2 ; „0“
E N D
Dateiformate für Rasterbilder .pcx .bmp .tiff .jpeg .png
Windows Bitmap typedef struct tagBITMAPFILEHEADER { WORD bfType; „BM“ Magic number DWORD bfSize; Dateigröße WORD bfReserved1; „0“ WORD bfReserved2; „0“ DWORD bfOffBits; Offset Color Index } BITMAPFILEHEADER, *PBITMAPFILEHEADER; Dateiaufbau .BMP BitmapFileHeader typedef struct tagBITMAPINFOHEADER{ DWORD biSize; Länge des Headers LONG biWidth; Breite in Pixel LONG biHeight; Höhe in Pixel + - WORD biPlanes; Muss 1 sein ! WORD biBitCountBit pro Pixel (1-32) DWORD biCompression; ohne RLE JPEG PNG DWORD biSizeImage; Datei- Puffergröße LONG biXPelsPerMeter; Ausgabeauflösung LONG biYPelsPerMeter; DWORD biClrUsed; 0 oder Anzahl Farben DWORD biClrImportant; 0 oder wichtige F. } BITMAPINFOHEADER, *PBITMAPINFOHEADER; BitmapInfoHeader RGBQuad array Color-Index array DWORD 32 Bit o. Vz.LONG 32 Bit mit Vz.WORD 16 Bit o. Vz.
Windows Bitmap Ab Windows 95 erweiterter BitmapV4InfoHeader: Ab Windows 98/2000 erweiterter BitmapV5InfoHeader: Win 95 ... DWORD bV4RedMask; RGB-Rot DWORD bV4GreenMask; RGB-Grün DWORD bV4BlueMask; RGB-Blau DWORD bV4AlphaMask; Transparenz Farbe DWORD bV4CSType; Art des Farbraumes ( CIEXYZTRIPLE bV4EndPoints; CIE-Farbdreieck DWORD bV4GammaRed; Gamma für jede Farbe DWORD bV4GammaGreen; DWORD bV4GammaBlue; Dateiaufbau .BMP BitmapFileHeader BitmapInfoHeader RGBQuad array Color-Index array Win 98 LogColorSpace Calibrated RGBsRGBlinked profileembedded profileWindows DWORD bV5Intent; DWORD bV5ProfileData; Internes oder DWORD bV5ProfileSize; externes Farbprofil DWORD bV5Reserved; } BITMAPV5HEADER, *PBITMAPV5HEADER;
Windows Bitmap typedef struct tagRGBQUAD { BYTE rgbBlue; BYTE rgbGreen; BYTE rgbRed; BYTE rgbReserved; = 0 } RGBQUAD; Palette Dateiaufbau .BMP BitmapFileHeader BitmapInfoHeader Farbwerte oder Farbindizes zeilenweisevon links nach rechtsvon unten nach oben (Höhe positiv)von oben nach unten (Höhe negativ)ggfs. Komprimiert Doppelwortausrichtung jeder Zeile RGBQuad array Color-Index array
Windows Bitmap Offset RGB-Bitmap10*8 Höhe*Breite Dateilänge Ebenen Magic number Höhe Bits/Pixel Zeile 8
Windows BitmapRun-Length Encoding Lauflängen-Kodierung RLE8: für 8-Bit-Bitmaps (256 Graustufen oder 256 Palettenfarben): Encoded mode: 1. Byte = Wiederholungsfaktor2. Byte = zu wiederholender Farbwert oder -index Sonderfall: 1. Byte = 00 (Fluchtsymbol, Escape-Zeichen) und 2. Byte = 00 Zeilenende oder 2. Byte = 01 Ende des Bitmaps oder 2. Byte = 02 Die nächsten 2 Bytes enthalten einenOffset, ab dem es dann weitergeht oder 2. Byte >= 3: soviele Bytes kommen unverschlüsseltJeder Lauf auf Wortgrenze ausgerichtet RLE4aufNibbles 03 04 05 0600 03 45 56 67 00 02 78 00 02 05 01 02 78 00 00 09 1E 00 01 04 04 04 06 06 06 06 0645 56 6778 78 5 rechts 1 runter 78 78 (eol) 1E 1E 1E 1E 1E 1E 1E 1E 1E 1E eobm