轉載請寫明出處
目前限於IE,博主在寫了兼容語句的jsp上應用可以在360瀏覽器上播放
1.下載、並安裝插件:微軟TTS5.1語音引擎(中文)
2.設置:安裝好後,打開IE瀏覽器的Internet選項的安全中,點開自定義級別,打開各個站點,將“ActiveX控件和插件”下的所有欄目設爲啓用。
3.簡單應用的話,直接在前端頁面寫個按鈕,js的按鈕事件中創建對象:
// 創建Sapi SpVoice對象
var voiceObj = new ActiveXObject("Sapi.SpVoice");
屬性:
//設置說話語速 語音朗讀速度,取值範圍爲-10到+10。數值越大,速度越快
voiceObj.Rate=?;
//設置說話音量 取值範圍爲0到100。數值越大,音量越大。
voiceObj.Volume=?;
//表示發音類型,相當於進行朗讀的人,我們可以通過安裝相應的語音引擎來增加相應的語音。
voiceObj.Voice=?;
方法:
//朗讀,將文本信息轉換爲語音並按照指定的參數進行朗讀,該方法有Text和Flags兩個參數,分別指定要朗讀的文本和朗讀方式(同步或異步等)。
voiceObj.Speak("開始",1);
// 獲取系統中的語音,用於指定SpVoice的Voice屬性。
voiceObj.GetVoices();
//暫停朗讀,可暫停使用該對象的所有朗讀進程。該方法沒有參數。
voiceObj.Pause();
//恢復朗讀,可恢復該對象所對應的被暫停的朗讀進程。該方法沒有參數。
voiceObj.Resume();
//停止朗讀,第一個參數設爲空,第二個參數設爲2
voiceObj.Speak("", 2);
//可以換女聲哦
voiceObj.Voice=voiceObj.GetVoices('','').Item(2);
//設定音頻輸出,從下拉列表框中選擇
voiceObj.AudioOutput = voiceObj.GetAudioOutputs().Item(i);
4.具體實現代碼如下:
<html>
<head>
<title>滾動信息 - 51windows.net</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
</style>
<script type="text/javascript">
function listen1(){
var voiceObj = new ActiveXObject("Sapi.SpVoice");
//朗讀
voiceObj.Speak("開始",1);
}
function listen2(){
var voiceObj = new ActiveXObject("Sapi.SpVoice");
//語速
voiceObj.Rate=-1;
//音量
voiceObj.Volume=60;
//換女聲
voiceObj.Voice=voiceObj.GetVoices('','').Item(2);
var text=document.getElementById("p1").innerHTML;
//朗讀
voiceObj.Speak(text,1);
}
</script>
</head>
<body>
<input type="button" value="點擊播放" οnclick="listen1();">
<input type="button" value="點擊播放2" οnclick="listen2();">
<p id="p1">啦啦啦啦啦啦啦</p>
</body>
</html>