Windows Bitmap (.bmp)

Microsoft Standar

Bitmap Image File (BMP) adalah format grafis raster independen perangkat mendasar buatan Microsoft, yang menyimpan baris pindai (scanlines) yang tidak terkompresi atau terkompresi RLE dengan kompatibilitas framebuffer perangkat keras langsung.

Konversi BMP ke PNG

Pengonversi BMP ke PNG gratis di dalam peramban. Konversi berkas secara instan di perangkat Anda.

Periksa & Metadata

Sistem operasi dan penganalisis file mengidentifikasi file BMP dengan memeriksa urutan byte biner utama:

Pilih atau letakkan berkas di sini

100% konversi privat di dalam peramban - berkas tidak pernah meninggalkan perangkat Anda

atau tempel Ctrl+V
Jaminan Privasi Tanpa Transmisi Jaringan: 0 byte diunggah ke server eksternal. Semua pemrosesan terjadi secara lokal di sandboks peramban Anda.

Tanda Tangan Header Tingkat-Byte (Magic Bytes)

Sistem operasi dan penganalisis file mengidentifikasi file BMP dengan memeriksa urutan byte biner utama:

SIGNATURE HEX (OFFSET 0):

42 4D

REPRESENTASI ASCII: BM

Standardisasi: Microsoft Windows Device-Independent Bitmap (DIB) Architecture

Spesifikasi Teknis

Arsitektur WadahBITMAPFILEHEADER followed by BITMAPINFOHEADER (DIB) and raster pixel array
KompresiUncompressed raw scanlines, or optional BI_RLE8 / BI_RLE4 run-length encoding
Endianness ByteLittle-Endian (Intel x86 byte order)
Ruang WarnaDevice Dependent RGB, sRGB (BITMAPV5HEADER embedded)
Saluran & Struktur1-bit monochrome, 4-bit / 8-bit paletted, 16-bit, 24-bit RGB, or 32-bit RGBA
Dimensi Maks2,147,483,647 x 2,147,483,647 pixels (signed 32-bit integer)
Transparansi32-bit BGRA alpha mask supported in modern BITMAPV3HEADER and V5HEADER formats
Streaming & ProgresifNon-streamable; scanlines stored upside-down (bottom-up) unless height is negative

Matriks Perbandingan Teknis: BMP vs Pesaing

Atribut TeknisBMP (Saat Ini)PNGTIFFJPG
Mode KompresiTidak terkompresi / RLE MinimalDeflate lossless (~70% lebih kecil)Tidak terkompresi / LZW / ZipDCT lossy (~90% lebih kecil)
Kecepatan DekodePenyalinan memori instanMemerlukan dekompresi DeflateMemerlukan dekompresi LZW/ZIPMemerlukan perhitungan IDCT
Pengurutan Baris PindaiDari bawah ke atas (terbalik)Dari atas ke bawahDari atas ke bawah / StripBlok MCU dari atas ke bawah
Kesesuaian WebSangat buruk (beban data membengkak)Sangat baik untuk grafisBuruk (penerbitan desktop)Sangat baik untuk fotografi

Mode Kerusakan Umum & Panduan Pemulihan Hex

Gambar dirender miring secara diagonal atau condong pada suatu sudut.

Penyebab Utama: Perhitungan padding baris yang salah (kegagalan untuk mem-padding setiap baris pindai ke batas 4-byte).

Pemulihan: Sandi ulang (re-encode) menggunakan File2File Image Converter untuk menegakkan kelurusan langkah (stride) baris pindai 32-bit yang benar.

Analisis Keamanan & Vektor Serangan Parser

Decoder BMP sering kali mengalami pembacaan berlebih pada penyangga saat mengalokasikan penyangga berdasarkan dimensi header DIB yang tidak tepercaya.

Vektor Serangan yang Diketahui

  • Pelampiasan bilangan bulat dalam perhitungan lebar * tinggi * bpp yang mengarah pada alokasi heap kecil dan penulisan di luar batas.
  • Urutan pelarian panjang run (run-length escape sequences) RLE8/RLE4 yang rusak menyebabkan penulisan memori di luar penyangga yang dialokasikan.
  • Penolakan layanan melalui alokasi memori beberapa gigabita yang dipicu oleh dimensi header yang dibuat khusus.

Praktik Terbaik Defensif:

Asal-Usul & Tonggak Sejarah

1998Windows 98 memperkenalkan BITMAPV5HEADER, menambahkan manajemen profil warna ICC dan koreksi gamma.
1990Windows 3.0 menstandarisasi spesifikasi DIB BITMAPINFOHEADER di seluruh sistem operasi.
1987Diperkenalkan bersama Windows 2.0 dan OS/2 1.1 sebagai format raster tampilan asli.

Keunggulan & Kelebihan Utama

  • Tanpa degradasi kompresi: penyimpanan piksel yang tepat secara bit 100% tanpa artefak kompresi.
  • Dukungan sistem operasi asli yang universal di semua versi Windows, Linux, dan macOS.
  • Kompleksitas dekode yang sangat mudah menjadikannya ideal untuk mikrokontroler tersemat dan pendidikan pemrograman grafis.

Keterbatasan Teknis & Kekurangan

  • Ukuran file yang sangat besar karena kurangnya kompresi entropi modern seperti DEFLATE atau pengodean Huffman.
  • Tidak efisien untuk transmisi web atau distribusi jaringan seluler.
  • Pengurutan baris pindai dari bawah ke atas memerlukan pembalikan baris vertikal dalam alur kerja grafis modern dari atas ke bawah.

Fakta Teknis Menarik

  • BMP menyimpan baris pindai gambar secara terbalik (dari bawah ke atas) secara default karena sistem koordinat Kartesius matematis yang digunakan pada OS/2.
  • Jika nilai tinggi (height) di header BMP disetel ke angka negatif, gambar akan didekode dari atas ke bawah (kanan sisi atasnya).
  • Setiap baris pindai dalam file BMP harus diberi padding dengan angka nol kelipatan 4 byte (penyelarasan batas 32-bit).

Pertanyaan Teknis yang Sering Diajukan

Mengapa file BMP berukuran sangat besar?

File BMP menyimpan nilai warna mentah (raw) yang tidak dikompresi untuk setiap piksel tunggal, sementara format seperti PNG mengompresi data tersebut tanpa kehilangan kualitas sedikit pun.

Bisakah BMP mendukung transparansi?

Ya. File BMP 32-bit (menggunakan BITMAPV3HEADER atau yang lebih baru) dapat menyimpan saluran alfa 8-bit, meskipun dukungannya bervariasi pada perangkat lunak yang lebih lama.

Bagaimana cara memperkecil ukuran file BMP?

Mengonversi file BMP ke PNG menggunakan File2File.app biasanya mengurangi ukuran file sebesar 60% hingga 85% tanpa penurunan kualitas visual sama sekali.