摘要:介紹了Authorware中如何對數(shù)字化電影進(jìn)行播放、停止、暫停、快進(jìn)、后退等操作加以控制的兩種方法。利用按鈕,實(shí)現(xiàn)對數(shù)字電影動態(tài)播放控制,大大增強(qiáng)了對數(shù)字電影動畫 控制的方便性,提高了交互性,以實(shí)例制作方式詳細(xì)介紹了這種方法的實(shí)現(xiàn)過程。
關(guān)鍵詞:數(shù)字電影、播放控制、Active X控件、Authorware
中圖分類號:TP311文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2008)16-21294-02
The Digital Film is in the Authorware of Application
WAN Bo
(Jiangxi Tourism Commerce College,Nanchang 330100,China)
Abstract: This paper introduces in Authorware how the digital films play,stop,pause,fast forward and other operational.Utilizing button to achieve dynamic player control of the digital films,greatly strengthen the convenience of controlling the digital animation and increase interactivity.In th way of making an example of the two methods in detail of the process.
Key words: Digital Films; play and control; Active X; Authorware
1 引言
Authorware是Macromedia公司開發(fā)的功能強(qiáng)大的多媒體創(chuàng)作工具,它將聲音、文字、圖像、動畫和數(shù)字視頻等多種媒體信息集成在一起,從而生成豐富多彩的多媒體作品。數(shù)字電影作為一種動畫的形式,在豐富程序的感染力、表現(xiàn)力的同時,還能將動態(tài)的變化逼真地展示出來,促使使用者建立良好的感知信息。如何將數(shù)字電影進(jìn)行有效地控制如進(jìn)行播放、停止、暫停、快進(jìn)、快退加以控制,文中將對數(shù)字電影的控制制作進(jìn)行探討。
2 使用函數(shù)和變量控制
利用“計(jì)算”圖標(biāo)定義變量、調(diào)用函數(shù)對數(shù)字電影進(jìn)行控制。步驟如下:
(1)調(diào)整運(yùn)行時窗口的大小命名為“窗口”。在流程線上放置一個“運(yùn)算”圖標(biāo),輸入:
Resizewindow(600,450)
(2)在流程線上放置一個“運(yùn)算”圖標(biāo),命名為“初值”,輸入:
sf:=1
ef:=1
movierate:=24
對程序中的變量進(jìn)行初始化;
(3)在流程線上拖入一個“電影”圖標(biāo),命名為“電影”。在屬性欄中導(dǎo)入影音文件,以外部文件格式存在,所以[mode]選項(xiàng)不可選,單擊[計(jì)時]標(biāo)簽,在[執(zhí)行]中選擇[同時]選項(xiàng),在[速率]中輸入變量[movierate],用來控制播放速度;在[開始]中輸入變量[sf],用來控制電影播放起始幀的變量取初值;在[結(jié)束幀]中輸入變量[ef],用來控制電影播放結(jié)束幀的變量取初值。
(4)在流程線上拖入一個[交互]圖標(biāo),命名為“控制”,依次拖放六個[群組]圖標(biāo)到交互圖標(biāo)的右下側(cè),分別命名為“播放”、“暫停”、“繼續(xù)”、“快進(jìn)”、“后退”、“結(jié)束”、“退出”,響應(yīng)類型為\"按鈕\"響應(yīng),并依次調(diào)整好各按鈕的位置;
(5)為各群組圖標(biāo)定義運(yùn)算編輯內(nèi)容,選擇“播放”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)開始播放。movierate:=24
ef:=MediaLength@\"電影\"
GoTo(IconID@\"電影\")
(6)選擇“暫停”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)從當(dāng)前位置暫停播放。
Media Pause(IconID@\"電影\",1)
(7)選擇“繼續(xù)”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)從當(dāng)前位置繼續(xù)播放。
Media Pause(IconID@\"電影\",0)
(8)選擇“前進(jìn)”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)從當(dāng)前位置向后快進(jìn)。
Media Seek(IconID@\"電影\",Mediaposition@\"電影\"+100)
(9)選擇“后退”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)從當(dāng)前位置向前快退。
Media Seek(IconID@\"電影movie\",Mediaposition@\"電影\"-100)
(10)選擇“退出”圖標(biāo),按下Ctrl+=鍵,在“退出”計(jì)算圖標(biāo)中輸入如下內(nèi)容,實(shí)現(xiàn)退出關(guān)閉窗口。
Quit ()
(11)最后在“退出”交互按鈕的Response中Branch中選擇Exit Interaction,以退出交互選項(xiàng)。
程序流程圖如圖1。
3 用Active X控件控制
3.1 Active X控件
ActiveX技術(shù)是Microsoft公司為了適應(yīng)網(wǎng)絡(luò)的高速發(fā)展把它的OLE技術(shù)和OCX技術(shù)融為一體并加以改進(jìn)形成聯(lián)合標(biāo)準(zhǔn),改進(jìn)之后賦予新名字ActiveX。也就是說,ActiveX技術(shù)是一種共享程序數(shù)據(jù)和功能的技術(shù)。
ActiveX指的是一組包括控件、DLL和ActiveX文檔的組件,它通常以動態(tài)鏈接庫的形式存在,其設(shè)計(jì)思想是將一個程序(比如數(shù)字電影、Flash動畫)嵌入到另一個程序中(這個程序通常被稱做容器,比如Authorware、Delphi、VB、Internet Explorer等)。借助這種技術(shù)使得用戶在一個程序中所創(chuàng)建的信息可以被集成到其它程序所產(chǎn)生的文檔中,這樣就可使它可以隨意地應(yīng)用到各種場合。
ActiveX控件必須具備如下的性能機(jī)制:1.屬性和方法:ActiveX控件必須提供屬性的名稱、方法的名稱及參數(shù),通過這項(xiàng)機(jī)制,容器可以存取和改變ActiveX控件的屬性參數(shù)。2.事件:ActiveX控件由這項(xiàng)機(jī)制通知容器在ActiveX控件中發(fā)生的事件,比如屬性參數(shù)的改變,用戶按下鼠標(biāo)左鍵等。ActiveX的優(yōu)勢在于它的動態(tài)可交互性,用戶可以動態(tài)地在使用過程中,通過改變它的屬性和參數(shù),在應(yīng)用程序中實(shí)現(xiàn)自己的特殊要求。
3.2 使用Active X控件來搭建程序
可以直接在Authorware 中使用現(xiàn)有的Active X控件來搭建程序,[Active Movie Control]控件便支持?jǐn)?shù)字化電影的控制功能,具體做法如下:
(1)調(diào)整運(yùn)行時窗口的大小命名為“窗口”。在流程線上放置一個[運(yùn)算]圖標(biāo),輸入\"Resizewindow(600,450)\";
(2)在流程線上插入Active X控件。選擇菜單[Insert]中的[Control]的[Active X]選項(xiàng),如下圖所示彈出[ActiveX control]對話框;在Cntrol Description中選擇“MS TV視頻控制”;
(3)在[SelectActive X Control]中找到[Active Movie Control]選項(xiàng),單擊[OK]選中該控件,彈出[ActiveX Control Properties]對話框,看到控件的項(xiàng)屬性,先不管它們,單擊[OK]按鈕,此時流程圖上出現(xiàn)圖標(biāo),將其命名為\"電影\";
(4)在流程線上設(shè)置一個名為的[設(shè)置]運(yùn)算圖標(biāo)用來設(shè)置文件地址和屬性;輸入內(nèi)容:
SetSpriteProperty(@\"電影\",#Filename,F(xiàn)ileLocation^\"D://movie.avi\")
CallSprite(@\"電影\",#stop)
SetSpriteProperty(@\"電影\",#currentposition,0)
checked@\"播放/停止\":=flase
(5)在流程線上拖入一個[交互]圖標(biāo),命名為“控制”,依次拖放六個[群組]圖標(biāo)到交互圖標(biāo)的右下側(cè),分別命名為“播放”、“暫停”、“全屏”、“快進(jìn)”、“后退”、“結(jié)束”、“退出”,響應(yīng)類型為\"按鈕\"響應(yīng),并依次調(diào)整好各按鈕的位置;
(6)為各群組圖標(biāo)定義運(yùn)算編輯內(nèi)容,選擇“播放”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)開始播放。
CallSprite(@\"電影\",#play)
(7)為各群組圖標(biāo)定義運(yùn)算編輯內(nèi)容,選擇“暫停”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)暫停播放。
CallSprite(@\"電影\",#pause)
(8)為各群組圖標(biāo)定義運(yùn)算編輯內(nèi)容,選擇“全屏”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)全屏播放。
SetSpriteProperty(@\"電影\",#displaysize,3)
(9)為各群組圖標(biāo)定義運(yùn)算編輯內(nèi)容,選擇“前進(jìn)”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)向后快進(jìn)。
dPosition:= dPosition+50
SetSpriteProperty(@\"電影\",#currentposition,GetSpriteProperty(@\"電影\",#currentposition)+dposition
CallSprite(@\"電影\",#play)
(10)為各群組圖標(biāo)定義運(yùn)算編輯內(nèi)容,選擇“后退”圖標(biāo),按下Ctrl+=鍵,輸入內(nèi)容實(shí)現(xiàn)向前快退。
dPosition:= dPosition-50
SetSpriteProperty(@\"電影\",#currentposition,GetSpriteProperty(@\"電影\",#currentposition)+dposition
CallSprite(@\"電影\",#play)
(11)選擇“退出”圖標(biāo),按下Ctrl+=鍵,在“退出”計(jì)算圖標(biāo)中輸入如下內(nèi)容,實(shí)現(xiàn)退出關(guān)閉窗口。
Quit ()
在Authorware中插入[Active Movie Control]控件實(shí)現(xiàn)數(shù)字電影的控制效果制作完成,其流程圖如圖2所示。
4 結(jié)束語
在Authorware中,利用按鈕的方法實(shí)現(xiàn)對數(shù)字電影的播放控制,能夠?yàn)橛脩籼峁┬枰臄?shù)字電影的控制操作,從而能夠操高對數(shù)字電影的方便性,大大方便了人機(jī)交互。
參考文獻(xiàn):
[1] 譚浩強(qiáng).Authorware多媒體制作技術(shù)[M].中國鐵道出版社,2006.
[2] 袁海東.Authorware 615教程[M].北京:電子工業(yè)出版社,2002.
[3] 馬玉樺.Authorware設(shè)計(jì)控制Flash動畫[J].教育論壇,2004(23):84-85.
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。