vue3.2实现文字转语音播报功能

npm i speak-tts
<template>
  <div class="registered_screen">
    <el-button @click="speak">点击播放</el-button>
    <el-button @click="goRegistered">返回</el-button>
  </div>
</template>

<script setup lang="ts">
import Speech from 'speak-tts'
import { ref, onMounted } from 'vue'
import {useRouter} from 'vue-router'
// 语音播放实例
const speech: any = ref(null)
const router = useRouter()

onMounted(() => {
  // 语音播放初始化
  speechInit()
})

//初始化语音播报的一些参数,这个方法要在语音播报之前执行
const speechInit = () => {
  speech.value = Speech;
  console.log(speech.value, 666);
  speech.value.setLanguage('zh-CN');
  speech.value.init()
}
//语音播报
const speak = () => {
  speech.value.speak({ text: "欢迎" })
}

// 返回
const goRegistered = () => {
  router.push('/registered')
}

</script>

<style scoped>
.registered_screen {
  font-size: 14px;
  color: #444;
  padding: 16px;
  /* background-color: #fff; */
  height: 100%;
}
</style>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在前端Vue实现文字转语音真人发声,可以使用"speak-tts"库来实现。以下是一种实现方法: 1. 首先,在Vue文件中引入"speak-tts"库。可以在需要语音播报Vue文件中使用以下代码引入库: 2. 在Vue文件的数据区域添加一个speech属性,用于初始化语音播报的参数,如语言设置等。可以使用以下代码添加speech属性: 3. 在Vue文件的mounted生命周期中调用speechInit()方法,用于初始化语音播报。可以使用以下代码在mounted生命周期中调用speechInit()方法: 4. 在Vue文件的methods中添加speak()方法,用于触发文字转语音真人发声。可以使用以下代码添加speak()方法: 5. 在Vue文件的template模板中添加一个按钮,用于触发语音播报。可以使用以下代码添加一个点击按钮: 这样,当点击按钮时,就会触发speak()方法,实现文字转语音真人发声。 完整的代码如下所示: ```html <template> <div class="about"> <button @click="speak">语音播报</button> </div> </template> <script> import Speech from 'speak-tts' export default { data() { return { speech: null } }, mounted() { this.speechInit(); }, methods: { speechInit() { this.speech = new Speech(); this.speech.setLanguage('zh-CN'); this.speech.init().then(() => { console.log('语音播报初始化完成') }) }, speak() { this.speech.speak({text: "欢迎关注小编"}).then(() => { console.log("播报完成") }) } } } </script> ``` 通过以上步骤,在前端Vue中就可以实现文字转语音真人发声了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Vue实现文字转语音,语音播报](https://blog.csdn.net/weixin_40502718/article/details/128469257)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A_ugust__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值