La diferencia entre bisizeimage, bisize y bfsize en formato BMP

Difference Between Bisizeimage

Estaba confundido acerca de la diferencia entre los tres cuando estaba escribiendo mi tarea. No encontré una introducción detallada en Internet.
Se puede hacer referencia a la siguiente descripción a continuación.

bfSize es el tamaño de archivo completo de la imagen de mapa de bits. El tamaño de archivo de la imagen de mapa de bits consta de dos partes:
Una sección de encabezado (con información general sobre el archivo = bfOffBits)
y parte de la imagen (donde se almacena la información del píxel = biSizeImage)



Por tanto, tenemos la siguiente estructura



|_+_|

Además, bfOffBits (sección de título) Puede subdividirse en
un encabezado de archivo y
encabezado (biSize)



Por lo tanto, también se puede escribir como

|_+_|

Cualquiera

|_+_|

Sin embargo, esto sería una mala práctica porque los 'números mágicos' codificados normalmente son impopulares.
Pero echemos un vistazo biSizeImage . En general, el tamaño del archivo de la imagen en sí consiste en profundidad de color * ancho * alto. La profundidad de color en un BMP de 24 bits es de 3 bytes por píxel (azul, verde y rojo, respectivamente, valores 0-255), el llamado triplete RGB. Información adicional de expertos: los valores en tres colores se guardan en orden azul, verde y rojo; busque la palabra clave LittleEndianness para obtener más información sobre el tema. Si el ancho de la imagen no se puede dividir en 4 bytes, el estándar BMP también agregará 0 como relleno.



Como han señalado otros, es un poco confuso y ahora debe multiplicar el tamaño del píxel por la profundidad del byte. Entonces tenemos

|_+_|

Esto le dará el tamaño de bytes final de la imagen.

Entonces, llega a la conclusión:

biSizeImage = tamaño de archivo de la parte de la imagen BMP en bytes
biSize = tamaño de archivo (en bytes) de la parte del encabezado de información del encabezado BMP
Bfsize = tamaño de archivo del BMP completo (en bytes) (incluido el título y la imagen)

Espero ayudar a comprender, (https Enlace original )