2022年BMP文件的读取与显示 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年BMP文件的读取与显示 .pdf》由会员分享,可在线阅读,更多相关《2022年BMP文件的读取与显示 .pdf(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、- 0 - 辽 宁 科 技 大 学新技术专题报告设计题目:BMP 文件的读取与显示学院、系:专业班级:学生姓名:指导教师:成绩:2011 年 7 月 8 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 21 页 - - - - - - - - - I 摘要图像技术在计算机中得到了广泛应用,进而产生了各种各样的图像格式,例如最常用的是 Windows下的位图文件( BMP )格式。 BMP( 全称 Bitmap) 是 Window操作系统中的标准图像文件格式,可以分成两类
2、:设备相关位图(DDB) 和设备无关位图( DIB) ,使用非常广。它采用位映射存储格式, 除了图像深度可选以外, 不采用其他任何压缩, 因此,BMP 文件所占用的空间很大。 BMP 文件的图像深度可选lbit、4bit 、8bit及 24bit 。BMP文件存储数据时,图像的扫描方式是按从左到右、从下到上的顺序。由于 BMP文件格式是 Windows环境中交换与图有关的数据的一种标准,因此在 Windows环境中运行的图形图像软件都支持BMP 图像格式。关键词:BMP ;位图;读写;显示;图像媒体名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -
3、 - - - - 名师精心整理 - - - - - - - 第 2 页,共 21 页 - - - - - - - - - II 目录1 绪 论 . - 1 -1.1 设计背景 . - 1 - 1.2 设计目的 . - 1 - 1.3 设计意义 . - 1 - 1.4 开发工具简介 . - 2 - 2 需求分析 . - 3 -2.1 系统处理信息分析 . - 3 - 2.2 处理功能分析 . - 5 - 3 总体设计 . - 6 -3.1 系统功能模块层次图 . - 6 - 3.2 功能简介 . - 6 - 3.3 主要功能的流程图 . - 6 - 4 详细设计与实现 . - 7 -4.1 建立
4、单文档工程 . - 7 - 4.2 添加成员函数和成员变量. - 8 - 4.3 重新定义 ONFILEOPEN函数 . - 13- 4.4 修改 ONDRAW函数. - 14- 5 测试 . - 15 -结论 . - 16 -致谢 . - 17 -参考文献 . - 18 -名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 21 页 - - - - - - - - - - 1 - 1 绪 论1.1 设计背景随着计算机技术的不断发展,计算机软、硬件都发生了质的飞跃,计算机操作
5、系统从最初支持单一的DOS 模式,发展到今天支持多媒体的图形视窗模式。用户在高性能CPU 的支持下,在计算机上可以拥有超级的多媒体视听感受。利用计算机的多媒体设备与应用软件的支持,用户可以实现诸如图像浏览, 如图片、CD、电影、幻灯等。作为多媒体的一个重要类型,图像无处不在。在Windows XP 系统中有许多图像文件,为了查看图像文件的内容,Windows XP 系统提供了 Windows 图片和传真查看器( Picture Fax Viewer) 。此外, Windows 系统还提供了画图( Paint) ,实现简单图像的编辑。计算的图像可以有多种存储格式,通常以其文件名后缀进行区分,常见
6、的图像格式有 BMP、JPG、GIF、PNG、WMF 和 PCX 等。1.2 设计目的这次课程设计是要完成一个BMP 图像处理软件,其中包括对文件的读取保存、修改和显示。读取文件中的图片:可以对文件中的图片进行读取,在修改后也可以保存修改后的文件,并在文档中显示图片。1.3 设计意义对编程知识有了更进一步的了解,使我更加熟练掌握了编程技巧,明白了一些函数是如何定义调用的,知道了一些头文件的功能,还有一些嵌套功能,怎么样调试及运行程序,这次编程使我收益匪浅,能运用了MFC 来编程,也对 BMP 文件的读入及打开有了更深的了解。名师资料总结 - - -精品资料欢迎下载 - - - - - - -
7、- - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 21 页 - - - - - - - - - - 2 - 1.4 开发工具简介Visual C+ 6.0,简称 VC 或者 VC6.0,是微软推出的一款C+编译器,将 “ 高级语言” 翻译为 “ 机器语言(低级语言) ” 的程序。 Visual C+是一个功能强大的可视化软件开发工具。自 1993 年 Microsoft 公司推出 Visual C+1.0 后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Vis
8、ual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000、Windows XP 和 Windows NT4.0。所以实际中,更多的是以Visual C+6.0 为平台。Visual C+ 6.0 它不仅是一个 C+ 编译器,而且是一个基于Windows 操作系统的可视化集成开发环境( integrated development environment ,IDE) 。Visual C+6.0 由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导 Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐
9、的开发环境。Microsoft的主力软件产品。Visual C+是一个功能强大的可视化软件开发工具。自1993 年Microsoft 公司推出 Visual C+1.0 后,随着其新版本的不断问世, Visual C+已成为专业程序员进行软件开发的首选工具。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 21 页 - - - - - - - - - - 3 - 2 需求分析分析系统要处理的信息,对信息要求哪些处理功能2.1 系统处理信息分析BMP 文件的读取与显示系统需要
10、处理对文件的格式的辨别、对文件的组成和结构进行分析等方面,具体包括对以下五个方面进行处理:一、BMP 文件组成BMP 文件由文件头、 位图信息头、颜色信息和图形数据四部分组成, 如表 2-1 所示。文件头 BITMAPFILEHEADER 位图信息BITMAPINFO 位图信息头BITMAPINFOHEADER 颜色信息表位图像素数据表 2-1 BMP 文件结构二、BMP 文件头 (14 字节) BMP 文件头数据结构含有BMP 文件的类型、文件大小和位图起始位置等信息。其结构定义如下 : typedef struct tagBITMAPFILEHEADER WORD bfType; / 位图
11、文件的类型,必须为BM(0-1 字节) DWORD bfSize; / 位图文件的大小,以字节为单位(2-5 字节) WORD bfReserved1; / 位图文件保留字,必须为0(6-7 字节) WORD bfReserved2; / 位图文件保留字,必须为0(8-9 字节) DWORD bfOffBits; / 位图数据的起始位置,以相对于位图(10-13 字节) / 文件头的偏移量表示,以字节为单位 BITMAPFILEHEADER; 三、位图信息头 (40 字节) BMP 位图信息头数据用于说明位图的尺寸等信息。名师资料总结 - - -精品资料欢迎下载 - - - - - - - -
12、 - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 21 页 - - - - - - - - - - 4 - typedef struct tagBITMAPINFOHEADER DWORD biSize; / 本结构所占用字节数 (14-17 字节) LONG biWidth; / 位图的宽度,以像素为单位(18-21 字节) LONG biHeight; / 位图的高度,以像素为单位(22-25 字节) WORD biPlanes; / 目标设备的级别,必须为1(26-27 字节) WORD biBitCount;/ 每个像素所需的位数,必须
13、是1(双色),(28-29 字节) / 4(16 色),8(256 色)或 24(真彩色 )之一DWORD biCompression; / 位图压缩类型,必须是0(不压缩 ),(30-33 字节) / 1(BI_RLE8 压缩类型 )或 2(BI_RLE4 压缩类型 )之一DWORD biSizeImage; / 位图的大小,以字节为单位(34-37 字节 ) LONG biXPelsPerMeter; / 位图水平分辨率,每米像素数(38-41 字节) LONG biYPelsPerMeter; / 位图垂直分辨率,每米像素数(42-45 字节) DWORD biClrUsed;/ 位图实
14、际使用的颜色表中的颜色数(46-49 字节) DWORD biClrImportant;/ 位图显示过程中重要的颜色数(50-53 字节) BITMAPINFOHEADER; 四、颜色表颜色表用于说明位图中的颜色,它有若干个表项,每一个表项是一个RGBQUAD类型的结构,定义一种颜色。RGBQUAD 结构的定义如下 : typedef struct tagRGBQUAD BYTE rgbBlue;/ 蓝色的亮度 (值范围为 0-255) BYTE rgbGreen; / 绿色的亮度 (值范围为 0-255) BYTE rgbRed; / 红色的亮度 (值范围为 0-255) BYTE rgbR
15、eserved;/ 保留,必须为 0 RGBQUAD; 颜色表中 RGBQUAD 结构数据的个数有biBitCount 来确定 : 当 biBitCount=1,4,8 时,分别有 2,16,256个表项 ; 当 biBitCount=24 时,没有颜色表项。位图信息头和颜色表组成位图信息,BITMAPINFO 结构定义如下 : typedef struct tagBITMAPINFO 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 21 页 - - - - - - -
16、- - - 5 - BITMAPINFOHEADER bmiHeader; / 位图信息头RGBQUAD bmiColors1; / 颜色表 BITMAPINFO; 五、位图数据位图数据记录了位图的每一个像素值, 记录顺序是在扫描行内是从左到右,扫描行之间是从下到上。位图的一个像素值所占的字节数: 当 biBitCount=1 时,8 个像素占 1 个字节 ; 当 biBitCount=4 时,2 个像素占 1 个字节 ; 当 biBitCount=8 时,1 个像素占 1 个字节 ; 当 biBitCount=24 时,1 个像素占 3 个字节 ; Windows规定一个扫描行所占的字节数必
17、须是4的倍数 (即以 long为单位 ),不足的以0 填充, biSizeImage = (bi.biWidth * bi.biBitCount) + 31) & 31) / 8) * bi.biHeight; 2.2 处理功能分析系统的处理功能主要包括在指定的设备环境上显示指定的位图、从指定的位图文件中读取位图信息及数据并显示在客户区上、将客户区显示的图像保存到指定的位图文件中、保存位图文件等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 21 页 - - - - -
18、 - - - - - 6 - 3 总体设计3.1 系统功能模块层次图BMP 文件的读取与显示系统功能模块层次图,如图3-1 所示。图 3-1 系统功能模块层次图3.2 功能简介利用本软件主要实现对BMP 文件的读取与显示功能,其中包括从任意路径选择并打开一个 BMP 位图文件,并实现对该 BMP 位图文件的显示和保存功能, 关闭此文件后可以实现对其他 BMP 文件的打开、显示和保存功能。3.3 主要功能的流程图BMP 文件的读取与显示系统主要功能流程图如图3-2 所示。图 3-2 系统主要功能流程图用户BMP 文件读取工具BMP 位图信息打开文件显示工具打开位图文件保存位图文件显示位图文件打开
19、另一位图文件关闭位图文件名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 21 页 - - - - - - - - - - 7 - 4 详细设计与实现4.1 建立单文档工程用 VC+ 向导建立一个单文档工程,名称为Openimagefile,具体创建步骤如下:1、选择 File-New 菜单命令,打开“新建”对话框。2、在“工程”选项卡中,选择MFC AppWizard(exe)工程类型,并设置工程名为Openimagefile,单击 OK 按钮,打开 MFC 应用程序向导
20、,如图4-1 所示。图 4-1 建立 Openimagefile 工程3、选择 Single document,单击 Finish 按钮,再单击 OK 按钮,向导将自动创建单文档用户界面应用程序框架,如图4-2 所示。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 21 页 - - - - - - - - - - 8 - 图 4-2 选择 Single document 4.2 添加成员函数和成员变量1、在视图类 Openimagefile 添加两个成员变量,代码如下:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年BMP文件的读取与显示 2022 BMP 文件 读取 显示
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内