转载请写明出处
目前限于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="点击播放" onclick="listen1();">
<input type="button" value="点击播放2" onclick="listen2();">
<p id="p1">啦啦啦啦啦啦啦</p>
</body>
</html>