Windows bitmap
Windows bitmap (.BMP) es un formato de imagen de mapa de bits, propio del sistema operativo Microsoft Windows. Puede guardar imágenes de 24 bits (16,7 millones de colores), 8 bits (256 tonos de gris) y menos. Puede darse a estos archivos una compresión sin pérdida de calidad: la compresión RLE (Run-length encoding).
Windows bitmap | ||
---|---|---|
Desarrollador | ||
Microsoft en 1986 | ||
Información general | ||
Extensión de archivo |
.bmp o .dib | |
Tipo de MIME |
image/x-ms-bmp (no oficial) | |
Uniform Type Identifier | com.microsoft.bmp | |
Número mágico |
BM | |
Tipo de formato | Gráfico rasterizado | |
Formato abierto | ? | |
Los archivos de mapas de bits se componen de direcciones asociadas a códigos de color, uno para cada cuadro en una matriz de píxeles tal como se esquematizaría un dibujo de "colorea los cuadros" para niños pequeños. Normalmente, se caracterizan por ser muy poco eficientes en su uso de espacio en disco, pero pueden mostrar un buen nivel de calidad, ya que guardan exactamente la imagen representada sin perdida de información. Por esta razón, los archivos BMP no se utilizan en páginas web debido a su gran tamaño en relación con su resolución.
Dependiendo de la profundidad de color que tenga la imagen, cada píxel puede ocupar uno o varios bits. Incluso el formato BMP soporta tener una tabla de colores, con la que usando pocos bits se puede representar una paleta acotada de colores. En general, se suelen transformar en otros formatos, como JPEG (fotografías), GIF (animaciones) o PNG (dibujos y esquemas), que utilizan otros algoritmos para conseguir una mayor compresión (menor tamaño del archivo), pero que en algunos casos se pierde parte de la información (como en JPEG) o se pierde profundidad de color (como en GIF).
Los archivos incluyen una cabecera que empieza con el «número mágico» BM
(0x42 0x4D), que lo identifica con el programa de visualización o edición. En la cabecera también se indica el tamaño de la imagen y con cuántos bytes se representa el color de cada píxel.
Los bytes están organizados usando el sistema little-endian.
A continuación se detalla la estructura de la cabecera de una imagen BMP:
Bytes | Información |
---|---|
0, 1 | Tipo de fichero "BM" |
2, 3, 4, 5 | Tamaño del archivo |
6, 7 | Reservado |
8, 9 | Reservado |
10, 11, 12, 13 | Inicio de los datos de la imagen |
14, 15, 16, 17 | Tamaño de la cabecera del bitmap |
18, 19, 20, 21 | Anchura (píxels) |
22, 23, 24, 25 | Altura (píxels) |
26, 27 | Número de planos |
28, 29 | Tamaño de cada punto |
30, 31, 32, 33 | Compresión (0=no comprimido) |
34, 35, 36, 37 | Tamaño de la imagen |
38, 39, 40, 41 | Resolución horizontal |
42, 43, 44, 45 | Resolución vertical |
46, 47, 48, 49 | Tamaño de la tabla de color |
50, 51, 52, 53 | Contador de colores importantes |
El mapa de bits de una imagen BMP comienza a leerse de abajo arriba, es decir: en una imagen en 24 bits los primeros 3 bytes corresponden al primer píxel inferior izquierdo.