浏览器语音合成-免费版
基于Web Speech API的在线文本转语音工具
浏览器语音合成
基于Web Speech API的在线文本转语音工具
本工具基于浏览器原生的 Web Speech API 实现文本到语音的转换功能。该 API 由 W3C 标准化,微软、谷歌、苹果等主流浏览器厂商均提供支持。用户可以输入任意中文文本,选择系统提供的语音合成引擎,将文字内容转换为自然流畅的语音播放。适用于无障碍阅读、学习辅助、内容演示等多种场景。
工具核心采用 HTML5 的 Web Speech API 中的 SpeechSynthesis 接口实现。该接口允许网页应用将文本转换为语音输出,支持多种语言和声音。语音合成引擎依赖于操作系统提供的语音技术:
无需额外插件或服务端支持,直接在浏览器中完成语音合成。
由于语音引擎依赖于操作系统,不同平台提供的语音质量和音色会有明显差异:
由于浏览器安全策略限制,Web Speech API 无法直接提供语音文件下载功能。如需生成可保存的音频文件,建议使用专业的云端TTS服务,如 Microsoft Azure 认知服务、阿里云、腾讯云等提供的语音合成 API 。
// 检查浏览器支持
if ('speechSynthesis' in window) {
// 创建语音合成实例
const synth = window.speechSynthesis;
// 获取语音列表
function getVoices() {
return synth.getVoices();
}
// 语音合成函数
function speakText(text, voiceIndex) {
// 创建语音实例
const utterance = new SpeechSynthesisUtterance(text);
// 设置语音(可选)
const voices = getVoices();
if (voiceIndex !== undefined && voices[voiceIndex]) {
utterance.voice = voices[voiceIndex];
}
// 设置语速、音调等参数
utterance.rate = 1.0; // 语速 (0.1-10)
utterance.pitch = 1.0; // 音调 (0-2)
utterance.volume = 1.0; // 音量 (0-1)
// 播放语音
synth.speak(utterance);
}
// 使用示例
speakText("欢迎使用跨平台语音合成工具");
// 停止播放
// synth.cancel();
// 暂停播放
// synth.pause();
// 恢复播放
// synth.resume();
}