vue 实现文字语音播放

<template>
  <div>
    <div>
      <input type="text" id="ttsText">
      <input type="button" id="tts_btn" @click="doTTS" value="播放">
      <input type="button" id="zt_btn" @click="doZT" value="暂停">
    </div>
    <div id="wrapp">

    </div>
  </div>
</template>
<script>
  export default {
    mounted() {},
    data() {
      return {
        textVal: '911',
        ss:''
      };
    },
    methods: {
      doTTS() {
        var ttsDiv = document.getElementById('wrapp');
        var ttsText = document.getElementById('ttsText').value;
        // 这样就可实现播放内容的替换了
        var a= '<audio id="wrapp_aud" autoplay="autoplay">';
        var b= '<source src="http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=10&text='+ttsText+'" type="audio/mpeg">';
        var c= '</audio>';
        ttsDiv.innerHTML = a + b + c;
        var ttsAudio = document.getElementById('wrapp_aud');
        ttsAudio.play();
      },
      doZT() {
        var ttsAudio = document.getElementById('wrapp_aud');
        ttsAudio.pause();
      }
    }
  };
</script>

 

通过JS调用接口

<script src="http://code.responsivevoice.org/responsivevoice.js"></script>
responsiveVoice.speak(STRING TEXT, [STRING VOICE], [OBJECT PARAMETERS]);
//text:就是要朗读成语音的文字,比如:responsiveVoice.speak("hello world");
//voice:是选择用什么语音阅读,默认是英文阅读,如果要用中文阅读,就设置成“Chinese Female”,比如:responsiveVoice.speak("hello world","Chinese Female");
//parameters:这个是阅读的速度,比如:responsiveVoice.speak("hello world", "UK English Male", {rate: 1.5});

responsiveVoice.cancel();//取消朗读

responsiveVoice.pause();//暂停阅读

responsiveVoice.resume();//复位到开启

 

使用ResponsiveVoice.JS将网站中的选定文本转换为语音 ###总结 用于浏览器的文本到语音扩展,感谢ResponsiveVoice.js的API。 该功能很简单。 当你选择一个文本,文本说话。 TTS(文本到语音)功能来自ResponsiveVoiceJS。 所以如果你觉得这个扩展是有用的,请感谢原始API提供者http://responsivevoice.org 要打开/关闭此扩展程序,请点击浏览器工具栏按钮上的扬声器按钮。 默认情况下,这个扩展是被禁用的。所以请点击浏览器工具栏上的扬声器图标 ### 供电 - ResponsiveVoiceJS语音数据[http://responsivevoice.org/] - guessLanguage.js用于检测所选文本的语言[https://github.com/richtr/guessLanguage.js] ### 注意 请注意,有一些语言与多个相关的声音,如英语。 您可以配置哪些语音与这些文本首选。 对于英语:   - 英国女英文(默认)   - 英国英语男性   - 美国英语女性   - 澳大利亚女性 葡萄牙语:   - 巴西葡萄牙女性   - 葡萄牙女性(默认) 西班牙语:   - 西班牙女性(默认)   - 西班牙拉丁美洲女性 对于塞尔维亚 - 克罗地亚语:   - 黑山男性   - Serbo-Croatian男(默认)   - 波斯尼亚男 对于罗马尼亚语:   - 摩尔多瓦男性   - 罗马尼亚男(默认) 另外,自动文本语言检测不能识别用“Hatian Creole”写的文本。 因此,如果您想听到Hatian Creole的声音,请禁用“自动检测语言”选项并手动设置语言。 ###支持的声音 最初的ResponsiveVoiceJS API支持:   - 南非荷兰语男性   - 阿尔巴尼亚男   - 阿拉伯男性   - 亚美尼亚男性   - 澳大利亚女性   - 波斯尼亚男   - 巴西葡萄牙女性   - 加泰罗尼亚语男性   - 中国女性   - 克罗地亚男性   - 捷克女性   - 丹麦女性   - Deutsch女性   - 荷兰女性   - 世界语男性   - 芬兰女性   - 法国女性   - 希腊女性   - Hatian克里奥尔人女性   - 印地文女性   - 匈牙利女性   - 冰岛男性   - 印度尼西亚女性   - 意大利女性   - 日本女性   - 韩国女性   - 拉丁女性   - 拉脱维亚男性   - 马其顿男   - 摩尔多瓦男性   - 黑山男性   - 挪威女性   - 波兰女性   - 葡萄牙女性   - 罗马尼亚男性   - 俄罗斯女性   - 塞尔维亚男性   - 塞尔维亚克罗地亚男性   - 斯洛伐克女性   - 西班牙女性   - 西班牙拉丁美洲女性   - 斯瓦希里语男性   - 瑞典女性   - 坦米尔男   - 泰国女性   - 土耳其女性   - 英国女英文   - 英国英语男性   - 美国英语女声(默认语音)   - 越南男性   - 威尔士男性 支持语言:English,日本語
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值