Teksta lasīšana ķīniešu valodā



Es izvirzīju sev uzdevumu uzrakstīt teksta balss spēli ķīniešu valodā.Tas ir diezgan vienkāršs jautājums, ja jums jau ir pieredze, bet, sākot to darīt no nulles, jūs sakrāsiet tik daudz problēmu, ka vēlme var pazust daudz agrāk.JavaScript ir ļoti funkcionāla valoda, šķiet, ka tajā ir viss, ko sirds kāro.

Apskatīsim galīgo versiju, ko varat ielīmēt DevTools, un pārbaudiet to.

var utterance = new SpeechSynthesisUtterance('菜');
var voices = window.speechSynthesis.getVoices();
utterance.voice = voices.filter(function(voice) { return voice.lang == 'zh-CN'; })[0];
window.speechSynthesis.speak(utterance);

zh-CN - šādi pārlūkprogrammas iekšienē tiek apzīmēta ķīniešu valoda.Mūsu programmā mēs pārlūkprogrammā meklējam ķīniešu valodas balsi un mēģinām atveidot mūsu frāzi.Tas praktiski neatšķiras no izrunāšanas jebkurā citā valodā.Bet šeit ir pāris nianses.Filtrējot pieejamo valodu klāstu, mēs saskaramies ar 2 ķīniešu zh-CN balsīm.Nulle būs sieviešu balss, un pirmā ir vīriešu balss.

Sieviete

utterance.voice = voices.filter(function(voice) { return voice.lang == 'zh-CN'; })[0];

Vīrietis

utterance.voice = voices.filter(function(voice) { return voice.lang == 'zh-CN'; })[1];

Turklāt balss darbība dažādās pārlūkprogrammās un dažādās ierīcēs atšķiras.Chrome pārlūkam ir savas balsis, Edge pārlūkprogrammai, starp citu, ir pavisam citas, patīkamākas, un Opera pārlūkam vispār nav balsu, tāpēc nebūs balss aktieru.

Šo kodu var piekārt pie pogas un izrunāt kaut ko savu.

function say(voiceId){
    let text = document.getElementById("pole").innerHTML
    console.log (text)
    var utterance = new SpeechSynthesisUtterance(text);
    var voices = window.speechSynthesis.getVoices();
    utterance.voice = voices.filter(function(voice) { return voice.lang == 'zh-CN'; })[voiceId];
    window.speechSynthesis.speak(utterance);
}

un pogas kods:

<button onclick="say(1)">👨🔉</button>

Citu problēmu ar balss spēli nav.Ak, jā, kā tas viss darbojas viedtālruņos.Jā, lieliski, it īpaši mobilajā pārlūkprogrammā Edge.Starp citu, pamatojoties uz šo tehnoloģiju, es mēģinu izveidot mikropakalpojumu ķīniešu valodas apguvei, šeit tas ir:

http://jkeks.ru/china .Viss tiek īstenots tieši tā, kā es šeit aprakstīju.





bg bs ca ceb co cs cy da de el en eo es et fa fi fr fy ga gd gl gu ha haw hi hmn hr ht hu id ig is it iw ja jw ka kk km kn ko ku ky la lb lo lt lv mg mi mk ml mn mr ms mt my ne nl no ny or pa pl ps pt ro ru rw sd si sk sl sm sn so sr st su sv sw ta te tg th tk tl tr tt ug uk ur uz vi xh yi yo zh zu
Text to speech
QR-Code generator
Parsedown cheatsheet. Markdown
Filter data by column with regular expressions
Engines for creating games on LUA ?
JavaScript: draw a point
JavaScript: Speaking text in Chinese