BMP文件调色(C语言)

        本文讲的书单元色调色处理及BMP文件调色板与数据的关系。

BMP文件开头有固定格式其文件大小是由:文件信息头(14字节),位图信息头(40字节),调色板,位图数据四部分组成。前两者是固定格式,后两者数据是由前两者的信息确定的,这些网上一搜一大堆不在说明。本文用的是C语言自带的<windi.h>下的BITMAPFILEHEADER、BITMAPINFOHEADER、RGBQUAD,位图数据使用char型数组来存储。

        例一、先读取一个bmp文件,读取文件信息如下 

位图文件头:
文件类型:19778
文件大小:166
保留字:0
保留字:0
实际位图数据的偏移字节数:62
位图信息头:
结构体的长度:40
位图宽:23
位图高:26
biPlanes平面数:1
biBitCount采用颜色位数:1
压缩方式:0
biSizeImage实际位图数据占用的字节数:104
X方向分辨率:0
Y方向分辨率:0
使用的颜色数:0
重要颜色数:0
(0  ,0  ,0  ,0  )(255,255,255,0  )

有图片信息知道该图片的biBitCount=1即一位表示一个像素,一个字节表示8个像素,调色板的个数为2个,第一个代表全黑,第二个代表全白,当像素为0时用第一个调色板,像素为1时用第二个调色板,然后根据数据值给其上色。

再看其数据蓝色部分,BMP文件数据是从左到右,从上到下读取。

当你读取第一个字节第一位是0,那么就会调用调色板0给其上色即黑色,第二位是0也调用调色板0给其上

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值