首先添加一個(gè)系統(tǒng)的語音COM組件的引用microsoft speech object library然后在程序中聲明一個(gè)語音類dim RC As SpeechLib.SpSharedRecoContext這個(gè)類有一些事件,如果你要處理它的一些事件,可以用withevent來聲明然后在窗體LOAD事件或你需要的地方先創(chuàng)建一個(gè)實(shí)例RC = New SpeechLib.SpSharedRecoContext當(dāng)一個(gè)RC被實(shí)例化后,系統(tǒng)就會(huì)運(yùn)行語音識(shí)別程序.前提是你的系統(tǒng)已經(jīng)正確安裝這個(gè)功能.一般默認(rèn)就已經(jīng)安裝好的.其次提醒一下,WIN7的語音識(shí)別比XP的好N倍.從閱讀到偵聽都好很多.然后就可以在你需要閱讀的地方使用RC.Voice.Speak("hello 我", 11)11那里是一些枚舉,用來標(biāo)識(shí)系統(tǒng)用前臺(tái)還是后臺(tái)或其他方式來閱讀文字,簡單的來說就是閱讀的時(shí)候不會(huì)卡住你的程序.你可以選其他的枚舉來試試作用.以上為閱讀部分.如果需要程序聽你說話,則需要聲明一個(gè)偵聽類dim RG As SpeechLib.ISpeechRecoGrammar在初始化時(shí)將之與上面的RC建立關(guān)系,此時(shí)則必須要用withevent來聲明上面的RC,因?yàn)樯婕半娔X聽到你的語音后,會(huì)觸發(fā)一個(gè)事件,并將聽到的內(nèi)容傳遞到該事件.其次,要讓系統(tǒng)聽到的解析為命令,就必須準(zhǔn)備一個(gè)XML結(jié)構(gòu)的文件來保存那些固定的命令.如果電腦在XML文件中找不到那些固定命令或同時(shí)不屬于系統(tǒng)命令,電腦將會(huì)將其解釋為聽寫.RG = RC.CreateGrammar '(0)
站在用戶的角度思考問題,與客戶深入溝通,找到庫車網(wǎng)站設(shè)計(jì)與庫車網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋庫車地區(qū)。
RG.CmdLoadFromFile("聽到.xml", SpeechLib.SpeechLoadOption.SLODynamic)
RG.CmdSetRuleIdState(0, SpeechLib.SpeechRuleState.SGDSActive)然后寫一個(gè)過程來處理聽到的事件Private Sub 聽到命令(ByVal StreamNumber As Integer, ByVal StreamPosition As Object, ByVal RecognitionType As SpeechLib.SpeechRecognitionType, ByVal 話語 As SpeechLib.ISpeechRecoResult) Handles RC.Recognition RC.Voice.Speak("我聽到了" 話語.PhraseInfo.GetText, 11)End Sub以上為偵聽部分.下面列一個(gè)XML的例文?xml version="1.0" encoding="gb2312"?
GRAMMAR LANGID="804"
RULE NAME="命令" TOPLEVEL="ACTIVE"
L
P打開播放器
P上我的QQ
P關(guān)閉你自己 /L
/RULE
/GRAMMAR要讓系統(tǒng)正確地偵聽到你說的話,前提你必須運(yùn)行語音識(shí)別程序并讓其激活到"正在聆聽"狀態(tài).并且你必須有一個(gè)能正常使用的話筒而且保證話筒已經(jīng)打開.(廢話-_-|||)以上就是用VB.NET語音識(shí)別的最基本的一些操作.希望對你有幫助.更深入的內(nèi)容有興趣的話可以和我一起研究.
中一個(gè)最顯著的新功能在vb.net是有能力創(chuàng)造線程在您的申請。 Visual C + +開發(fā)已能寫的多線程代碼多年,但達(dá)到同樣的效果在VB6的是困難重重。
雖然這次演習(xí)使用vb.net的程式碼,所以沒有理由你不能得到相同的結(jié)果,使用C # 。
什么是線程?
第一個(gè)問題我們需要的答案是“什么是線程” ?那么,簡而言之,一個(gè)線程是想運(yùn)行兩個(gè)程序在同一進(jìn)程中。每一件軟件您的書面因此,到目前為止,至少包含一個(gè)線程-主要應(yīng)用程序線程。
對于經(jīng)驗(yàn)缺乏者,一個(gè)過程,是有效的一個(gè)實(shí)例正在運(yùn)行的程序在您的計(jì)算機(jī)上。說您正在運(yùn)行均Microsoft Word和Microsoft Excel 。雙方Word和Excel都運(yùn)行在一個(gè)單獨(dú)的進(jìn)程,孤立對方的經(jīng)驗(yàn)。與Windows 2000 ,也有收集的其他程序在后臺(tái)運(yùn)行,提供的東西一樣,支持USB ,網(wǎng)絡(luò)連接,等等。這些都是所謂的“服務(wù)” ,和每一個(gè)那些運(yùn)行在其自己的服務(wù)。
一個(gè)典型的例子多線程使用的是Microsoft Word的拼寫檢查。一個(gè)線程(主應(yīng)用程序線程)讓您輸入文字到您的文件,另一個(gè)線程運(yùn)行,不斷和手表什么您輸入的同時(shí),檢查錯(cuò)誤,因?yàn)槟闳ズ推H醯膯栴}與拼寫。
原因是使用線程很簡單-它提高的表現(xiàn),您的申請,或者更確切地說,它改善了用戶體驗(yàn)。現(xiàn)代計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)做很多事情,一次,并使用我們的Microsoft Word的例子再次,與時(shí)俱進(jìn),與無論您打字并不困難。事實(shí)上,在Word中有很多的備件加工能力,因?yàn)樗梢怨ぷ鳎购芏啻危俣缺饶慊蛭铱梢枣I入。通過引入線程可以做其他的東西在背景中, Word可以利用的備用容量,在您的電腦,并讓您的用戶體驗(yàn),多一點(diǎn)愉快。
另一個(gè)例子是Internet Explorer 。每當(dāng)IE瀏覽器,以獲得資源,如網(wǎng)頁或圖片,從互聯(lián)網(wǎng)上,它這樣做是在一個(gè)單獨(dú)的線程。的結(jié)果,這是您不須等候,即得到一整頁之前,它會(huì)顯示該網(wǎng)頁給你。例如,它可以下載的HTML彌補(bǔ)的文本網(wǎng)頁,在一擊中,使用主要的應(yīng)用程序線程,以顯示你是什么,迄今已和那么它可以啟動(dòng)多個(gè)線程自動(dòng)消失,并下載每個(gè)形象的參照在該網(wǎng)頁上。您仍然可以滾動(dòng)向上和向下的網(wǎng)頁,盡管事實(shí)上它仍然忙碌獲得其余的數(shù)據(jù)。
兄弟你可以用session["current"] = langgue ;來保存你的多語言的狀態(tài),頁面載入的時(shí)候讀sesion,;“中文”和“英文”切換的時(shí)候也讀一下,多語言存放在res資源文件中就可以
Dim wz As New StreamReader(wjm) 'wz文字 這一句改一下: Dim wz As New StreamReader(wjm,System.Text.Encoding.GetEncoding("gb2312")) 'wz文字
使用gb2312編碼即可:
Dim fs As IO.FileStream
Dim r As IO.BinaryReader
fs = New IO.FileStream("C:\temp.txt",IO.FileMode.OpenOrCreate)
r = New IO.BinaryReader(fs)
TextBox1.Text = System.Text.Encoding.GetEncoding("gb2312").GetString(r.ReadBytes(fs.Length), 0, fs.Length)
Interop.SpeechLib.dll 引用后,朗讀不限制
Me.Cursor = Cursors.WaitCursor
Dim oVoice As New SpeechLib.SpVoice
Dim cpFileStream As New SpeechLib.SpFileStream
oVoice.Voice = oVoice.GetVoices.Item(cmbVoices.SelectedIndex)
oVoice.Volume = trVolume.Value
oVoice.Speak(txtSpeach.Text, SpeechLib.SpeechVoiceSpeakFlags.SVSFDefault)
oVoice = Nothing
Me.Cursor = Cursors.Arrow
文章標(biāo)題:vb.net中英文混讀的簡單介紹
當(dāng)前地址:http://m.kartarina.com/article38/hjgipp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、軟件開發(fā)、企業(yè)網(wǎng)站制作、自適應(yīng)網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)