没有合适的资源?快使用搜索试试~ 我知道了~
VC BMP位图实验报告
需积分: 10 13 下载量 34 浏览量
2013-06-10
10:56:50
上传
评论 2
收藏 231KB DOC 举报
温馨提示
试读
16页
VC6.0下bmp位图的读取与显示 一、 实验目的: 1、 掌握windows BMP格式位图文件的基本格式。 2、 会使用VC++读取图像数据并显示。 二、实验内容: 1、 在VC6.0环境下,生成MFC应用程序框架。 2、 在已生成的应用程序中,加BMP位图读取与显示的代码,从已有文件中读取bmp格式文件并在视图中显示。
资源推荐
资源详情
资源评论
实验一、VC6.0 下 bmp 位图的读取与显示
一、 实验目的:
1、 掌握 windows BMP 格式位图文件的基本格式。
2、 会使用 VC++读取图像数据并显示。
二、实验内容:
1、 在 VC6.0 环境下,生成 MFC 应用程序框架。
2、 在已生成的应用程序中,加 BMP 位图读取与显示的代码,
从已有文件中读取 bmp 格式文件并在视图中显示。
三、实验原理及步骤:
基本知识:BMP 位图文件格式
BMP 位图文件中主要由 4 部分内容组成:
1、 文件头 BITMAPFILEHEADER 为一 STRUCTURE:
typedef struct tagBITMAPFILEHEADER {
WORD bfType;//文件类型,必须为“BM”或0x424d
DWORD bfSize;//文件大小
WORD bfReserved1;//保留
WORD bfReserved2;//保留
DWORD bfOffBits;//从文件头到实际位图数据的偏移
字节数
} BITMAPFILEHEADER, FAR *LPBITMAPFILEHEADER,
*PBITMAPFILEHEADER;
2、 位图信息头 BITMAPINFOHEADER,定义如下:
typedef struct tagBITMAPINFOHEADER{
DWORD biSize;//structure size
LONG biWidth;//image width
LONG biHeight;//image height
WORD biPlanes;//value is 1
WORD biBitCount;//color bits
DWORD biCompression;//compression or not
DWORD biSizeImage;//Image size=width*height( 其中
width必须为4的倍数。
LONG biXPelsPerMeter;//
LONG biYPelsPerMeter;
DWORD biClrUsed;//
DWORD biClrImportant;
} BITMAPINFOHEADER, FAR *LPBITMAPINFOHEADER,
*PBITMAPINFOHEADER;
3、 调色板
typedef struct tagRGBQUAD {
BYTE rgbBlue;
BYTE rgbGreen;
BYTE rgbRed;
BYTE rgbReserved;
} RGBQUAD;用于存放图像的颜色。
4、 图像的实际数据。对于 2 色图,用 1 位表示像素的值。
对于 16 色图,用 4 位表示像素的值。对于 256 色图,
一个字节刚好表示 1 个像素。对于用到调色板的位图,
图像数据就是该像素颜色在调色板中索引值,对于真
彩色,不用调色板,三个字节的数据分别代表图像的
B、G、R。
具体实验步骤
1、 生成一名为 zhangyunxiang 的基于 MFC 的应用程序框架:
选择 file 菜单 new 选项,在打开的窗口中选择 project 选
项,选中 MFC AppWizard(exe)。并在 project name 输入
zhangyunxiang ,选择存放 project 的位置。如下图所示。
选择 OK,进入下一步。选择 single document,如下图
最后 CzhangyunxiangView 类的基类中选择 CscrollView,使应用
程序视图具有滚动条。如下图
剩余15页未读,继续阅读
资源评论
ajiao3150
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功