Multimedia Builder 可以幫你制作互動式的多媒體程序和光盤的 Autorun 瀏覽畫面,一般人也可以用它來制作屬于你自己的紀念光盤,甚至是 CD 播放程序、MP3 播放程序或是可放在桌面上的 Toolbar 快捷條都不是問題。Multimedia Builder 具有 WYSIWYG (所見即所得) 和物件導向的特性,并且支持絕大多數的多媒體文件格式,加上內建多種影像處理效果,你將發(fā)現原來制作一個漂亮的互動式多媒體程序也可以變得這么簡單容易. Mediachance公司出品的Multimedia Builder MP3(以下簡稱為MMB)是個五星級的多媒體制作軟件,在較早的版本中功能是十分有限的,要它制作大的多媒體項目是有點困難的,但現在MMB可以制作相當復雜的多媒體作品,絲毫不遜色其它大牌公司出品的多媒體制作工具。
下載地址: http://www.dbank.com/download.action?t=40&k=OTEwMTMzNg==&pcode=LCwzNzM4NTgsMzczODU4&rnd=4423
介紹一:在Multimedia Builder中制作滾動圖像
近來想把自己下載的一些常用工具整理刻錄一張光盤,以備經常安裝系統(tǒng)之需(Windows系統(tǒng)的健康周期大家是有目共睹的),就想到了用Multimedia Builder (以下簡稱MMB)去制作一個光盤自動播放程序。也曾經考慮過使用Director,畢竟它的功能更強大。但考慮刻錄光盤在光驅中的識別過程本來就要比普通光盤慢一些,再加上Director打包后的文件運行的反應速度實在是讓人著急(即便是一個很小的文件)。
設計自動播放程序主要考慮可以從中直接安裝光盤上的各種軟件。當然界面上要有一個可以上下滾動的軟件列表,畢竟軟件稍微多一點一屏顯示不下。我沒有考慮使用字符列表方式,但是圖像的窗口滾動在MMB中又沒有專門的對象去支持它,曾經考慮過制作一個Html頁面,然后使用它的捆綁對象捆綁瀏覽器來實現,后來考慮這樣不方便在軟件列表中加入運行安裝程序的功能。大家都知道在IE中點擊一個可執(zhí)行文鏈接,需要經過幾步審查確認才能打開運行,所以只好采用傳統(tǒng)的多媒體制作中的素材堆積法加上MMB的腳本語言來實現,簡單說明如下,也算作給大家在使用MMB腳本制作的一個參考練習。
一、實現方法
當然首先要制作一幅軟件列表圖像(既然是圖像就可以自由發(fā)揮你的創(chuàng)意)。圖像很長沒關系,但要保證列表的每行每行高度間隔相等,這樣才方便腳本的計算。要實現圖像在一個類似矩形區(qū)域內滾動,可以在矩形區(qū)域的上下兩側各貼上一幅窗口背景的圖形,并把它置于軟件列表圖像的上方,示意圖如下:
調整MMB窗口中的對象前后順序可以使用下面的一組工具按鈕:
當然你還要制作用于上下滾動按鈕的圖像(我的上下滾動按鈕是上下蒙板上的那個長條區(qū)域,在PS中單獨剪出來作為位圖按鈕的),這些都制作好并在MMB中擺放好位置后,就要考慮圖像的滾動了。
二、滾動腳本
首先要確定一個用來定位列表圖像Y軸坐標的變量值 menu_y。方法是配合鍵盤方向鍵精確移動圖像是它的上沿與虛擬窗口(上蒙板的下沿)對齊。點擊 按鈕打開一個叫做“四維窗口”的面板記下它的XY坐標值:
從“頁面”—“屬性”打開頁面屬性對話框,在腳本處點擊加入下面一行,為menu_y指定初始值:
menu_y = 146
在開始制作滾動之前還需要知道列表圖像兩行的間隔(像素值),我的數值是42。還有一個數值就是當列表圖像的下沿剛剛顯示出來(也就是和下蒙版的上沿對齊)時,四維窗口顯示的Y軸數值(有可能是一個很大的負數),可以向上移動圖像直接查看結果,也可以計算得出:menu_y初始值 – 圖像高度 + 虛擬窗口高度。我的制作中這個值 = -469
好了,現在雙擊向下滾動按鈕,在腳本事件的鼠標按下腳本中輸入:
if (menu_y> -694) then
menu_y=menu_y-42
MoveTo("menu","232,menu_y,14")
end
腳本中加入判斷的目的是當滾動到圖像下限后不再繼續(xù)向上滾動,MoveTo命令格式可以參考我的相關文檔。
同樣向上滾動按鈕的腳本是:
if (menu_y< 146) then
menu_y=menu_y+42
MoveTo("menu","232,menu_y,14")
end
現在使用F5測試一下頁面應該能正確滾動了。
三、滾動多行
所謂滾動多行只是出于我們的列表太長時的一種方便措施,如果軟件列表不是很長的話,它就不是必需的。滾動多行要另外自制一組上下滾動按鈕,以向下連續(xù)滾動 5行為例,腳本可以這樣編寫(腳本中的的變量可以參考文章的上半部分):
if (menu_y> -694) then
menu_y=menu_y-210
if (menu_y<-694) then
menu_y=-694
end
MoveTo("menu","232,menu_y,30")
end
第二行定義菜單 menu_y 值上移 5行(42*5);之所以在腳本內部又嵌套一個條件判斷,是因為在第一個條件滿足的情況下連續(xù)滾動 5行仍然有可能出現超出邊界。同理,向上連續(xù)滾動的腳本應該是:
if (menu_y< 146) then
menu_y=menu_y+210
if (menu_y>146) then
menu_y=146
end
MoveTo("menu","232,menu_y,30")
end
四、滾動狀態(tài)指示
所謂滾動狀態(tài)指示就是類似于滾動條的一個指示器,可以使我們直觀地看到當前軟件列表圖像滾動的百分比。說到這里大家可能明白,這東西需要通過計算才能得出來。在我的制作中窗口的尺寸結構是如右圖這樣的:
首先我們可以計算出滾動圖像的坐標變化值:
146 - ( -694 ) = 840
那么就可以算出它和小窗口的滾動比例值,因為滾動指示是在小窗口反映出來的。比值為:
264 / 840 約為 0.314
那么,一個可以在小窗口中反映出滾動圖像比例的Y坐標值就可以計算出來:
145 + (滾動圖像當前Y值-146) x 比值
我們就是通過這個值來實現滾動狀態(tài)的顯示。具體方法是在 MMB 中使用矩形工具在滾動圖像右側繪制一個很小的矩形,然后在前面的每個滾動腳本中的menu_y 計算后加入以下兩行:
rool_y=(ABS(menu_y-146)*0.314)
MoveObject("rool","553,145,7,rool_y")
其中,第二行的"553,147"是指滾動指示器的左上角坐標,后面的 "7"是矩形的寬度值。下圖是滾動到不同位置的顯示結果:
制作到這里,你可能想是否可以像真正的滾動條一樣,通過鼠標拖動滾動條來控制圖像滾動,應該是可以的。但也應看到目前 MMB 提供的腳本語言功能還十分有限,要實現這個功能的話,單純通過腳本可能要費一番周折。不過你要是做出來別忘記來信告訴我。