采用位图

 采用位图
1.有很多不同的位图文件格式,但是建议用BMP,其他格式工作原理相通,所以你知道了处理一种文件格式,另外一种除了获得文件头信息,从磁盘上读一些字节之外没有什么不同。

2.装载BMP文件
(1).BMP文件包含三个部分
位图头文件:它存放着图象的一般信息,存放在Win32的结构BITMAPFILEHEADER中。
位图信息段:包括两部分数据结构,即BITMAPFILEHEADER部分和调色板信息部分。

3.图象数据区:它是一个以字节为单位的,描述1、4、8、16或24位图象像素的数据流。
数据是逐行排列的,但是有时候会颠倒过来,数据的第一行是图象的最后一行。

4.Win32 API 的调图函数。运行LoadImage():
从磁盘读.bmp文件时的参数设置:
hinst--这是事件句柄,设为NULL
lpszName--磁盘上.BMP文件名。给它一个以NULL结尾的标准.BMP文件。如ANDER.BMP、C:/INAGES/SHIP.BMP等等
uType--这是调用文件的类型。设为IMAGE_BITMAP.
cxDesired,cyDesired--它们描述位图的高度和宽度。如果他们不是0,函数会自动缩放图形填充。因此如果你知道图象的尺寸,就按已知尺寸设置。否则就设为0,等以后读出图象的大小
fuLoad--控制标志。设为(LR_LOADFROMFILE|LR|CREATEDIBSECTION)。它引导LoadImage()用已知名字lpszName从磁盘上读数据。但不将位图数据传送给当前显示设备

5.如何读取一个8位位图的步骤
a.创建一个放置位图所有信息的结构体
b.在函数中,建立一个文件句柄和OFSTRUCT文件数据信息对象
c.用OpenFile()函数获取文件句柄
d.用_lread获取位图文件的头
e.判断读出的是否位图文件,不是的话用_lclose关闭该文件
f.用_lread获取位图文件的信息头
g.如果是8位,则用_lread来获取文件的调色板,同时将红与蓝换位
h.最后用获取图象数据
i.关闭文件
j.反转图片

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值