国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

添加聰明角色 讓網頁動起來

2019-11-17 04:39:26
字體:
來源:轉載
供稿:網友
  當你打開Microsoft Word后,畫面上就會出現一個Office 助手,看著孫悟空不但會不停地變換角色,而且還會根據情況,出現相應的提示信息(如圖1)。并且都始終顯示在最上面,比起菜單、按鈕、提示框等大家非常熟悉的人機交互界面來說,不但界面簡潔明了,而且交互性更強,更具人性化,這就是Agent角色互動。添加聰明角色 讓網頁動起來


  假如你的軟件或者主頁上也采用角色互動卡通畫來顯示幫助信息,也許會更具吸引力和競爭力。動心了吧,別著急,跟我來看個究竟。

  這種角色互動卡通畫是由Microsoft Agent軟件制作而成,它可以扮演向導、娛樂節目主持人、助手、送信人等角色。它具有簡潔的操作界面、更具人性化的交互功能和簡便統一的編程方法。

  Agent現在已發展到2.0版,作為一種應用程序服務器,主要是提供一種易于理解和使用的操作界面,接受用戶指令、代替用戶完成某些繁雜工作,或者為用戶提供幫助。它具有其他工具所無法比擬的優點:

  1. 采用基于COM的ActivX控件方式,因此它可以很輕易加入到應用程序中,改善用戶操作界面。

  2. Agent動畫角色具有生動、有趣的動作。其本身是一個“AlwaysOnTop”窗口,只顯示角色動畫本身,隱藏窗口背景,視覺效果更好。

  3. 結合了語音功能,角色動畫不僅能說話,而且還會根據用戶發出的聲音指令加以識別和執行。

  所需組件的安裝

  要發揮Agent角色動畫的作用,必須安裝相應的組件,但是假如你的系統是windows 2000/XP的話,就可以不用安裝下面的組件,系統已經預裝了;假如沒有安裝,可以到微軟網站下載安裝程序(http://www.microsoft.com/PRodUCts/msagent/downloads.htm),然后自解壓執行安裝。

  1. Agent服務器程序(AgentSVR.EXE):運行于Windows平臺,為其他調用Agent服務的客戶程序提供服務,是Agent的核心組件(C:/WINNT/MSAgent/AgentSVR.EXE)。


進入討論組討論。

  2. TTS引擎:TTS引擎將文本轉換為聲音并輸出到音頻設備中,Agent將根據該引擎輸出的聲音控制動畫的口型變化 (C:/PROGRAM FILES/ COMMON FILES/SPEECH ENGINES /MICROSOFT/TTS)。

  3. Agent角色數據文件:存儲有角色信息(提示信息框的格式、命令、圖片、聲音文件等);用戶也可以用角色編輯器(ACE.EXE)編輯自己的角色數據文件(C:/WINNT/MSAgent/ CHARS/MERLIN.ACS;C:/WINNT/ SRCHASST/CHARS/COURTNEY.ACS,/EARL.ACS,/ROVER.ACS)。

  4. 語音識別引擎(SPEECH ENGINE):處理用戶從音頻設備中傳入的語音命令,以進行語音輸入/輸出處理(控制面板→聲音、語音和音頻設備→語音)。

   Agen的基本屬性

  CHARacters:其類型為IAgentCHARACTEREX,取得角色句柄;

  CHARacter:CHARACTERS的一個屬性,通過CHARACTERID取得角色句柄;


  CHARacterid:代表特定的角色動畫,如MERLIN、GINIE、ROVER等Windows 2000、Office2000以及以上版本所提供的四種角色動畫,其擴展名為.ACS或者.ACG;

  Show:控制角色動畫的顯示,參數Speed為整形變量,代表顯示的速度;

  Hide:隱藏動畫角色,參數CHARacterid,指定隱藏的對象;

  Moveto:移動動畫角色到指定位置,參數(X,Y)為指定的位置;

  Play:控制角色執行指定的動畫,參數Animation表示動畫名稱,存儲于角色數據文件里;

  Speak:通過TTS引擎和語音識別引擎讀指定文本,目前不支持中文。參數為指定的文本內容,同時可以在文本中通過加標記TAG控制文本閱讀時的語氣、強調字符串、停頓時間、閱讀的速度;語氣標記‘/CHR=WHISFER(NORMAL/MONOTONE’,強調字符串‘/EMP/強調字符’,停頓時間’/PAU=停頓時間(以毫秒為單位)/’,閱讀速度’/SPD=速度/’,另外還有其它是一種標記,可以找Microsoft網站查找,每一分離的字符串都用雙引號加以表示;

  Languageid:指定語言種類,整形變量,0X409代表美式英語,0X804代表中文。

   角色動畫實例

  預備工作已經完成,現在我們就立即來著手在應用成程序中做一個角色動畫效果(注:本文為了便于演示,應用程序僅包括一個窗口,編程工具采用VFP7.0)。
進入討論組討論。

  1. 安裝Agent控件:選擇菜單工具“選項”,在ActiveX列表框中選擇Microsoft Aent Control 2.0,安裝在工具面板上。

  2. 新建一應用程序,僅需一個表單,如圖2。添加聰明角色 讓網頁動起來


  圖2 表單設計樣式

  3. 調用角色數據:

  載入動畫角色

  ThisForm.Olecontrol1.Characters.Load("merlin", "merlin.ACS")

  oChar = ThisForm.Olecontrol1.Characters("merlin")

  oChar.MoveTo(RAND()*600, RAND()*600)

  oChar.Show

  *將角色數據文件中的動畫名稱加入動畫文件列表框,有許多動畫在文件中不能找到,因此通過載入動畫名稱讓用戶選擇。

  For Each cAnimName in oChar.AnimationNames

  ThisForm.AnimNames.AddItem(cAnimName)

  ochar.play(canimname)*可能有的動畫循環播放,因此有的動畫可能無法顯示。

  EndFor

  開場介紹

  ochar.languageid=0x409

  oChar.Speak("Hello /emp/there!Hey, /pau=600/all you boys and girls.Greetings, and felicitations.")

  oChar.Speak("Welcome to DevCon, my friends.")
進入討論組討論。

  播放指定的角色動畫

  OChar.Play(ThisForm.lbxAnimNames.DisplayValue)

  閱讀指定文本

  oChar.languageid=0x409*指定語言種類,0X409代表美式英語

  oChar.Speak(ThisForm.txtSpeak.Value')

  由于TTS引擎不支持中文,因此假如要閱讀中文,可以按如下方法:

  將要閱讀的漢語文本通過錄音制作成WAV文件,如SNDFILE.WAV

  oChar.languageid=0x804;//指定語言種類,0X804代表中文

  oChar.speak(‘你好!’,’SNDFILE.WAV’);//SNDFILE.WAV及為制作的聲音文件

  停止循環播放的動畫

  oChar.Stop

  卸載動畫角色

  With ThisForm

   .Olecontrol1.Characters.Unload("merlin")

   .AnimNames.Clear

  Endwith

  加載閱讀文本,也可以直接輸入內容

  Cfile=Getfile()

  Nhandle=Fopen(Cfile)

  Hend=Fseek(Nhandle,0,2)

  If Hend<=0

  Messagebox("文件無法打開!",16,"提示窗口")

  Return

  Else


  =Fseek(Nhandle,0,0)

  Cstring=Fread(Nhandle,Hend)

  =Fclose(Nhandle)

  Endif

  Thisform.Txtspeak.Value=Cstring
進入討論組討論。

  綜合演示

  Ochar.Languageid=0x409

  With Ochar

   .Play("Greet")

   .Play("Restpose")

   .Speak("Hello!")

   .Play("Announce")

   .Speak("I Am Merlin.")

   .Play("Pleased")

   .Speak("It Is Nice To Meet You!")

   .Moveto(250,500)

   .Speak("Now,Here Is A Magic Trick.")

   .Play("Domagic1")

   .Play("Domagic2")

   .Play("Pleased")

   .Play("Restpose")

   .Speak("Thank You!")

   .Play("Wave")

   .Speak("Goodbye")

   .Play("Hide")

   Endwith

  關閉表單

  Thisform.Release


  綜合演示效果如圖3。添加聰明角色 讓網頁動起來進入討論組討論。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 英德市| 巨鹿县| 澄迈县| 沅陵县| 神池县| 玛多县| 平乡县| 镇康县| 乌鲁木齐县| 婺源县| 新河县| 禄劝| 鸡泽县| 通辽市| 合川市| 栾川县| 扬州市| 新疆| 灵川县| 神池县| 昭平县| 南澳县| 东乡族自治县| 山阴县| 民权县| 大姚县| 浏阳市| 灯塔市| 汽车| 尖扎县| 晴隆县| 宝清县| 莱阳市| 徐汇区| 宁河县| 普兰县| 三河市| 烟台市| 曲沃县| 海南省| 林甸县|