Dateiformat: bmp ed

"*" markiert unnötige, oder gar undefinierte, Daten

Header (56b)

Offset	Länge	Bedeutung
 0	 2	"BM"	(zeichnet die Bitmap aus!)
 2	 4	Komplette Größe der Datei
 6	 4	*
 10	 4	Offset, bei dem die Bilddaten in der Datei beginnen
 14	 4	40		(Header-Größe = 28h)
 18	 4	Breite
 22	 4	Höhe
 26	 2	1		(Anzahl der Ebenen)
 28	 2	Farbtiefe (in bit)
 30	 4	0		(Kompression (eigentlich immer 0 = unkomprimiert!))
 34	 4	Größe der Bilddaten (auf 4b aufgerundet!)
 38	 4	*		(horizontale Auflösung (in Pixel pro Meter...))
 42	 4	*		(vertikale Auflösung)
 46	 4	*		(Anzahl der benutzen Farben)
 50	 4	*		(Anzahl der "wichtigen" Farben.....???)

Farbpalette (NUR, falls Farbtiefe <= 8bit!)

Besteht aus je einem dieser Blöcke für jeden mglichen Farb-Index (bei 8bit Farbtiefe 256 Indizes/256 Blöcke):

{
	1	blau
	1	grün
	1	rot
	1	0
}

Bilddaten

Höhe * Breite -mal dieser Block (abhängig von der Farbtiefe):

{
	<=8 bit:
		1	Index, der eine Farbe aus der Pallete angibt
	16 bit:
		1bit	*
		5bit	blau
		5bit	grün
		5bit	rot
	24 bit:
		1	blau
		1	grün
		1	rot
	32 bit:
		1	*
		1	blau
		1	grün
		1	rot
}

Reihenfolge: Die Zeilen sind zusammenhängend von links nach rechts und (meistens) von unten nach oben aneinandergereiht (...auer die Höhe ist negativ....dubios!)

Eine Zeile endet mit sovielen unnötigen Bytes, dass ihre Größe (in bytes) durch 4 teilbar ist (...noch dubioser!)

Categories: Computer