bmp文件的存储结构
2007-07-19 11:25
330 查看
bmp文件的存储结构:|BITMAPFILEHEADER|
|BITMAPINFOHEADER|
|BITMAPCOREHEADER| |imagedata|
|
/ /
|RGBQUAD[0]..........RGBQUAD[BITMAPINFOHEADER.biClrUsed-1]|
其中BITMAPINFOHEADER.biClrUsed(颜色表的个数,颜色用RGBQUAD表示)由BITMAPINFOHEADER.biBitCount(一个像素包含的位数)确定,关系为:
BITMAPINFOHEADER head;
switch (head.biBitCount){
case 1:
head.biClrUsed = 2; break;
case 4:
head.biClrUsed = 16; break;
case 8:
head.biClrUsed = 256; break;
default:
head.biClrUsed = 0;
//////////////////////////////////////
函数
/////////////////////////////////////
CxImage.AlphaFlip(),CxImage.AlphaInvert(),CxImage.AlphaMirror()的区别:
假如:
a1.............an
b1.............bn
c1.,...........cn
CxImage.AlphaFlip()是将行对换,即:C行换到A行,B行换到B行...
CxImage.AlphaInvert()是将全部元素进行~运算(位的反值,即:~0001101=1110010)
CxImage.AlphaMirror()是将列对换.即:N列换到1列,N-1列换到1+1列......
|BITMAPINFOHEADER|
|BITMAPCOREHEADER| |imagedata|
|
/ /
|RGBQUAD[0]..........RGBQUAD[BITMAPINFOHEADER.biClrUsed-1]|
其中BITMAPINFOHEADER.biClrUsed(颜色表的个数,颜色用RGBQUAD表示)由BITMAPINFOHEADER.biBitCount(一个像素包含的位数)确定,关系为:
BITMAPINFOHEADER head;
switch (head.biBitCount){
case 1:
head.biClrUsed = 2; break;
case 4:
head.biClrUsed = 16; break;
case 8:
head.biClrUsed = 256; break;
default:
head.biClrUsed = 0;
//////////////////////////////////////
函数
/////////////////////////////////////
CxImage.AlphaFlip(),CxImage.AlphaInvert(),CxImage.AlphaMirror()的区别:
假如:
a1.............an
b1.............bn
c1.,...........cn
CxImage.AlphaFlip()是将行对换,即:C行换到A行,B行换到B行...
CxImage.AlphaInvert()是将全部元素进行~运算(位的反值,即:~0001101=1110010)
CxImage.AlphaMirror()是将列对换.即:N列换到1列,N-1列换到1+1列......
相关文章推荐
- 【转】BMP图像文件存储结构(1)
- 【转】BMP图像文件存储结构(2)
- Hadoop2.6.0学习笔记(九)文件的存储结构
- BMP文件结构(带图表)
- 【转】PNG图像文件存储结构(3)
- [转]BMP图像文件结构
- 浅析BMP位图文件结构(含Demo)
- 数字图像处理基础【一】——BMP文件结构,读写
- 枚举复合文件的存储结构
- BMP位图文件结构及平滑缩放
- Linux基础(二):文件系统、文件存储结构
- Linux文件存储结构,包括目录项、inode、数据块
- Innodb、MYISAM的文件存储结构
- BMP位图文件结构及平滑缩放
- BMP文件结构
- BMP文件结构解析
- BMP文件结构
- C#中将结构类型数据存储到二进制文件中方法
- BMP文件结构
- 一个应用二叉搜索树实现的字典,并存储结构于文件中 选择自 nickhuang2002 的 Blog