DIB(Device-Independent Bitmap,即设备无关位图)小知识
简介
位图一共有两种类型,即:设备相关位图(DDB)和设备无关位图(DIB)。DDB位图在早期的Windows系统(Windows 3.0以前)中是很普遍的,事实上它也是唯一的。然而,随着显示器制造技术的进步,以及显示设备的多样化,DDB位图的一些固有的问题开始浮现出来了,象BitBlt()这种函数就是基于DDB位图的。比如,它不能够存储(或者说获取)创建这张图片的原始设备的分辩率,这样,应用程序就不能快速的判断客户机的显示设备是否适合显示这张图片。为了解决这一难题,微软创建了DIB位图格式。
BMP文件是Windows保存图像的一种通用文件格式,在数字图像处理方面占有重要的地位。BMP文件中保存的图像数据是一种DIB(Device-Independent Bitmap,即设备无关位图),DIB是标准的Windows位图格式,它自带颜色信息,因此调色板管理非常容易。
BMP文件的结构
DIB位图包含下列的颜色和尺寸信息:
* 原始设备(即创建图片的设备)的颜色格式。
* 原始设备的分辩率。
* 原始设备的调色板
* 一个位数组,由红、绿、蓝(RGB)三个值代表一个像素。
* 一个数组压缩标志,用于表明数据的压缩方案(如果需要的话)。
以上这些信息保存在BITMAPINFO结构中,该结构由BITMAPINFOHEADER结构和两个或更多个RGBQUAD结构所组成。BITMAPINFOHEADER结构所包含的成员表明了图像的尺寸、原始设备的颜色格式、以及数据压缩方案等信息。RGBQUAD结构标识了像素所用到的颜色数据。
位图文件的组成 |
结构名称 |
符号 |
位图文件头(bitmap-file header) |
BITMAPFILEHEADER |
bmfh |
位图信息头(bitmap-information header) |
BITMAPINFOHEADER |
bmih |
彩色表(color table) |
RGBQUAD |
aColors[] |
图象数据阵列字节 |
BYTE |
aBitmapBits[] |
位图文件形式化结构
|
偏移量 |
域的名称 |
大小 |
内容 |
图象文件 头 |
0000h |
最后
以上就是淡然黄蜂最近收集整理的关于DIB(Device-Independent Bitmap,即设备无关位图)小知识BITMAPFILEHEADER的全部内容,更多相关DIB(Device-Independent内容请搜索靠谱客的其他文章。
发表评论 取消回复