vue使用關(guān)于speak-tss插件的詳細(xì)介紹及一些配置項(xiàng)
主要介紹下speak-tss插件的使用及一些配置項(xiàng),使用場(chǎng)景是 vue3點(diǎn)擊按鈕,播放某段文字等。
1. 首先需要下載依賴
npm install speak-tts
2. 引用該插件
import Speech from 'speak-tts'
3. 使用插件進(jìn)行實(shí)例化,檢測(cè)瀏覽器是否支持播報(bào)
import Speech from 'speak-tts';
const speech = new Speech();
// 檢測(cè)瀏覽器是否支持,returns a boolean
if(speech.hasBrowserSupport()) {
console.log("語音引擎加載成功,支持播報(bào)")
}else {
console.log('此瀏覽器不支持語音播報(bào)')
}4. 進(jìn)行插件初始化 及 閱讀文本
配置項(xiàng)說明:
volume:語音播報(bào)的聲音,默認(rèn)為1(音量0-1)。
lang:語言,如果沒有提供,則默認(rèn)值由您的瀏覽器決定(下文有聲明多種語言)。
voice:要使用的語音,如果未提供,則由瀏覽器選擇默認(rèn)語音。 支持 Microsoft Huihui - Chinese (Simplified, PRC) ,Microsoft Kangkang - Chinese (Simplified, PRC) ,Microsoft Yaoyao - Chinese (Simplified, PRC)
rate: 語速,默認(rèn)為 1
pitch:音調(diào),默認(rèn)為 1
splitSentences: 是否在句子結(jié)束時(shí)暫停,默認(rèn) true。
listeners:附加到 SpeechSynthesis 對(duì)象的監(jiān)聽器對(duì)象。
受支持的語言:列表可能完整,取決于您的瀏覽器。
ar-SA,cs-CZ,da-DK,de-DE,el-GR,en,en-AU,en-GB,en-IE,en-IN,en-US,en-ZA,es-AR,es-ES,es-MX,es-US,fi-FI,fr-CA,fr-FR,he-IL,hi-IN,hu-HU,id-ID,it-IT,ja-JP,ko-KR,nb-NO,nl-BE,nl-NL,pl-PL,pt-BR,pt-PT,ro-RO,ru-RU,sk-SK,sv-SE,th-TH,tr-TR,zh-CN,zh-HK,zh-TW
// 簡單示例
speech.init().then((data) => {
// speech對(duì)象包含可用語音列表和語音合成參數(shù)
console.log("語音已準(zhǔn)備就緒,聲音可用", data)
}).catch(e => {
console.error("初始化時(shí)發(fā)生錯(cuò)誤: ", e)
})
// 完整配置示例
speech.init({
volume: 1, // 音量
lang: 'zh-CN', // 語言
rate: 1, // 語速1正常語速,2倍語速就寫2
pitch: 1, // 音調(diào)
splitSentences: true, // 在句子結(jié)束時(shí)暫停
listeners: {
// 事件
onvoiceschanged: voices => {
// console.log('事件聲音已更改', voices);
},
},
})
.then(data => {
console.log('語音已準(zhǔn)備好,聲音可用', data);
})
.catch(e => {
console.error('初始化時(shí)發(fā)生錯(cuò)誤 : ', e);
});
// 閱讀文本
// text:要朗讀的文本
// queue:默認(rèn) true: 如果設(shè)置為 false,當(dāng)前語音發(fā)音將被中斷
// listeners: 播報(bào)是否成功的回調(diào)
speech.speak({
text: '您有新的訂單響起請(qǐng)注意查收', //這里使用文字或者i18n 都可以 看自己需求
queue: true,
listeners: {
// 開始播放
onstart: () => {
console.log('Start utterance')
},
// 判斷播放是否完畢
onend: () => {
console.log('End utterance')
},
// 恢復(fù)播放
onresume: () => {
console.log('Resume utterance')
},
}
})
.then(() => {
console.log('成功!');
})
.catch(e => {
console.error('發(fā)生錯(cuò)誤:', e);
});5,實(shí)例化對(duì)象上的方法
// 設(shè)置語言(注意該語言必須是客戶端瀏覽器支持的):
Speech.setLanguage('zh-CN')
// 設(shè)置語音(注意語音必須客戶端瀏覽器支持):
Speech.setVoice('Fiona') //您可以傳遞由 init() 函數(shù)返回的 SpeechSynthesisVoice 或僅傳遞其名稱
// 設(shè)置語速:
Speech.setRate(1)
// 設(shè)置音量:
Speech.setVolume(1)
// 設(shè)置音調(diào):
Speech.setPitch(1)
// 暫停正在進(jìn)行的談話:
Speech.pause()
// 繼續(xù)正在進(jìn)行的談話:
Speech.resume()
// 取消正在進(jìn)行的談話:
Speech.cancel()
// 獲取布爾值,指示話語隊(duì)列是否包含尚未說出的話語:
Speech.pending()
// 獲取布爾值表示談話是否暫停:
Speech.paused()
// 獲取布爾值表示談話是否正在進(jìn)行中:
Speech.speaking()到此這篇關(guān)于vue使用關(guān)于speak-tss插件的詳細(xì)介紹的文章就介紹到這了,更多相關(guān)vue speak-tss插件使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于vue實(shí)現(xiàn)分頁/翻頁組件paginator示例
本篇文章主要介紹了基于vue實(shí)現(xiàn)分頁/翻頁組件paginator示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-03-03
詳解基于Vue/React項(xiàng)目的移動(dòng)端適配方案
這篇文章主要介紹了詳解基于Vue/React項(xiàng)目的移動(dòng)端適配方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
使用Vue-scroller頁面input框不能觸發(fā)滑動(dòng)的問題及解決方法
這篇文章主要介紹了使用Vue-scroller頁面input框不能觸發(fā)滑動(dòng)的問題,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
Vue+Element+Springboot圖片上傳的實(shí)現(xiàn)示例
最近在學(xué)習(xí)前段后分離,本文介紹了Vue+Element+Springboot圖片上傳的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2021-11-11

