简要说明了飞龙和锤神图形的显示原理,以满足嵌入式系统图形显示需要为目的,通过编程的方法实现图形的显示。关键词:图形:;文件图标1引言随着计算机技术的飞速发展.对嵌入式系统的整体显示要求也越来越高.系统的开机界面、管理设置界面等都用到图形用户界面。
由于嵌入式系统自身资源的限制,所以需要图形在满足功能要求的前提下其占用的存储空间要尽可能小,而图形恰能满足这样的特点。目前在嵌入式系统的图形用户界面设计中,以其开源、跨平台、功能强大、接丰富等特点日益受到广大开发用户的欢迎。2图形图形格式是系统中一种标准的、以码文本形式存储的图形格式这种图形格式可以用任何文本编辑器来创建或修改具有简单色彩的图形。更重要的它是语言代码的格式。可以直接编译到程序中。例如,一个普通文件图标的图形可以定义如下:。=。
141641。.桴000000。.。444.。群404000。
.。.,。
.。.。...。..。..舟...11。.群.。~∥.。...。..静。.。
一撑...。.。一。.。~。.。
一.。撑。."曼夥毛量201翟0技13巧与≤籼。桴撑捌蝌样。
:图形格式的内容由3部分构成.第一个部分是格式的说明,包含图形像素的列数(宽度)、图形像素的行数(高度)、图形的颜色数和每个像素的字符数,是以双引号括起、以空格分隔、以逗号结束的行;第二部分是自定义字符表示各种颜色:第三部分是用自定义字符构成的图形形状。2.1格式说明(1)图形像素的列数与行数由于图形主要用于显示一些少量色彩的图形或图标.因此其列数与行数一般不太大。如果应用于系统登录界面的显示图形,可以有几百个像素列或行,如果应用于系统的图标,则只要16到32个像素列或行即可。(2)图形的颜色数根据具体应用的复杂程度.可以设置几种到几百种颜色。需要注意的是这里的颜色数值要与随后定义的“字符颜色值”的数量一致天堂一区,否则不能正常显示图形。(3)每个像素的字符数这个数值表示用几个字符代表一个像素点.对于简单的图标设置为1即可.而复杂一点的图形可设置为2;当该值大于1时.代表颜色值的字符也要与之对应。但允许有少于该值的字符表示颜色;例如,该值设置为2时,要用两个字符表示颜色。也允许用一个字符表示。2.2定义图形颜色,如果每个像素的字符数为1,则使用1个字符表示颜色;字符可以是任何可打印字符。
其格式是:~字符颜色值”,”每行定义一种颜色,是关键字,群表示颜色值开始;图形的空白处定义为一字符”,”。颜色值用16进制表示.的取值分别为0~技术支持,艇肛表示白色、000000表示黑色.若取值相同表示单色、值不同则呈现不同的灰度等级.若取值不同表示彩色。可以通过调色板来查看某种颜色所对应的值,以修改到自己满意为止。2.3构成图形形状如果每个像素的字符数为1,则使用1个字符构成图形的像素点。一般复杂的彩色图形用手工创建或修改很麻烦且容易厘至画匦一-一,一-一-?-?一一?-一-一-?-,-?-出错。可以使用系统下的命令从.或.图形转换得到,但是对于定制个性化的图标(色彩少、图形简单)却可以通过手工创建;当然,也可以由.文件转换后进行修改。3下的应用是一个跨平台的++图形用户界面类库,它包含大量的可重用类和一些抽象类。是完全面向对象,有良好的可扩展性和稳定性。支持模块化编程。由于图形是语言代码的格式,所以在中使用非常方便。3.1界面图形显示在下用于显示图形的类有许多种,作为设计用户界面图形显示比较方便的是类,例如。用该类创建一个对象:.=(,“”);类可以显示和管理给图形做过标记的一个栅格或其他的二维布局13。
每个标记的图形通过类的构造函数在类的对象中提供一个项,任何时候都可以在类的对象中添加、删除或移动这个项。每个项都包含说明字符串、位图或图形(图标)和可选的排序关键字,在显示位图或图形的下网民都喜欢方可以显示说明字符串。?类的构造函数之一:(。,,):其中,第一个参数是父指针。即指向前面创建的.类的对象;第二个参数是说明字符串;第三个参数就是要显示的图形。如实现图界面的语句为:图1界面图形(,8(“欢迎登录系统”),::(“.”)):3.2图标图形显示在许多应用场合,需要用到图标。例如,系统中管理的各种类型文件、文件夹需要图标:菜单或工具栏上的快捷方式需要图标。
虽然系统中有多种图标可供选择,但如果大家设计的系统都是相同的图标未免乏味,所以定制个性化的图标是设计个性化系统的一个基础。
受限于篇幅,以下说明常用文件图标的设计与应用。
文件或文件夹图标通常用于列表框、下拉列表框、菜单、组合框等控件对象中。使用时可根据需要动态地加以添加或删除,添加一个图标就是在相应的控件对象中插入一个项,所以在下拉列表框中添加项的函数是:(,=一1):或(.,=一1:前一个语句的第一个参数是图形的地址.第二个参数是默认的序号;后一个语句多了图标的说明文本字符串参数。
不同的控件对象所用的函数名都是。但是所带的参数可能是不一样的。以下这段代码是在打开的文件中根据不同的文件属性显示对应的图标和文件或目录名,这里只判断是否为目录、是否为图2文件夹、符号链接文件和普通文件的图标显示符号链接文件和普通文件,根据需要还可以判断是否为可执行、是否为只读、是否可写、是否为隐藏等,执行效果如图2所示。(-0==。.。
-0==一《一)-,一矧争《)):《一)-.一0);-(.一伺争):以上代码中、都是自己定义的图形(定义的方法见格式小节介绍),它们是以数组的形式存在,所以在语句中不能加双引号。4结语主要对图形的格式、界面图形的显示和图(下转第71页)裟翰-一,一一-?一-一-?一?-一-?一-一一-一-一-?-一-?-一-?-?一-?-?-?一-?.0;表示初始化开始.=(.);殳置当前的,装载图片.0;表示初始化结束;)..(,-)丁开图片文件1.=('网络游戏公测文件卜。):,图片显示出来)2..(,-)使用蒙版=((。文件量。)):∥创建图片刷子.=;,殳置不透明蒙版3(.-)程序创建蒙版=(文件.。):.=;=;,创建蒙版画刷.=∥设置不透明蒙版,产生蒙版图片,把图片转换为256色的灰度图片=-0;图片像素格式转换类.0;,初始化开始.=;.=.8;臌定图片为256种颜色灰度格式.0;∥初始化结束,拷贝256色灰度图片像素点=.。.?:腰拷贝像素点的缓存区.(,.,0):,拷贝像素点到缓冲区《[255)255可以修改小一点,像素颜色大于该值时透明[=000;∥像素点不是最大值修改为0,否则改为最大值[=0;),仓建一个白色的为,其他为0的调色板(=(2);.(.(00,0,0,0));∥白色的为,透明.(.(0,0,0,)):黑色的为0,不透明=;创建调色板,仓0建指定大小和分辨率的像素集=..-,.,.,.,..,.);仓建一个蒙版,转换像素格式=-0;.0;.=;,设簧位图的源为256色的灰度图片.=.:,手旨定具有两种颜色的像素格式.=.:设置调色板.0;:)4(,-)灰复图片,不使用蒙版.=;6结语该程序使用2008开发,运行系修改像素颜色值统3、调试通过。(10=:.;++)(收稿日期:2010-04一01)?》,亡''完美,'-,一)),070'070,07070,070'亡'767007,》(上接第67页)标图形显示问题进行了讨论。受篇幅限制只给出了普通文件的图标图形,但根据原理设计出各种个性化的图标图形应该并不难。下设计的应用程序既可以运行于也可以通过具体平台的交叉编译在嵌入式系统中使用。参考文献范永开,等.应用开发技术详解.人民邮电出版社,20062孙纪坤,等.嵌入式系统开发技术详解.人民邮电出版社.2006.3.(收稿日期:2010-05.03)瀑缩器髹西下图形的设计与应用作者:张小进作者单位:刊名:电脑编程技巧与维护英文刊名:年,卷(期):2010(13)参考文献(3条玩家愉快)1.2.孙纪坤嵌入式系统开发技术详解20063.范永开应用开发技术详解2006。