BMP

BMP-Format — Aufbau und Einsatz der Windows-Bitmap-Datei

BMP erklärt: Datei- und Info-Header, Farbtabelle, Pixel-Array, warum unkomprimierte Dateien so groß sind, Bottom-up-Speicherung, Zeilen-Padding und heutige Einsätze.

Dateiendung.bmp (.dib)
MIMEimage/bmp
SpezifikationMicrosoft-Dokumentation (kein offizieller internationaler Standard)
KompressionMeist unkomprimiert (RLE optional)
TransparenzEingeschränkt (Alpha in 32-Bit-Headern V4/V5 definiert)
AnimationKeine
Farbtiefe1, 4, 8, 16, 24 oder 32 Bit pro Pixel

BMP ist das Dateiformat zum Speichern von geräteunabhängigen Bitmaps (DIB), wie sie unter Microsoft Windows und OS/2 verwendet wurden. Es ist kein Standard einer internationalen Normungsorganisation; als De-facto-Spezifikation dient die Entwicklerdokumentation von Microsoft. Das wichtigste Merkmal ist der einfache Aufbau, den jedes Programm leicht lesen und schreiben kann.

Dateiaufbau

Laut dem Microsoft-Learn-Dokument „Bitmap Storage“ besteht eine BMP-Datei aus folgenden Teilen in dieser Reihenfolge:

ReihenfolgeBestandteilInhalt
1BITMAPFILEHEADERDateikennung (BM), Dateigröße, Startposition der Pixeldaten
2BITMAPINFOHEADER (oder V4/V5-Header)Breite und Höhe in Pixeln, Bits pro Pixel, Kompressionsart, Auflösung
3Farbtabelle (RGBQUAD-Array)Für Palettenbilder mit 1, 4 oder 8 Bit
4Pixel-ArrayDie eigentlichen Bilddaten

Die ersten beiden Bytes der Datei sind ASCII BM (hexadezimal 42 4D); daran erkennen Sie eine BMP-Datei auch bei geänderter Endung. Der Info-Header enthält außerdem ein Feld für die Druckauflösung (Pixel pro Meter).

Gespeichert von unten nach oben

Eine gewöhnliche BMP-Datei speichert die Pixel von der untersten zur obersten Zeile (bottom-up). Ist der Höhenwert im Header negativ, wurde von oben nach unten (top-down) gespeichert. Außerdem wird jede Zeile am Ende mit Füllbytes aufgefüllt, damit ihre Bytezahl ein Vielfaches von 4 ist. Wer selbst einen BMP-Parser schreibt, macht hier häufig Fehler.

Beispiel für die Zeilenberechnung

Eine BMP-Zeile muss auf 4-Byte-Einheiten ausgerichtet sein. Bei einem 24-Bit-Bild mit 101 Pixeln Breite umfasst eine Zeile tatsächlich 101 × 3 = 303 Bytes; um auf ein Vielfaches von 4 zu kommen, wird 1 Byte aufgefüllt und die Zeile mit 304 Bytes gespeichert. Die Gesamtgröße der Pixeldaten beträgt also (Bytes pro Zeile) × Höhe in Pixeln; zusammen mit dem Header (meist 54 Bytes) ergibt sich die Dateigröße. Wegen dieser Regel tritt bei Bildern, deren Breite kein Vielfaches von 4 ist, beim direkten Verarbeiten häufig ein zeilenweise verschobenes Bild auf.

Warum die Dateien so groß sind

BMP speichert meist unkomprimierte Rohpixel. Ein 24-Bit-BMP belegt 3 Bytes pro Pixel, ein Bild mit 1920×1080 also etwa 6,2 MB, ein Smartphone-Foto mit 4032×3024 etwa 36,6 MB. Für Palettenbilder mit bis zu 8 Bit ist RLE-Kompression (Lauflängenkodierung) möglich, bei Fotos bringt sie aber kaum etwas. Auch MDN rät wegen der Dateigröße davon ab, BMP für Webinhalte zu verwenden.

Transparenz

Das klassische 24-Bit-BMP hat keinen Alphakanal. 32-Bit-BMPs mit V4/V5-Header können eine Alphamaske definieren, doch viele Programme werten sie nicht korrekt als Transparenz aus – für den Austausch transparenter Bilder ist PNG sicherer.

Wann BMP heute noch verwendet wird

  • Ältere Industrieanlagen, Embedded-Geräte, Bonbondrucker oder manche firmeninterne Programme akzeptieren nur BMP
  • Einfache Programme oder Lernbeispiele, die Pixel ohne Kompression und Dekompression direkt verarbeiten sollen
  • Speicherform kleiner Bilder innerhalb von Windows-Symbolen (ICO)

Worauf Sie bei der Umwandlung achten sollten

  • BMP → PNG: Verlustfrei und deutlich kleiner – die beste Umwandlung zum Archivieren und Teilen.
  • BMP → JPG: Bei Fotos schrumpft die Datei auf einen Bruchteil (oft ein Zehntel und weniger), allerdings mit verlustbehafteter Kompression.
  • Andere Formate → BMP: Prüfen Sie die vom Gerät verlangte Bittiefe (24 oder 8 Bit). Transparente Bereiche werden mit der Hintergrundfarbe gefüllt. Mit dem Tool Bildformat umwandeln können Sie als BMP speichern.

Stand: 2026-09-23

Quellen

← Zum Formatlexikon