bmp文件解码.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
bmp文件解码

.bmp 文件解码 bmp 文件大体上分成四个部分 位图文件头 BITMAPFILEHEADER 位图信息头 BITMAPINFOHEADER 调色板 Palette 实际的位图数据 ImageDate 第一部分为位图文件头 BITMAPFILEHEADER ,是一个结构,其定义如下: typedef struct tagBITMAPFILEHEADER { WORD bfType; DWORD bfSize; WORD bfReserved1; WORD bfReserved2; DWORD bfOffBits; } BITMAPFILEHEADER; 这个结构的长度是固定的,为 14 个字节 (WORD为无符号 16 位整数, DWORD 为无符号 32 位整数),各个域的说明如下: 0 bfType 指定文件类型,必须是 0x424D,即字符串 “BM” 2 bfSize 指定文件大小,包括这 14 个字节。 6 bfReserved1,bfReserved2 为保留字,不用考虑 10 bfOffBits 为从文件头到实际的位图数据的偏移字节数,即图中前三个部分的长度 之和。 第二部分为位图信息头 BITMAPINFOHEADER ,也是一个结构,其定义如 下: typedef struct tagBITMAPINFOHEADER{ DWORD biSize; LONG biWidth; LONG biHeight; WORD biPlanes; .bmp 文件解码 WORD biBitCount DWORD biCompression; DWORD biSizeImage; LONG biXPelsPerMeter; LONG biYPelsPerMeter; DWORD biClrUsed; DWORD biClrImportant; } BITMAPINFOHEADER; 这个结构的长度是固定的,为 40 个字节 (LONG 为 32 位整数),各个域的 说明如下: 14 biSize 指定这个结构的长度,为 40。 18 biWidth 指定图象的宽度,单位是象素。 22 biHeight 指定图象的高度,单位是象素。 26 biPlanes 必须是 1,不用考虑。 28 biBitCount 指定表示颜色时要用到的位数,常用的值为 1(黑白二色图), 4(16 色 图), 8(256 色),16(16bit 高彩色), 24(24bit 真彩色),32(32bit 增强型 真彩色)。 30 biCompression 指定位图是否压缩,有效的值为BI_RGB,BI_RLE8,BI_RLE4, BI_BITFIELDS(都是一些 Windows 定义好的常量)。要说明的是,Windows 位 图可以采用RLE4,和 RLE8 的压缩格式,但用的不多。我们今后所讨论的只 有第一种不压缩的情况,即 biCompression 为 BI_RGB 的情况。 34 biSizeImage 指定实际的位图数据占用的字节数,其实也可以从以下的公式中计算出 来: biSizeImage=biWidth’ × biHeight 要注意的是:上述公式中的 biWidth’必须是 4 的整倍数(所以不是 biWidth,而是biWidth’,表示大于或等于 biWidth 的,最接近 4 的整倍 .bmp 文件解码 数。举个例子,如果 biWidth=240,则 biWidth’=240 ;如果 biWidth=241, biWidth’=244) 。 如果 biCompression 为 BI_RGB,则该项可能为零 38 biXPelsPerMeter 指定目标设备的水平分辨率,单位是每米的象素个数,关于分辨率的概 念,我们将在第 4 章详细介绍。 42 biYPelsPerMeter

文档评论(0)

l215322 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档