前端js语音朗读文本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>语音朗读</title>
</head>
<body>
<textarea id="textarea" rows="20" cols="70"></textarea>
<button onclick="reading()">朗读</button>

<script>
function reading() {
const value = document.querySelector("#textarea").value;
if (!value) {
return alert("填入朗读文本");
}
const speech = new SpeechSynthesisUtterance(value);
speechSynthesis.speak(speech);


speech.onstart = (e) => {
console.log("开始读");
}
speech.onend = (e) => {
console.log("读完了");
}
}
</script>
</body>
</html>

打开你的声音听听

SpeechSynthesis实例对象属性

lang 获取并设置话语的语言
pitch 获取并设置话语的音调(值越大越尖锐,越低越低沉)
rate 获取并设置说话的速度(值越大语速越快,越小语速越慢)
text 获取并设置说话时的文本
voice 获取并设置说话的声音
volume 获取并设置说话的音量

SpeechSynthesis方法

speak() 将对应的实例添加到语音队列中
cancel() 删除队列中所有的语音.如果正在播放,则直接停止
pause()暂停语音
resume() 恢复暂停的语音
getVoices 获取支持的语言数组. 注意:必须添加在voiceschanged事件中才能生效

实例对象中的方法

onstart – 语音合成开始时候的回调
onpause – 语音合成暂停时候的回调
onresume – 语音合成重新开始时候的回调
onend – 语音合成结束时候的回调


前端js语音朗读文本
https://github.com/chergn/chergn.github.io/cd0a4a212a81/
作者
全易
发布于
2024年3月28日
许可协议