Lectura de textos en chinés



Púxenme a tarefa de escribir a interpretación de voz do texto en chinés.Este é un asunto bastante sinxelo se xa tes experiencia, pero cando comeces a facelo desde cero, recollerás tantos problemas que o desexo pode desaparecer moito antes.JavaScript é unha linguaxe moi funcional, parece que ten todo o que o teu corazón desexa.

Vexamos a versión final que podes pegar en DevTools e comprobalo.

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: así é como se designa a lingua chinesa nas entrañas do navegador.No noso programa, buscamos no navegador a voz da lingua chinesa e tentamos reproducir a nosa frase.Practicamente non é diferente de expresar calquera outra lingua.Pero aquí hai un par de matices.Filtrando a variedade de idiomas dispoñibles atopamos 2 voces chinesas zh-CN.Zero será unha voz feminina, e a primeira é unha voz masculina.

Feminino

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

Masculino

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

Ademais, a actuación de voz diferirá dun navegador a outro e dun dispositivo a outro.O navegador Chrome ten as súas propias voces, o navegador Edge ten outras completamente diferentes e máis agradables, por certo, e o navegador Opera non ten voces en absoluto, polo que non haberá actuación de voz.

Este código pódese colgar no botón e emitir algo propio.

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

e código do botón:

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

Non hai outros problemas coa actuación de voz.Ah, si, como funciona todo nos teléfonos intelixentes.Si, xenial, especialmente no navegador Edge móbil.Por certo, baseándome nesta tecnoloxía, estou tentando facer un microservizo para aprender chinés, aquí está:

http://jkeks.ru/china .Todo está implementado exactamente como describín aquí.





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