← Zurück zu Ausgabeformate
BMP (Bitmap, auch Device Independent Bitmap / DIB) ist Microsofts natives Rasterbildformat für Windows, das Pixel ohne oder mit nur minimaler Kompression speichert – seit Windows 1.0 Teil des Betriebssystems, heute durch effizientere Formate weitgehend ersetzt, aber als Systemformat weiterhin vorhanden.

Rubrik: Ausgabeformate & Technische Standards · Unterrubrik: Bild-Dateiformate · Niveau: Einsteiger Dateiendung: .bmp, .dib · Entwickler: Microsoft (mit IBM) · Eingeführt: 1986 (Windows 1.0)

Was ist BMP?

BMP ist das älteste und grundlegendste Windows-Bildformat. Als Microsoft Windows 1.0 einführte, benötigte das System ein einfaches, schnell lesbares Format für Systemgrafiken, Hintergrundbilder und UI-Elemente. BMP war die Antwort: simpel, verlustfrei, ohne Komprimierungsaufwand direkt im Speicher darstellbar.

Genau diese Simplizität ist heute sowohl Stärke als auch Schwäche: BMP-Dateien sind riesig, da kaum Kompression verwendet wird. Ein 24-Megapixel-Foto als BMP belegt etwa 69 MB – als JPEG wären es 3–8 MB. Im modernen Alltag gibt es für BMP kaum noch sinnvolle Anwendungsfälle; für alle praktischen Zwecke ist PNG (verlustfrei) oder JPEG (für Fotos) die bessere Wahl.

Erklärung

Dateistruktur: Eine BMP-Datei besteht aus mehreren Sektionen:

  1. File Header (14 Bytes): Dateisignatur ("BM"), Dateigröße, reservierte Felder, Offset zum Pixelarray
  2. DIB Header (variabel): Bildbreite, Bildhöhe, Farbtiefe, Kompressionstyp, Auflösung (dpi), Farbpalette
  3. Farbtabelle (optional): Für indizierte Farbbitmaps (1, 4, 8 Bit)
  4. Pixeldaten: Die tatsächlichen Pixelwerte, zeilenweise, von unten nach oben (Bottom-up, außer bei bestimmten Varianten)

Farbtiefe: BMP unterstützt verschiedene Bit-Tiefen:

  • 1 Bit: Schwarzweiß (2 Farben)
  • 4 Bit: 16 Farben (indiziert)
  • 8 Bit: 256 Farben (indiziert, oder Graustufen)
  • 16 Bit: 65.536 Farben (RGB 5-6-5 oder 5-5-5)
  • 24 Bit: 16,7 Millionen Farben (RGB, Standard)
  • 32 Bit: RGB + Alpha (Windows ARGB)

Kompression: BMP-Dateien sind in der Praxis fast immer unkomprimiert. Es existiert jedoch eine optionale RLE-Kompression (Run-Length Encoding) für 4-Bit- und 8-Bit-Bitmaps:

  • BI_RGB: Unkomprimiert (Standard)
  • BI_RLE8: RLE für 8-Bit-Bitmaps
  • BI_RLE4: RLE für 4-Bit-Bitmaps
  • BI_BITFIELDS: Bitmask für 16-Bit und 32-Bit

Ausrichtung: Pixel werden im Speicher an 4-Byte-Grenzen ausgerichtet (Padding). Jede Zeile muss ein Vielfaches von 4 Bytes sein. Bei ungeraden Bildbreiten werden Füllbytes hinzugefügt.

Alphakanal: Standard-BMP unterstützt keinen Alphakanal. In 32-Bit-BMP wird das vierte Byte (A-Kanal) in der Praxis oft als leer behandelt, es sei denn, die Anwendung interpretiert es explizit als Alpha.

DIB (Device Independent Bitmap): DIBs sind BMP-Dateien, die Farbprofilinformationen enthalten können (ab Windows CE 2.0 eingeführt). Dies ermöglicht geräteunabhängige Farbdarstellung, ist aber in der Praxis selten genutzt.

Varianten und Versionen: Es gibt mehrere DIB-Header-Versionen, die im Laufe der Windows-Geschichte eingeführt wurden:

  • BITMAPCOREHEADER (12 Bytes): OS/2 1.x
  • BITMAPINFOHEADER (40 Bytes): Windows 3.x – häufigste Version
  • BITMAPV4HEADER (108 Bytes): Windows 95 – mit Farbprofil-Support
  • BITMAPV5HEADER (124 Bytes): Windows 98 – mit ICC-Profil-Einbettung

Verwendung im Windows-System: Intern nutzt Windows GDI (Graphics Device Interface) BMP als natives Format für:

  • Fenster-Hintergrundbilder (Wallpaper)
  • System-Icons (in älteren Windows-Versionen, heute ICO)
  • Ressourcen in ausführbaren Dateien (.exe, .dll)
  • Clipboard-Datenaustausch zwischen Anwendungen
  • Screenshoterfassung via PrintScreen (intern als BMP, dann vom Ziel-Programm konvertiert)

Dateigröße: Die ungepackte Dateigröße berechnet sich simpel: Größe = Breite × Höhe × (Bits pro Pixel / 8) + Header Ein 1920×1080-Pixel-Bild in 24-Bit-BMP = 1920 × 1080 × 3 Bytes = ~6 MB.

Beispiele

  1. Windows-Hintergrundbild (historisch): Ältere Windows-Versionen (bis XP) speicherten Desktophintergrundbilder als BMP. Windows Vista/7 wechselte zu JPEG für Fotos, nutzt aber intern noch BMP für einige Systemressourcen.
  2. Ressourcen in Windows-Anwendungen: Desktop-Anwendungsentwickler betten kleine BMP-Icons und Bitmaps als Ressourcen in .exe-Dateien ein.
  3. Zwischenablage (Clipboard): Bei Copy-Paste von Bildinhalten in Windows wird intern oft BMP als Zwischenformat genutzt, das dann von der Ziel-App in ein anderes Format konvertiert wird.
  4. Einfacher Screengrab für Entwickler: In der Windows-API ist das Erstellen eines Device-Context-Bitmaps (HDC/HBITMAP) für Screenshots und Rendering-Operationen eine grundlegende Operation, die im Kern BMP nutzt.
  5. Legacy-Software-Kompatibilität: Ältere industrielle oder wissenschaftliche Software, die seit Windows 95/98 nicht aktualisiert wurde, kann oft nur BMP lesen und schreiben.

In der Praxis

Wann BMP noch verwenden:

  • Systemnahe Windows-Programmierung (GDI-Operationen)
  • Austausch mit extrem alter Software ohne andere Format-Unterstützung
  • Wenn absolute Einfachheit und Zero-Overhead beim Lesen/Schreiben wichtiger sind als Dateigröße

Wann BMP meiden (fast immer):

  • Webpublikation: PNG, JPEG, WebP sind kleiner und universeller
  • Archivierung: TIFF oder PNG sind verlustfrei und haben Metadaten-Support
  • Druckvorstufe: TIFF mit ICC-Profil
  • Email/Sharing: JPEG oder PNG

Software-Kompatibilität: Universell auf Windows; auf macOS und Linux über ImageMagick, GIMP, LibreOffice und praktisch jede andere Bildbearbeitungssoftware lesbar.

Vergleich & Abgrenzung

Gegenüber PNG: Beide sind verlustfrei. PNG komprimiert erheblich besser (BMP-Dateien sind typischerweise 3–10× größer), unterstützt Metadaten, ICC-Profile und Transparenz mit Alphakanal vollständig. PNG hat BMP in praktisch allen Nicht-System-Anwendungen vollständig ersetzt. Es gibt keinen praktischen Anwendungsfall, in dem BMP PNG vorzuziehen wäre.

Gegenüber TIFF: TIFF bietet verlustfreie Kompression, CMYK-Support, 16-Bit-Farbtiefe, Metadaten und breite Profi-Software-Kompatibilität. BMP bietet nichts davon.

Gegenüber JPEG: Für Fotos ist JPEG 10–30× kleiner bei subjektiv vergleichbarer Qualität. BMP bietet verlustfreie Qualität, ist aber ineffizient groß.

Häufige Fragen (FAQ)

Wann sollte ich BMP statt PNG verwenden? Kurze Antwort: Praktisch nie. BMP wird heute ausschließlich noch in systemnaher Windows-Programmierung oder für die Kompatibilität mit sehr alter Software verwendet. Für alle anderen Anwendungsfälle ist PNG (verlustfrei mit Transparenz und Metadaten) oder JPEG (verlustbehaftet für Fotos) die überlegene Alternative. PNG erzeugt bei identischer Bildqualität erheblich kleinere Dateien.

Welche Qualitätseinstellungen sind bei BMP optimal? BMP hat keine Qualitätsstufen – das Format ist immer pixelgenau verlustfrei (für die unterstützten Bit-Tiefen ohne Kompression). Die relevante Entscheidung ist die Bit-Tiefe: 24-Bit für Farbbild, 8-Bit für Graustufen, 32-Bit wenn ein rudimentärer Alpha-Kanal benötigt wird. RLE-Kompression (für 4-Bit und 8-Bit) ist verlustfrei, aber selten sinnvoll, da modernere verlustfreie Formate wie PNG deutlich effizienter komprimieren.

Weiterführend

  • Microsoft: „Bitmap Storage" – docs.microsoft.com/en-us/windows/win32/gdi/bitmap-storage (2022)
  • Murray, J.D., van Ryper, W.: „Encyclopedia of Graphics File Formats", 2. Aufl., O'Reilly, 1996
  • Library of Congress: „BMP File Format" – loc.gov/preservation/digital/formats/fdd/fdd000189.shtml
← Zurück zu Ausgabeformate
Infotag · 13. Mai · 15:00 Uhr · Vor Ort

Sei am Mittwoch dabei.
Bring Eltern oder Freunde mit.

Ein halber Nachmittag, der dir drei Jahre Klarheit bringen kann. Kostenlos, unverbindlich, ehrlich.

  • Rundgang durch Studios, Schnitträume und Tonstudio
  • Echte Absolventenfilme sehen
  • 1:1-Beratung zu Bewerbung & BAföG
  • Studierende direkt fragen
  • Kaffee, kein Sales-Pitch
  • Auch online möglich

Platz beim Infotag reservieren

Dauert 30 Sekunden. Bestätigung per E-Mail.
100 % kostenlos · keine Verpflichtung · jederzeit absagbar
BMP — Wiki | Lazi Akademie Esslingen