下载此文档

图标文件的数据结构之研究.doc


文档分类:IT计算机 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍
图标文件的数据结构之研究.doc图标文件的数据结构之研究这几天因为编写一个图标编辑程序,研究了一下图标的数据结构,颇冇一些心得,写出来与各位兄弟共享。(笔者注:以下所说的图标均为调色板模式的图标,真彩图标会特别注明)一、 。如果该图标是屏蔽背景色的话,那么,第一个位图是由黑色背景(相关的颜色位全为0)与彩***标图案纽成的,该位图将与当询屏幕显示通过异或操作(XOR)结合起来,故称其为XOR位图;第二个位图是由白色背景(相关的颜色位全为1)与黑***标图案(相关的颜色位全为0)组成的,该位图将与当前屏幕显示通过与操作(AND)结合起来,故称其为AND位图。因此,图标的显示是通过两个步骤完成的:当询屏幕显示与AND位图通过AND操作结合起来;当前屏幕显示与XOR位图通过XOR操作结合起来。人家知道,1与任何数值AND操作的结果将维持原数值,而0与任何数值AND操作的结果则是0,因此在步骤1中,AND位图中的白色(1)与屏幕显示经过AND操作后被原色彩屏蔽,而黑色(0)则将原色彩屏蔽。步骤1结束灰,屏幕上将留下一个黑色的图标图案。在随后的步骤2中,由于0与任何数值异或的结來都将是原数值,因此,XOR位图与屏幕显示经过异或操作后,位图和屏幕中的黑色部分都将被各门对应的彩色部分屏蔽。步骤2结束灰,一个形状不规则的图标图案就出现在屏幕上了,这就是图标显示的原理。二、 图标的图形图标的图形,实际上就是位图格式的图片,是一个标准的位图格式。Windows只要从BMP信息头中获取信息就足够了,它据以解样在其厉出现的数据应该如何处理。如來是调色板模式,•其后的数据包含冇调色板和像素点颜色索引,如果是真彩色,其后的数据直接就是像素点的RGB颜色值。而位图文件是由文件头、BMP信息头、调色板、数据区(乂称位图点阵)等儿个部分组成的。知道了这个悄况,我们可以简单-地把上而叙述的图标图形结构理解为位图信息。这样,我们就冇可能根本不盂要真的去画一幅图,而只需要对关键数据进行程序填充就可以了,所编写的代码,直接按图标格式的要求,可把一个只要尺寸不大于255x255像素的任意位图,封装成标准格式的图标(真实的位图宽高尺寸保持不变,所以可以做出最大255x255的图标来)。三、图标的数据结构图标文件的数据结构可分为6部分,其数据结构如F:顺号名称 长度(单位:字节)说明1文件头 62图象信息块16有多少个图像,则信息块也有多少个3BMP信息头404XOR位图调色板16色二64,256色=1024真彩图标从此开始像素点的RGB值5XOR位图 以调色板的索引值形式存放6AND位图说明:上表中的3-6部分合称图像数据块,其中5、6部分又合称为图像数据区(也称位图点阵)不论何种规格的图标,其1-3部分的字节长度是固定的。请注意第2部分的图象信息块的说明,“如果有多少个图像”是什么意思呢?原来,在一个图标文件中,有可能存放儿个图像(windows图标最多可有8个图像),但每个图像都有口己的调色板、XOR位图和AND位图,且它们的图像大小也可能不相同。以16色有3个图像为例,其数据结构如F:文件头6图象1的图象信息块16图象2的图象信息块16图象3的图象信息块16图彖1的图象数据块不定其中BMP信息头和调色板固定为40和64字节6图象2的图象数据块不定同上7图彖3的图象数据块不定同上卜15以内含1个图像、16色、16x16规格的图标为例详述(偏移量扌舌号前为10进制,典型值(16进制)号内为16进制):偏移量字节数描述(一、文件头6字节)000(000)2保留的字节0000002(002)2资源类型0100(01为图标,02为光标)004(004)2图象个数0100(二、图像信息块16字节)006(006)1图标宽度10007(007)1图标高度10008(008)1颜色计数10(02=单色,00>256色)009(009)1未用00010(00A)4 保留的 00000000014(00E)4 图象数据块的长度28010000(10进制=296)018(012)4图彖数据块相对于文件头部的偏移量16000000(10进制=22)(三、BMP信息头40字节)022(016)4BMP信息头结构长度28000000(40进制=40)026(01A)4图像宽度**********(01E)4图像高度(XOR图高度+AND图高度)20000000034(022)2位面板数0100036(024)2每象素所占位数0400|038(026)4象素数据的压缩类型00000000(表示未压缩)042(02A)4图象数据的长度C0000000(10进制=192)(四、XOR位图的调色板64字节)062(03E)1蓝色分量063(03F)1绿色分量064(040)1红

图标文件的数据结构之研究 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人pppccc8
  • 文件大小76 KB
  • 时间2019-12-15