我编写了一个程序来读取.bmp文件。这是.bmp文件的信息:

file-format - 在Windows的.bmp文件结构中,为什么“biSizeImage”不等于“width * height *(biBitCount/8)”?-LMLPHP

这是另一个测试图像:

file-format - 在Windows的.bmp文件结构中,为什么“biSizeImage”不等于“width * height *(biBitCount/8)”?-LMLPHP

我发现“ biSizeImage”不等于“ width * height *(biBitCount / 8)”,为什么会这样?

最佳答案

每条扫描线被填充为4字节的倍数。

在您的图像中,宽度为1190像素,每个像素占用24位/ 8位/字节= 3字节。这需要1190像素/扫描线* 3字节/像素= 3570字节/扫描线。每扫描线将此值舍入为3572字节,使其为4字节的倍数。然后,图像的大小为3572字节/扫描线* 685扫描线= 2446820字节。

关于file-format - 在Windows的.bmp文件结构中,为什么“biSizeImage”不等于“width * height *(biBitCount/8)”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33428246/

10-10 18:07