乙個簡單的網頁讀字串 SpeechLib

2022-04-29 19:15:09 字數 1540 閱讀 6110

//引用元件:interop.speechlib.dll

//匯入空間:speechlib

//引用元件:interop.speechlib.dll

//匯入空間:speechlib

前面設定內容引用別人部落格

voice = new spvoice();

speechvoicespeakflags.svsfdefault); //同步朗讀

speechvoicespeakflags.svsflagsasync); //非同步朗讀

= voice.getvoices(string.empty, string.empty).item(0);//設定中文語音

= voice.getvoices(string.empty, string.empty).item(1);設定英文語音

//錯誤修改:vs2010中 錯誤無法嵌入互操作型別「speechlib.spvoiceclass」。請改用適用的介面

//解決方案:選中專案中引入的dll,滑鼠右鍵,選擇屬性,把「嵌入互操作型別」設定為false。

//異常來自 hresult:0x8004503異常資訊。一般是由windows audio服務沒有開啟造成的,尤其是win2003預設不開windows audio服務。

//1)請確認windows audio(audiosrv)服務啟動。

//進入cmd 輸入net start audiosrv

//2)音效卡驅動安裝成功。"

功能強大之處在於tts能識別xml標記,通過給文字加上xml標記,我們讓tts朗讀出更加符合語言閱讀習慣的句子。例如:

用於設定文字朗讀的音量;

、 分別用於設定文字朗讀的絕對速度和相對速度;

、 分別用於設定文字朗讀的絕對語調和相對語調;

在他們之間的句子被視為強調;

可以將單詞逐個字母的拼寫出來;

表示停止發聲,並保持500微秒;

02/03/07 可以按要求朗讀出日期

用於設定朗讀所用的語言,其中409表示使用英語,804表示使用漢語,而411表示日語。

後台:

1

public actionresult speak(string

speechsounds)210

11if (spvoice.volume > 9)12

15 spvoice.speak("

" + speechsounds + "告警"

, spflags);

16return content("成功"

);17 }

view code

前端:

1

function a() ,

9success: function (msg)

1213 })

view code

在乙個長字串中刪除乙個短字串

輸入兩個字串,從第一字串中刪除第二個字串中所有的字元。例如,輸入 they are students.和 aeiou 則刪除之後的第乙個字串變成 thy r stdnts.這裡注意 從乙個字串中刪除字串的時候,如果是通過刪除乙個字串就移動後面所有的字元,就非常複雜了。通過hash表記錄第二個字串 現...

字串補0的乙個簡單方法

字串補0是常見的需求,比如日期不足2位補0,數字精度不足補0等,需求是給乙個數字和乙個小數精度返回乙個帶有特定精度的數字字串 字串補0操作可以考慮切割字串操作,參考 substr 方法 先看乙個日期補0的方法 function padstart str padstart 2 02 padstart ...

乙個單詞是否為其他字串的字串

題目 假定有乙個方法issubstring,可檢查乙個單詞是否為其他字串的字串。給定兩個字串s1和s2,請編寫 檢查s2是否為s1旋轉而成,要求只能呼叫一次issubstring。比如,waterbottle是erbottlewat旋轉後的字串。解答 另x wat,y erbottle 則s1 xy...