c_cpp RGB像素保存BMP图片

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp RGB像素保存BMP图片相关的知识,希望对你有一定的参考价值。

void savebmp(char *name,HI_U8 *buffer,int w,int h) {
    FILE *f=fopen(name,"wb");
    if(!f) {
        printf("Error writing image to disk.\n");
        return;
    }
    unsigned int size=w*h*3+54;
    HI_U8 header[54]={'B','M',size&255,(size>>8)&255,(size>>16)&255,size>>24,0,
                      0,0,0,54,0,0,0,40,0,0,0,w&255,w>>8,0,0,h&255,h>>8,0,0,1,0,24,0,0,0,0,0,0,
                      0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
    fwrite(header,1,54,f);
    fwrite(buffer,1,w*h*3,f);
    fclose(f);
}

以上是关于c_cpp RGB像素保存BMP图片的主要内容,如果未能解决你的问题,请参考以下文章

C语言实现RGB888转BMP格式图片功能

16位bmp文件中RGB555转RGB565算法

从 bmp 文件中读取 RGB 像素

关于bmp图片格式背后的原理

如何用c语言printf输出bmp图片的像素信息。

BMP文件格式,RGB之间格式转换 碰到坑,MARK