在内存里如何保存bitmap

本文探讨了在内存中如何保存位图(Bitmap)数据,包括颜色、字节操作、结构体的应用,以及在Windows环境下处理Bitmap结构的具体细节。
摘要由CSDN通过智能技术生成

BMP文件组成

BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成。

BMP文件头:

结构定义如下:

typedef structtagBITMAPFILEHEADER

{

  WORD   bfType;      // 位图文件的类型,必须为BM

  DWORD  bfSize;       // 位图文件的大小,以字节为单位

  WORD   bfReserved1;   // 位图文件保留字,必须为0

  WORD   bfReserved2;     // 位图文件保留字,必须为0

  DWORD  bfOffBits;    / /位图数据的起始位置,以相对于位图
// 文件头的偏移量表示,以字节为单位

}BITMAPFILEHEADER, *PBITMAPFILEHEADER;

 

BMP位图信息头:

结构定义如下:

typedef struct tagBITMAPINFOHEADER{

  DWORD  biSize;    //本结构所占用字节数

  LONG   biWidth;  //位图的宽度,以像素为单位

  LONG   biHeight; // 位图的高度,以像素为单位

  WORD   biPlanes;  // 目标设备的级别,必须为1

  WORD   biBitCount; 每个像素所需的位数,必须是1(双色),
// 4(16色),8(256色)或24(真彩色)之一

  DWORD  biCompression; // 位图压缩类型,必须是 0(不压缩),
// 1(BI_RLE8压缩类型)或2(BI_RLE4压缩类型)之一

  DWORD  biSizeImage; // 位图的大小,以字节为单位

  LONG   biXPelsPerMeter; // 位图水平分辨率,每米像素数

  LONG   biYPelsPerMeter; // 位图垂直分辨率,每米像素数

  DWORD  biClrUsed; // 位图实际使用的颜色表中的颜色数

  DWORD  biClrImportant; // 位图显示过程中重要的颜色数

} BITMAPINFOHEADER, *PBITMAPINFOHEADER;

 
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值