|
Das Bild, das dabei als Beispiel herangezogen wird ist 16 x16 Pixel groß und sieht im Original so aus:
Groß würde das Bild dann so aussehen, wobei die Kästchen die einzelnen Pixel anzeigen:
Betrachtet man das Bild in einem beliebigen Hex-Editior, erhält man die folgenden Informationen (der rot umrandete Teil kennzeichnet den Bereich des Headers).
Die folgende Tabelle erklärt die einzelnen Felder des Headers, bzw. die Bedeutung der oben dargestellten Hexadezimal-Codes.
Dabei findet man unter Position bzw. Hexadezimal die Position des gerade besprochenen Headerfeldes in Dezimal und Hexadezimal-Werten. Unter Inhalt befindet sich die Bezeichnung des Feldes, beispielsweise die Bildbreite. Den tatsächlich an dieser Stelle vorkommenden Hexadezimal-Code findet man unter Beispiel. Unter Bedeutung die jeweilige Umrechnung der Werte in besser verständliche Information.
Betrachtet man zum Beispiel die zweite Zeile der Tabelle, erhält man die Positionen (Hexadezimal) 02 bis 05, die für die Positionen 2 bis 5 (wobei immer mit 0 begonnen wird) der ersten Zeile stehen. Sieht man nun im Hexadezimalcode des Bildes nach, findet man an dieser Stelle folgende Zeichenkette: 38 03 00 00. Laut Bitmap-Spezifikation wird hier die Dateigröße in Bytes angegeben. Rechnet man den Hexadezimalwert in Dezimalzahlen um, erhält man 824 - die Datei ist also 824 Bytes groß.
Nach diesem Prinzip kann die Tabelle relativ leicht gelesen werden. Die Tabelle umfasst den oben rot umrandeten Teil des Hexadezimal-Codes (den Header), der danach folgende Teil beschreibt die eigentlichen Bildinformationen.
Position | Hexadezimal | Inhalt | Beispiel (Hexcode) | Bedeutung |
00 bis 01 | 00 bis 01 | Dateiformat | 42 4D | BM (Bitmap) |
02 bis 05 | 02 bis 05 | Dateigröße (Bytes) | F8 00 00 00 | insgesamt 248 Bytes |
06 bis 09 | 06 bis 09 | Null | 00 00 00 00 | |
10 bis 13 | 0A bis 0D | Position der Bilddaten | 36 00 00 00 | entspricht hex. 36, das heißt Position 54 |
14 bis 17 | 0E bis 11 | Länge des Headers ab hier | 28 00 00 00 | entspricht hex. 28, das heißt 40 Bytes |
18 bis 21 | 12 bis 15 | Bildbreite (Pixel) | 08 00 00 00 | entspricht hex. 8, das heißt 8 Pixel |
22 bis 25 | 16 bis 19 | Bildhöhe (Pixel) | 08 00 00 00 | entspricht hex. 8, das heißt 8 Pixel |
26 bis 27 | 1A bis 1B | Ebenenanzahl | 01 00 | entspricht hex. 01, das heißt eine Ebene |
28 bis 29 | 1C bis 1D | Farbtiefe (Bits pro Pixel) | 18 00 | Hier: 24; alternativ 1, 4, 8, 16 oder 32 |
30 bis 33 | 1E bis 21 | Kompressionsmethode | 00 00 00 00 | Hier: keine Kompression |
34 bis 37 | 22 bis 25 | Datenmenge ohne Header | C2 00 00 00 | entspricht hex C2, das heißt insgesamt 194 Bytes |
38 bis 41 | 26 bis 29 | horizontale Auflösung (Pixel/Meter) | 12 0B 00 00 | entspricht hex. 0B 12, das heißt 2834 px/m |
42 bis 45 | 2A bis 2D | vertikale Auflösung (Pixel/Meter) | 12 0B 00 00 | entspricht hex. 0B 12, das heißt 2834 px/m |
46 bis 49 | 2E bis 31 | Anzahl benutzter Farben | 00 00 00 00 | Nur bei 1, 2, 4 oder 8 Bit-Farbtiefe von Belang (hier verwendet: 16 bit) |
50 bis 53 | 32 bis 35 | Anzahl wichtiger Farben | 00 00 00 00 | Ebenfalls nur bei 1, 2, 4 oder 8 Bit-Farbtiefe von Belang |