原始视频或动画没有字幕,.在将它们引入到authorware中以后,如何简单、快速地给它们增加一个同步性好的字幕呢?本文介绍一个设置永久性移动图标,使用系统变量mediaposition,控制移动图标的移动目标位置,从而实现动画和文字严格同步的程序控制方法。
图1为主程序段。前面三个显示图标是对同步字幕的一些定义,.包括背景挡板、文字框和文字等。
图1 同步字幕的程序流程
数字电影图标“tom edison”属性设置“timing”区的【concurrency】域,设置为“concurrent”同步运动方式,即动画播放一启动便进入下面的移动图标,实现动画和文字移动同时进行的程序效果。
移动图标“move text”的移动类型是“path to point”,属性设置“motion”区【concurrency】的同步方式是“perpetual”,这一点很重要,有了它才能保证让文字产生连续的移动效果。
再看“layout”区,这是程序的核心部分,.如图2所示。
图2 “move text”图标“layout”区设置
对象“text string”定义起点刻度【base】域为0,.终点刻度【end】域为medialength@“tom edison"(动画“tom edison”的总帧数)沿路径方向的移动。定义的方法是:鼠标在【base】域中单击,输入数字0,拖动使文字对象的起始端显示在文本框的中间位置;鼠标在【end】域中单击,输入表达式“medialength@”tomedison,拖动使文字对象的最末端显示在文本框的中间位置。移动的当前目标位置【destination】域为mediaposition@“tomedison”(该系统变量返回动画“tom edison”播放的当前帧数)。这种设置情况下,程序的执行顺序是:启动数字电影图标“tom edison”后,马上启动移动图标“move text”,然后程序继续向下执行(退出当前模块),由于数字电影图标“tom edison”的播放同步方式是“concurrent”,动画继续播放,而移动图标“move text”的同步方式是“perpetual”永久方式,从而保证了移动能不停地在【destination】域中表达式所指定的位置持续移动,实现了动画播放到哪儿,字幕播放到哪儿。动画播放结束,字幕也同时走到最末位置。
由于movielength和moveposition两个系统函数只与图标名称有关,而与图标内容无关,可以保证不增删流程中的图标,只是重新置入动画,修改与之对应的文字信息,就可以实现其它同步字幕的控制了。
新闻热点
疑难解答