vue使用關(guān)于speak-tss插件的詳細(xì)介紹及一些配置項(xiàng)
主要介紹下speak-tss插件的使用及一些配置項(xiàng),使用場景是 vue3點(diǎn)擊按鈕,播放某段文字等。
1. 首先需要下載依賴
npm install speak-tts
2. 引用該插件
import Speech from 'speak-tts'
3. 使用插件進(jìn)行實(shí)例化,檢測瀏覽器是否支持播報(bào)
import Speech from 'speak-tts'; const speech = new Speech(); // 檢測瀏覽器是否支持,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: '您有新的訂單響起請注意查收', //這里使用文字或者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)容請搜索腳本之家以前的文章或繼續(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-08Vue+Element+Springboot圖片上傳的實(shí)現(xiàn)示例
最近在學(xué)習(xí)前段后分離,本文介紹了Vue+Element+Springboot圖片上傳的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下2021-11-11