1bpp单色BMP

时间:2011-10-31 21:42:30

标签: c++ bitmap bmp

我运行了一个演示bmp文件格式帮助程序“DDDemo.exe”,以帮助我可视化32x1像素bmp文件(单色)的格式。我对两个标题部分没关系,但似乎不理解颜色表和像素位部分。我制作了两个32x1像素bmp文件来帮助我比较(请参阅附件)。

one black then one white pixel etc

16 black pixels then 16 white pixels

有人可以帮我理解“像素位”与色彩图的关系吗?

更新:经过一些反复试验,我终于能够写出一个32x1像素的单色BMP。虽然它具有与附加图像不同的像素位,但此工具有助于标题和颜色映射概念。谢谢大家输入。

2 个答案:

答案 0 :(得分:3)

PIXEL BITS中的未设置位指的是第一个颜色表条目(0,0,0),黑色,而设置位指的是第二个颜色表条目(ff,ff,ff),白色。

“每像素1位(1bpp)格式支持2种不同的颜色(例如:黑白,或黄色和粉红色)。像素值存储在每个位中,第一个(最左侧)第一个字节的最高有效位中的像素。每个位是2种颜色表的索引。该颜色表是32bpp 8.8.8.0.8 RGBAX格式。未设置位将引用第一个颜色表条目,并且设置位将引用最后(第二)颜色表条目。“ - BMP file format

答案 1 :(得分:2)

这些图像的颜色表只是表示图像中有两种颜色:

  • 颜色0为(00, 00, 00) - 纯黑色
  • 颜色1为(FF, FF, FF) - 纯白色

显示的图像压缩方法(BI_RGB - 未压缩)对给定的像素数据和图像没有意义。