Четене на текст на китайски



Поставих си задачата да напиша озвучената игра на текста на китайски.Това е доста прост въпрос, ако вече имате опит, но когато започнете да го правите от нулата, ще съберете толкова много проблеми, че желанието може да изчезне много по-рано.JavaScript е много функционален език, изглежда, че има всичко, което сърцето ви желае.

Нека да разгледаме окончателната версия, която можете да поставите в DevTools и да я проверите.

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 - така се обозначава китайският език в недрата на браузъра.В нашата програма търсим в браузъра гласа на китайския език и се опитваме да възпроизведем нашата фраза.На практика не се различава от изказването на всеки друг език.Но тук има няколко нюанса.Филтрирайки масива от налични езици, попадаме на 2 китайски гласа zh-CN.Нула ще бъде женски глас, а първият е мъжки глас.

Женски пол

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

Мъжки

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

Освен това, гласовата игра ще се различава от браузър до браузър и от устройство на устройство.Браузърът Chrome има свои собствени гласове, браузърът Edge има съвсем различни, по-приятни, между другото, а браузърът Opera изобщо няма гласове, така че няма да има гласова игра.

Този код може да бъде окачен на бутона и да озвучите нещо свое.

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);
}

и код на бутона:

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

Няма други проблеми с гласовата игра.О, да, как работи всичко на смартфони.Да, чудесно, особено в мобилния браузър Edge.Между другото, на базата на тази технология се опитвам да направя микросервиз за изучаване на китайски, ето го:

http://jkeks.ru/china .Всичко е изпълнено точно както описах тук.





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