基于Authorware开发程序的全屏显示问题研究

2017-03-17 09:21黄秀常
电脑知识与技术 2016年32期
关键词:分辨率函数

黄秀常

摘要:Authorware開发软件本身很难实现打包后作品的全屏演示问题。文章分析了作品不能全屏演示的主要原因,同时提出了实现作品全屏演示的两种不同处理方法。

关键词:Authorware;函数;分辨率

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)32-0197-01

Authorware是美国Macromedia公司出品的一个基于流程线和图标功能的,类似于搭积木性质的创作多媒体作品的工具。应该软件的使用简单、直观、易学而广泛应用于教学或其他多媒体创作领域。用Authorware软件制作完成多媒体作品后,需经打包或发布后,才能被不同用户所使用。但是作品经发布后运行,往往会出现多媒体程序的演示窗口不能完全覆盖显示器屏幕的问题。如多媒体作品创作时设置的窗口大小不等于电脑屏幕的分辨率,则作品运行时会出现作品窗口只占屏幕一部分,或部分作品内容被显示在屏幕之外的情况。如果依创作者电脑分辨率来设计多媒体作品大小,虽然能解决作品创作者全屏显示问题,但是多媒体作品不具备通用性,不能被更多的用户使用。

1 影响多媒体作品全屏显示的原因

多媒体作品创作时设置的窗口大小和电脑显示器分辨率大小不一致,是导致多媒体作品无法全屏显示的主要原因。电脑内部在显示器上产生的一个小亮点通常被称为一个像素点,大量的不同颜色和亮度的像素点在显示器上就能组成人们所看到的画面。在同样大小的屏幕区域内,显示器上像素点的多少直接决定了画面的精细程度。像素点越多,画面越精细,反之画面越粗糙。单位长度上的像素点个数称为分辨率。不同的电脑显示器,分辨率的大小不完全相同。当多媒体作品的分辨率小于电脑显示器的分辨率的时候,多媒体作品的运行窗口就不能充满整个显示器屏幕,当多媒体作品的分辨率大于电脑显示器分辨率时,作品部分内容就不能在显示器上显示出来。只有当多媒体作品的分辨率同显示器分辨率完全相同时,作品的内容才能在显示器屏幕上全屏显示。

因此有人提出,可以通过改变用户计算机的分辨率,使其与多媒体作品分辨率一致,以达到全屏显示的目的。此方法固然可用,但是不太容易被广大用户所接受。客户的文化层次不一,有的用户甚至连操作电脑都有困难,何谈设置电脑屏幕分辨率。另外,在创作多媒体作品时,点击Authorware软件的菜单“修改”——“文件”——“属性”,在打开的属性对话框中,选择大小为“使用全屏”方式,当选择这种设置时,系统会自动调整作品窗口的大小,使作品全屏显示。但这并不是真正意义上的全屏显示,因为作品演示窗口中的内容并不会按比例进行放大和缩小,严重影响了作品的整体视觉效果。

2 解决多媒体作品全屏显示的有效方法

在Authorware中,函数通常是指能够实现某种制定功能的程序语句段。函数分为系统函数和自定义函数(或称外部函数)两种,Authorware允许加载外部函数到当前程序中使用。外部函数通常由第三方软件公司开发提供。

2.1 使用Cover函数实现全屏显示

利用cover.u32函数可以很好地解决全屏显示问题,而且使用比较简单。

cover.u32中包含两个控制屏幕显示的函数,即Cover()和Uncover(),它们两个往往是组成一对一起使用。cover.u32函数可以实现使多媒体作品窗口之外的显示区域黑屏的功能。如作品的分辨率大小设置为800×600像素的窗口,如果在1024×768显示器分辨率下演示时,则800×600像素的窗口之外的屏幕显示为黑色。具体使用方法为在打开源程序的情况下,先导入cover.u32函数,然后再源程序的流程线上的第一个位置添加一个计算图标,写入Cover()函数,目的是使窗口大小之外的屏幕实现黑屏。在退出程序的计算图标中的quit()函数之前写入函数Uncover(),目的是解除屏幕的黑屏功能。多媒体作品发布时一并提供cover.u32函数即可。

2.2 使用Altools.u32函数实现全屏显示

Altools.u32函数具有修改屏幕分辨率和隐藏任务栏的功能。Altools.u32函数的本质是在多媒体程序运行之初,修改用户电脑分辨率,使其与多媒体作品中的分辨率一致,并隐藏操作系统的任务栏,等作品运行结束在退出作品之前,又将用户电脑分辨率恢复为原始分辨率,同时将隐藏的任务栏恢复显示。Altools.u32函数由AlChangeRes函数、AlHideTaskBar函数和AlShowTaskBar函数三个函数组成。其功能依次为改变屏幕分辨率、隐藏任务栏、显示任务栏。AlChangeRes函数的基本格式为AlChangeRes(Width,Height,bitpp),括号内的三个参数依次为显示器分辨率的宽度、高度和显示器颜色深度。具体使用方法如下:

1)在多媒体作品流程线上,首先拖入一个计算图标,在此图标中,输入以下语句:

UserScreenWidth=ScreenWidth--------将用户原显示器宽度保存起来

UserScreenHeight=ScreenHeight-------将用户原显示器高度保存起来UserScreenDepth=ScreenDepth---------将用户原显示器的颜色深度保存起来AlHideTaskBar()---------------------------隐藏用户显示器任务栏

AlChangeRes(1024,768,32)-------------改变屏幕分辨率,此处分辨率由设计者根据作品大小自定

ResizeWindow(1024,768)---------------调整窗口大小,此处分辨率必须于上面语句中一致

2)程序结束退出程序之前,拖动一个计算图标到流程线上,并在此计算图标中输入以下语句:

AlShowTaskBar()--------将原先隐藏的用户显示器任务栏显示出来AlChangeRes(userScreenWith,userScreenHeight,userScreenDepth)-------恢复用户原先的屏幕分辨率,此分辨率在之前的计算图标中已保存

Quit()-----------------------关闭多媒体作品

保存并运行多媒体程序,发现程序窗口已全屏播放。以上两个计算图标的功能就是自动实现了将用户显示器分辨率修改为作品设置的分辨率,并在退出程序时,又能自动改回到用户原先的分辨率。

以上两种方法虽然都实现了真正意义上的全屏显示,但是其本质却截然不同,多媒体作品开发者需根据作品实际情况,做出合理的选择。

参考文献:

[1] 杨继萍,马晓玉. Authorware多媒体制作标准教程[M]. 清华大学出版社,2013(5).

[2] 谢康宁, 谢百治. Authorware中实现对数据库的操作[J]. 第四军医大学学报,2002(s1) .

[3] 马郁. Authorware编程语言在教学课件制作中的应用[J]. 河南职工医学院学报,2009(3).

猜你喜欢
分辨率函数
二次函数
二次函数
函数备考精讲
基于递归残差网络的图像超分辨率重建
EM算法的参数分辨率
原生VS最大那些混淆视听的“分辨率”概念
基于深度特征学习的图像超分辨率重建
一种改进的基于边缘加强超分辨率算法
头跟踪式多用户全分辨率自由立体显示器