Qu'est-ce que le format de fichier BMP ?
.bmp est un fichier image qui stocke des graphiques matriciels, développé par Microsoft (avec IBM, pour OS/2). Le format BMP est presque toujours non compressé, de sorte que les images haute résolution enregistrées sous forme de fichiers .bmp sont plus volumineuses que les fichiers enregistrés dans des formats comparables tels que PNG ou JPEG. Une compression optionnelle par codage par plages (RLE) existe mais est rarement utilisée.
Le BMP est capable de stocker des images dans diverses profondeurs de couleur :
- monochrome 1 bit (noir et blanc uniquement),
- 4 bits (16 couleurs distinctes),
- 8 bits (256 couleurs distinctes),
- couleur 16 bits, 24 bits ou 32 bits (cette dernière ajoute un canal alpha pour la transparence).
Structure du fichier
Chaque fichier .bmp possède une section d'en-tête qui contient des informations sur la profondeur de couleur, la taille du fichier et l'offset des données de pixels, suivie d'un tableau représentant les pixels du bitmap. Les lignes sont stockées de bas en haut et alignées sur des limites de 4 octets. Quatre versions d'en-tête DIB existent - BITMAPCOREHEADER, BITMAPINFOHEADER, BITMAPV4HEADER et BITMAPV5HEADER - la dernière permettant l'intégration de profils de couleur ICC.
Sécurité et sûreté
RISQUE : LOWLe BMP est constitué de données de pixels brutes sans scripts ni macros, le format lui-même présente donc peu de risques. Seuls bémols : historiquement, quelques bogues de bibliothèques d'images permettaient à des en-têtes BMP malformés (dimensions annoncées énormes, séquences RLE erronées) de faire planter ou de saturer les analyseurs, gardez donc votre visionneuse à jour ; et évitez les sites de « convertisseurs BMP gratuits » truffés de publicités - utilisez plutôt IrfanView, GIMP, ImageMagick ou Squoosh.
Détails du format
en brefProgrammes qui ouvrent les fichiers BMP
Détails techniques
spécifications approfondies| Type MIME | image/bmp (également image/x-bmp, image/x-ms-bmp) |
| Signature de fichier (Magic bytes) | 42 4D (« BM ») à l'offset 0 |
| Ordre des octets | Little-endian |
| Compression | Généralement aucune (BI_RGB) ; codage par plages optionnel BI_RLE8 et BI_RLE4 ; rares BI_BITFIELDS, BI_JPEG, BI_PNG |
| Profondeurs de couleur supportées | 1, 4, 8, 16, 24 ou 32 bits par pixel |
| Stockage des lignes de pixels | De bas en haut par défaut (dernière ligne en premier) ; une valeur de hauteur négative signale de haut en bas ; chaque ligne est alignée sur une limite de 4 octets |
| En-tête de fichier | BITMAPFILEHEADER - 14 octets ; contient la signature BM, la taille totale du fichier et l'offset des données de pixels |
| Versions d'en-tête DIB | BITMAPCOREHEADER (12 octets), BITMAPINFOHEADER (40 octets), BITMAPV4HEADER (108 octets), BITMAPV5HEADER (124 octets) ; version identifiée par le DWORD à l'offset 0x0E |
| Canal alpha | Supporté en mode 32 bits via BITMAPV4HEADER et BITMAPV5HEADER ; non disponible dans les versions d'en-tête 24 bits ou antérieures |
| Dimensions maximales de l'image | Jusqu'à environ 2,1 milliards de pixels par côté (entier signé 32 bits dans BITMAPINFOHEADER) ; BITMAPCOREHEADER limite à 65 535 px par côté |
| Palette de couleurs | Optionnelle ; jusqu'à 256 entrées RGBQUAD utilisées pour les modes indexés (1, 4, 8 bpp) |
| Profil de couleur ICC | Support du profil ICC intégré ajouté dans BITMAPV5HEADER (Windows 98/2000) ; les en-têtes plus anciens ne portent aucune métadonnée d'espace colorimétrique |
| Extension alternative | .dib (Device Independent Bitmap) - format identique, utilisé de manière interchangeable sous Windows |
| Variantes OS/2 | Les fichiers OS/2 Bitmap Array utilisent des signatures magiques alternatives : BA, CI, CP, IC, PT |
| Publié | 1985-1990 (Windows 1.0/2.0; OS/2 1.x); BITMAPINFOHEADER form with Windows 3.0 (1990) |
| Dernière version | BITMAPV5HEADER (Windows 98/2000, 1998) - adds ICC color profiles |
| Standard ouvert | Oui · libre de droits |
| Spécification | learn.microsoft.com |
Conversions BMP
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers BMP.