| Adresse du groupe | Taille du groupe | Nom de l'attribut | Valeur | Information supplémentaire |
|---|---|---|---|---|
| Entête du fichier | ||||
| 0x 00 à 0x01 | 2 octets | Signature du fichier | 0x 42 4D (par défaut) | La valeur de la signature informe sur le type du fichier sur deux caractères. Ainsi BM correspond au format Bitmap Windows et ce code 0x 42 4D selon la table ASCII. |
| 0x 02 à 0x05 | 4 octets | Taille totale du fichier | 0x 00 00 00 00 (par défaut) | Pour rappel l’octet de poids faible se place en premier. |
| 0x06 à 0x09 | 4 octets | Champs réservé | 0x 00 00 00 00 | |
| 0x0a à 0x0d | 4 octets | Offset | 0x 36 00 00 00 (par défaut) | L’offset correspond à l’adresse du premier octet du corps de l’image. |
| Entête de l'image | ||||
| 0x0e à 0x11 | 4 octets | La taille de l’entête de l’image | 0x 28 00 00 00 (par défaut) | |
| 0x12 à 0x15 | 4 octets | La largeur de l’image en pixel (width) | De 00 à ff | Pour rappel l’octet de poids faible se place en premier. |
| 0x16 à 0x19 | 4 octets | La hauteur de l’image en pixel (height) | De 00 à ff | Idem |
| 0x1a à 0x1b | 2 octets | Le nombre de plans | 0x 01 00 (par défaut) | |
| 0x1c à 0x1d | 2 octets | La profondeur de codage de la couleur, c’est le nombre de bit utilisé par pixel | 0x 18 00 (par défaut) | La valeur la plus utilisée étant 0x18 soit 24 bits par pixel ce qui correspond à un octet pour chacune des couleurs (R, G, B). Les valeurs les plus fréquentes étant 1, 4, 8, 16, 24 et 32. |
| 0x1e à 0x21 | 4 octets | Le mode de compression, 0 si non compressé | 0x 00 00 00 00(par défaut) | 0 : pour non codé 1 : pour un codage RLE de 8 bits par pixel 2 : pour un codage RLE de 4 bits par pixel 3 : pour un codage bitfields, signifiant que la couleur est codée par un triple masque représenté par la palette |
| 0x22 à 0x25 | 4 octets | La définition de l’image, c’est le nombre d’octets composant l’image | 0x 00 00 00 00 (par défaut) | |
| 0x26 à 0x29 | 4 octets | La résolution horizontale par mètre. | 0x 00 00 00 00 (par défaut) | La résolution correspond au nombre de pixels par mètres alors que la définition correspond au nombre total de pixel sur l’image. |
| 0x2a à 0x2d | 4 octets | La résolution verticale par mètre. | 0x 00 00 00 00 (par défaut) | |
| 0x2e à 0x31 | 4 octets | Le nombre de couleurs de la palette. | 0x 00 00 00 00 (par défaut) | |
| 0x32 à 0x36 | 4 octets | Le nombre de couleurs importantes de la tablette | 0x 00 00 00 00 (par défaut) | |
| Palette de couleur | ||||
| 0x37 | 1 octet | Bleu | 0x 00 (par défaut) | |
| 0x38 | 1 octet | Vert | 0x 00 (par défaut) | |
| 0x39 | 1 octet | Rouge | 0x 00 (par défaut) | |
| 0x3a | 1 octet | Réservé pour la transparence | 0x 00 (par défaut) | |
| Corps de l'image | ||||
| 0x3b | N octets | Corps de l’image | C’est le cœur du fichier, l’ensemble des pixels. | |
(cliquez sur l'image pour la télécharger)
Si vous ouvrez l'image en binaire avec un outil tel que hexed.it vous pourrez constater que son contenu est le suivant :
| 42 4D 00 00 00 00 00 00 00 00 36 00 00 00 28 00 00 00 03 00 00 00 04 00 00 00 01 00 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (Entête) | |||
| FF FF FF | 88 88 88 | FF FF FF | 00 00 00 (bourrage) |
| FF 00 00 | 00 FF 00 | 00 00 FF | 00 00 00 (bourrage) |
| AB 46 F0 | 02 AE 15 | 12 50 AA | 00 00 00 (bourrage) |
| 22 33 11 | 44 88 AA | AA 17 65 | 00 00 00 (bourrage) |