Mapa de bits de Windows (.bmp)
Arquitectura EstándarBitmap Image File (BMP) es el formato de gráficos ráster independientes del dispositivo fundamental de Microsoft, que almacena líneas de exploración sin comprimir o comprimidas con RLE con compatibilidad directa con el framebuffer de hardware.
Convertir de BMP a PNG
Convertidor gratuito de BMP a PNG en el navegador. Convierte archivos al instante en tu dispositivo.
Inspeccionar y metadatos
Los sistemas operativos y analizadores de archivos identifican los archivos de BMP inspeccionando la secuencia de bytes binarios inicial:
Firma de cabecera a nivel de bytes (Bytes mágicos)
Los sistemas operativos y analizadores de archivos identifican los archivos de BMP inspeccionando la secuencia de bytes binarios inicial:
FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):
42 4DREPRESENTACIÓN ASCII: BM
Estandarización: Arquitectura de mapa de bits independiente del dispositivo (DIB) de Microsoft Windows
Especificaciones técnicas
| Arquitectura del contenedor | BITMAPFILEHEADER seguido de BITMAPINFOHEADER (DIB) y matriz de píxeles ráster |
| Compresión | Líneas de exploración sin comprimir, o codificación opcional de longitud de ejecución BI_RLE8 / BI_RLE4 |
| Orden de bytes (Endianness) | Little-Endian (orden de bytes Intel x86) |
| Espacios de color | RGB dependiente del dispositivo, sRGB (BITMAPV5HEADER incrustado) |
| Canales y estructura | Monocromo de 1 bit, paleta de 4 bits / 8 bits, 16 bits, RGB de 24 bits o RGBA de 32 bits |
| Dimensiones máximas | 2.147.483.647 x 2.147.483.647 píxeles (entero con signo de 32 bits) |
| Transparencia | Máscara alfa BGRA de 32 bits admitida en los formatos modernos BITMAPV3HEADER y V5HEADER |
| Streaming y progresivo | No apto para streaming; líneas de exploración almacenadas al revés (de abajo hacia arriba) a menos que la altura sea negativa |
Matriz de comparación técnica: BMP frente a la competencia
| Atributo técnico | BMP (Actual) | PNG | TIFF | JPG |
|---|---|---|---|---|
| Modo de compresión | Sin comprimir / RLE mínimo | Deflate sin pérdida (~70% más pequeño) | Sin comprimir / LZW / Zip | DCT con pérdida (~90% más pequeño) |
| Velocidad de decodificación | Copia de memoria instantánea | Requiere descompresión Deflate | Requiere descompresión LZW/ZIP | Requiere cálculo IDCT |
| Orden de líneas de exploración | De abajo hacia arriba (invertido) | De arriba hacia abajo | De arriba hacia abajo / Bandas | Bloques MCU de arriba hacia abajo |
| Idoneidad web | Muy pobre (cargas útiles pesadas) | Excelente para gráficos | Pobre (autoedición) | Excelente para fotografía |
Modos de corrupción comunes y guía de recuperación hexadecimal
La imagen se renderiza sesgada diagonalmente o inclinada en un ángulo.
Causa raíz: Cálculo incorrecto del relleno de filas (falla al rellenar cada línea de exploración a un límite de 4 bytes).
Recuperación: Recodifique usando File2File Image Converter para forzar el paso correcto de la línea de exploración de 32 bits.
Análisis de seguridad y vectores de ataque al analizador
Los decodificadores de BMP a menudo sufren de lecturas excesivas de búfer al asignar búferes basados en dimensiones de cabecera DIB no confiables.
Vectores de ataque conocidos
- Desbordamiento de enteros en el cálculo de ancho * alto * bpp que conduce a una asignación de montón pequeña y escritura fuera de los límites.
- Secuencias de escape de longitud de ejecución RLE8/RLE4 corruptas que causan escrituras de memoria más allá del búfer asignado.
- Denegación de servicio a través de la asignación de memoria de varios gigabytes activada por dimensiones de cabecera manipuladas.
Mejores prácticas defensivas: Valide estrictamente los límites de ancho, alto y profundidad de bits de la cabecera DIB antes de asignar memoria de destino.
Orígenes históricos e hitos
Ventajas clave y pros
- Cero degradación por compresión: almacenamiento de píxeles exacto a nivel de bit al 100% sin artefactos de compresión.
- Soportado de forma nativa universalmente en todas las versiones de sistemas operativos Windows, Linux y macOS.
- La complejidad de decodificación trivial lo hace ideal para microcontroladores incrustados y educación en programación gráfica.
Limitaciones técnicas y contras
- Archivos de gran tamaño debido a la falta de compresión de entropía moderna como DEFLATE o codificación Huffman.
- Ineficiente para la transmisión web o la distribución en redes móviles.
- El orden de las líneas de exploración de abajo hacia arriba requiere la inversión de filas verticales en las canalizaciones gráficas modernas de arriba hacia abajo.
Curiosidades técnicas interesantes
- BMP almacena las líneas de exploración de la imagen al revés (de abajo hacia arriba) por defecto debido al sistema de coordenadas cartesianas matemáticas utilizado en OS/2.
- Si el valor de la altura en la cabecera BMP se establece en un número negativo, la imagen se decodifica del derecho (de arriba hacia abajo).
- Cada línea de exploración en un archivo BMP debe rellenarse con ceros hasta un múltiplo de 4 bytes (alineación de límites de 32 bits).
Preguntas técnicas frecuentes
¿Por qué los archivos BMP son tan grandes?
Los archivos BMP almacenan valores de color sin comprimir para cada píxel individual, mientras que formatos como PNG comprimen esos datos sin perder calidad.
¿BMP admite transparencia?
Sí. Los archivos BMP de 32 bits (usando BITMAPV3HEADER o posterior) pueden almacenar un canal alfa de 8 bits, aunque la compatibilidad varía según el software más antiguo.
¿Cómo puedo reducir el tamaño de un archivo BMP?
Convertir un archivo BMP a PNG con File2File.app normalmente reduce el tamaño del archivo entre un 60% y un 85% sin pérdida de calidad visual.
Pares de conversión de BMP relacionados
Convertir archivos de mapa de bits de Windows sin comprimir a PNG ofrece una compresión sin pérdidas que reduce el tamaño de los archivos sin disminuir la calidad de la imagen.
Convertir gráficos de red portátiles en un archivo de mapa de bits de Windows transforma datos ráster comprimidos en una cuadrícula de píxeles sin comprimir para sistemas operativos y canales de hardware heredados.