Qu'est-ce que le format de fichier DIB ?
L'extension .dib désigne un Device Independent Bitmap, un format d'image matricielle développé par Microsoft (en collaboration avec IBM pour OS/2) qui sert de base au fichier .bmp courant. Être « indépendant du périphérique » signifie que les données de couleur sont auto-descriptives - le fichier contient sa propre palette ou ses métadonnées de profondeur de bits afin que l'image s'affiche de manière cohérente quelles que soient les capacités du périphérique de sortie.
Sur le disque, un fichier .dib est structurellement identique à un fichier .bmp : un BITMAPFILEHEADER de 14 octets (commençant par la signature de deux octets BM) est suivi d'une variante d'en-tête DIB, d'une palette de couleurs optionnelle et d'un tableau de pixels bruts. L'en-tête le plus courant est le BITMAPINFOHEADER de 40 octets introduit avec Windows 3.0 en 1990. Les rangées de pixels sont stockées de bas en haut par défaut, avec un alignement (padding) sur des limites de 4 octets. Les profondeurs de couleur prises en charge vont du monochrome 1 bit au RGBA 32 bits (le canal alpha nécessite un BITMAPV4HEADER ou BITMAPV5HEADER).
Dans la programmation GDI de Windows, le terme DIB fait spécifiquement référence à la structure de données en mémoire (BITMAPINFO + bits de pixels), tandis que .bmp est la forme du fichier sur disque qui ajoute un en-tête de fichier supplémentaire de 14 octets. L'extension .dib sur disque est rare et totalement interchangeable avec .bmp - chaque application qui ouvre des fichiers .bmp gère également le .dib sans problème.
La plupart des fichiers .dib utilisent le mode non compressé BI_RGB. Le codage par plages optionnel (BI_RLE8 pour les images 8 bits, BI_RLE4 pour les 4 bits) réduit modestement la taille du fichier. Comme le format n'est pas compressé par défaut, les tailles de fichiers sont importantes par rapport aux équivalents PNG ou JPEG.
Sécurité et sûreté
RISQUE : LOWLe format DIB/BMP contient des données de pixels brutes sans scripts ni macros - format à faible risque. Des vulnérabilités historiques d'analyseur (dimensions d'en-tête malformées, mauvaises séquences RLE) pouvaient faire planter les anciennes bibliothèques d'images, gardez donc vos logiciels à jour. Évitez les sites de « convertisseur DIB gratuit » remplis de publicités ; utilisez plutôt IrfanView, GIMP, ImageMagick ou Squoosh.
Détails du format
en brefProgrammes qui ouvrent les fichiers DIB
Détails techniques
spécifications approfondies| Signature de fichier | `BM` (hex `42 4D`) à l'offset 0 - octets magiques du BITMAPFILEHEADER |
| Variantes d'en-tête | BITMAPCOREHEADER (12 octets, OS/2), BITMAPINFOHEADER (40 octets, Win3.0+), BITMAPV4HEADER (108 octets), BITMAPV5HEADER (124 octets, support profil ICC) |
| Profondeurs de couleur | 1, 4, 8, 16, 24 ou 32 bits par pixel ; 1/4/8 bits utilisent une palette indexée ; 16/24/32 bits sont en RGB direct |
| Canal alpha | Pris en charge dans les DIB 32 bits avec BITMAPV4HEADER ou BITMAPV5HEADER (Windows 98/2000+) |
| Ordre des rangées de pixels | De bas en haut par défaut (valeur de hauteur positive) ; une hauteur négative code une image de haut en bas |
| Alignement des rangées | Chaque rangée de pixels est alignée sur une limite de 4 octets (DWORD) |
| Modes de compression | `BI_RGB` (aucun, le plus courant) ; `BI_RLE8` (RLE 8 bits) ; `BI_RLE4` (RLE 4 bits) |
| Palette de couleurs | Présente pour les images 1/4/8 bits sous forme de tableau RGBQUAD ; absente pour les couleurs directes 16/24/32 bits |
| Ordre des octets | Little-endian |
| Mémoire vs disque | Le DIB en mémoire omet le BITMAPFILEHEADER de 14 octets ; le fichier `.dib` sur disque l'inclut, avec une structure identique au `.bmp` |
| Dimensions maximales | 32 767 × 32 767 px avec BITMAPINFOHEADER (champ signé 32 bits) ; BITMAPCOREHEADER limité à 16 bits non signé (65 535 px) |
| Métadonnées de résolution | Résolution horizontale et verticale stockée en pixels par mètre dans les champs `biXPelsPerMeter` et `biYPelsPerMeter` |
| Profil de couleur ICC | Intégrable dans le BITMAPV5HEADER |
| Interopérabilité | Le `.dib` est entièrement interchangeable avec le `.bmp` ; toutes les applications compatibles BMP ouvrent les fichiers `.dib` sans modification |
| Publié | 1985 (Windows 1.0/2.0); modern BITMAPINFOHEADER form with Windows 3.0, 1990 |
| Dernière version | BITMAPV5HEADER (Windows 98/2000, 1998) |
| Standard ouvert | Oui · libre de droits |
| Spécification | learn.microsoft.com |
Conversions DIB
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers DIB.