¿Qué es el formato de archivo DIB?
La extensión .dib denota un Device Independent Bitmap, un formato de imagen ráster desarrollado por Microsoft (en colaboración con IBM para OS/2) que sirve de base al común archivo .bmp. Ser independiente del dispositivo significa que los datos de color se describen a sí mismos: el archivo lleva su propia paleta o metadatos de profundidad de bits para que la imagen se muestre de forma coherente independientemente de las capacidades del dispositivo de salida.
En el disco, un archivo .dib es estructuralmente idéntico a un archivo .bmp: un BITMAPFILEHEADER de 14 bytes (que comienza con la firma de dos bytes BM) es seguido por una variante de cabecera DIB, una paleta de colores opcional y una matriz de píxeles sin procesar. La cabecera más común es la BITMAPINFOHEADER de 40 bytes introducida con Windows 3.0 en 1990. Las filas de píxeles se almacenan de abajo hacia arriba por defecto, con un relleno (padding) hasta límites de 4 bytes. Las profundidades de color admitidas van desde 1 bit monocromo hasta 32 bits RGBA (el canal alfa requiere BITMAPV4HEADER o BITMAPV5HEADER).
En la programación GDI de Windows, el término DIB se refiere específicamente a la estructura de datos en memoria (BITMAPINFO + bits de píxeles), mientras que .bmp es la forma de archivo en disco que antepone una cabecera de archivo adicional de 14 bytes. La extensión .dib en disco es poco frecuente y totalmente intercambiable con .bmp; todas las aplicaciones que abren archivos .bmp también manejan .dib sin problemas.
La mayoría de los archivos .dib utilizan el modo BI_RGB sin compresión. La codificación opcional por longitud de racha (BI_RLE8 para imágenes de 8 bits, BI_RLE4 para las de 4 bits) reduce el tamaño del archivo modestamente. Debido a que el formato no está comprimido por defecto, los tamaños de archivo son grandes en comparación con los equivalentes PNG o JPEG.
Seguridad y protección
RIESGO: LOWDIB/BMP son datos de píxeles puros sin scripts ni macros; es un formato de bajo riesgo. Las vulnerabilidades históricas de los analizadores (dimensiones de cabecera mal formadas, secuencias RLE erróneas) podrían bloquear bibliotecas de imágenes antiguas, así que mantenga su software actualizado. Evite los sitios de «convertidor DIB gratuito» llenos de anuncios; use IrfanView, GIMP, ImageMagick o Squoosh en su lugar.
Detalles del formato
en pocas palabrasProgramas que abren archivos DIB
Detalles técnicos
especificación profunda| Firma de archivo | `BM` (hex `42 4D`) en el desplazamiento de byte 0 - bytes mágicos de BITMAPFILEHEADER |
| Variantes de cabecera | BITMAPCOREHEADER (12 bytes, OS/2), BITMAPINFOHEADER (40 bytes, Win3.0+), BITMAPV4HEADER (108 bytes), BITMAPV5HEADER (124 bytes, soporte de perfil ICC) |
| Profundidades de color admitidas | 1, 4, 8, 16, 24 o 32 bits por píxel; 1/4/8 bits usan una paleta indexada; 16/24/32 bits son RGB directo |
| Canal alfa | Admitido en DIBs de 32 bits con BITMAPV4HEADER o BITMAPV5HEADER (Windows 98/2000+) |
| Orden de filas de píxeles | De abajo hacia arriba por defecto (valor de altura positivo); una altura negativa codifica una imagen de arriba hacia abajo |
| Relleno de fila | Cada fila de píxeles se rellena hasta un límite de 4 bytes (DWORD) |
| Modos de compresión | `BI_RGB` (ninguno, el más común); `BI_RLE8` (RLE de 8 bits); `BI_RLE4` (RLE de 4 bits) |
| Paleta de colores | Presente para imágenes de 1/4/8 bits como una matriz RGBQUAD; ausente para color directo de 16/24/32 bits |
| Orden de bytes | Little-endian |
| En memoria vs en disco | El DIB en memoria omite el BITMAPFILEHEADER de 14 bytes; el archivo `.dib` en disco lo incluye, siendo idéntico en diseño al `.bmp` |
| Dimensiones máximas | 32.767 × 32.767 px con BITMAPINFOHEADER (campo de 32 bits con signo); BITMAPCOREHEADER limitado a 16 bits sin signo (65.535 px) |
| Metadatos de resolución | Resolución horizontal y vertical almacenada como píxeles por metro en los campos `biXPelsPerMeter` y `biYPelsPerMeter` |
| Perfil de color ICC | Integrable en BITMAPV5HEADER |
| Interoperabilidad | `.dib` es totalmente intercambiable con `.bmp`; todas las aplicaciones compatibles con BMP abren archivos `.dib` sin modificaciones |
| Lanzado | 1985 (Windows 1.0/2.0); modern BITMAPINFOHEADER form with Windows 3.0, 1990 |
| Última versión | BITMAPV5HEADER (Windows 98/2000, 1998) |
| Estándar abierto | Sí · libre de regalías |
| Especificación | learn.microsoft.com |
Conversiones de DIB
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos DIB.