JS / HTML
发布于 2023-10-07
摘要 : JS实现将网页文字转换为语音并自动播放,如果浏览器没有语音包,就只能用默认语言读出。
粗略测试,Mac下Chrome支持volume、pitch两个参数,语速rate不支持;Firefox和Safari对volume、rate和pitch三个参数都不支持。
SpeechSynthesisUtterance 表示一次发音请求,其中包含了将由语音服务朗读的内容,以及如何朗读它(例如:语种、音高、音量)。
它有6个属性,分别如下:
lang:读取时的语言
pitch:声音的音高,取值0~2 ,正常音高为1
rate:读取的语速,取值0.1~10 ,正常语速值为1
text:要合成语音的文字内容
voice:读取文字的语音服务,默认为 SpeechSynthesisVoice 的属性值为 default 的那个
volume:读取时声音的音量,取值0~1,正常音量为1
除了上面的属性外,还有7个事件方法,分别如下:
onboundary:当播放至一个词或句子结尾时触发
onend:语音播放结束时触发
onerror:语音播放错误时触发
onmark:当语音播放至 mark 标记时触发
onpause:暂停语音播放时触发
onresume:恢复语音播放时触发
onstart:开始语音播放时触发
自定义函数 saytext
更多内容......