参考如上,下面贴代码
typedef struct {
int bpp, offset, hsz;
unsigned int mr, mg, mb, ma, all_a;
} stbi__bmp_data;
bpp = 24 像素深度 指存储每个像素所用的位数 要支持24位就是24
hsz是bmp图像文件的头部长度,win10画图工具保存的24bit的bmp文件头部信息是40字节。
修改函数 stbi__bmp_parse_header 位置 stb_image.h
if (info->bpp == 16 || info->bpp == 32) {
// code for bbp = 16 or 32
}else{
printf("bpp is no 16 or 32 , bpp = %d\n",info->bpp);
info->mr = 0xffu << 16;
info->mg = 0xffu << 8;
info->mb = 0xffu << 0;
info->ma = 0xffu << 0;
info->all_a = 0xff;
在这个if判断里添加新的else分支即可 数据试出来的存个档