Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.

Это экспериментальная технология
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

The SpeechSynthesisUtterance interface of the Web Speech API represents a speech request. It contains the content the speech service should read and information about how to read it (e.g. language, pitch and volume.)

Конструктор

SpeechSynthesisUtterance.SpeechSynthesisUtterance()
Возвращает новый экземпляр объекта SpeechSynthesisUtterance

Свойства

SpeechSynthesisUtterance еще наследует свойства из его своего родительского интерфейса EventTarget.

SpeechSynthesisUtterance.lang
Получает и устанавливает язык высказывания.
SpeechSynthesisUtterance.pitch
Получает и устанавливает высоту, на которой произносится высказывание
SpeechSynthesisUtterance.rate
Получает и устанавливает скорость, с которой будет произноситься высказывание.
SpeechSynthesisUtterance.text
Получает и устанавливает текст, который будет синтезироваться при произнесении высказывания.
SpeechSynthesisUtterance.voice
Получает и устанавливает голос, который будет использоваться для произнесения речи.
SpeechSynthesisUtterance.volume
Получает и устанавливает громкость, на котором будет произноситься высказывание.

Обработчики событий

SpeechSynthesisUtterance.onboundary
Срабатывает, когда произнесенное высказывание достигает границы слова или предложения.
SpeechSynthesisUtterance.onend
Срабатывает, когда произнесение произнесено.
SpeechSynthesisUtterance.onerror
Срабатывает, когда возникает ошибка, которая препятствует успешному произнесению высказывания.
SpeechSynthesisUtterance.onmark
Срабатывает, когда произнесенное высказывание достигает названного тега метки «SSML».
SpeechSynthesisUtterance.onpause
Срабатывает, когда высказывание приостановлено.
SpeechSynthesisUtterance.onresume
Срабатывает, когда приостановленное высказывание возобновляется.
SpeechSynthesisUtterance.onstart
Срабатывает, когда произнесение произнесено.

Examples

В нашей базовой Демо-версия синтезатора речи, мы сначала получаем ссылку на контроллер SpeechSynthesis, используя window.speechSynthesis. После определения некоторых необходимых переменных мы получаем список доступных голосов, используя SpeechSynthesis.getVoices(), и заполнить меню выбора с ними, чтобы пользователь мог выбрать, какой голос он хочет.

Внутри обработчика inputForm.onsubmit мы останавливаем отправку формы с помощью preventDefault(), используйте constructor для создания нового экземпляра высказывания, содержащего текст из текста <input>, установите voiceна голос, выбранный в элементе <select> и начните высказывание через SpeechSynthesis.speak() метод.

var synth = window.speechSynthesis;

var inputForm = document.querySelector('form');
var inputTxt = document.querySelector('input');
var voiceSelect = document.querySelector('select');

var voices = synth.getVoices();

for(i = 0; i < voices.length ; i++) {
  var option = document.createElement('option');
  option.textContent = voices[i].name + ' (' + voices[i].lang + ')';
  option.setAttribute('data-lang', voices[i].lang);
  option.setAttribute('data-name', voices[i].name);
  voiceSelect.appendChild(option);
}

inputForm.onsubmit = function(event) {
  event.preventDefault();

  var utterThis = new SpeechSynthesisUtterance(inputTxt.value);
  var selectedOption = voiceSelect.selectedOptions[0].getAttribute('data-name');
  for(i = 0; i < voices.length ; i++) {
    if(voices[i].name === selectedOption) {
      utterThis.voice = voices[i];
    }
  }
  synth.speak(utterThis);
  inputTxt.blur();
}

Specifications

Specification Status Comment
Web Speech API
Определение 'SpeechSynthesisUtterance' в этой спецификации.
Черновик  

Browser compatibility

ВозможностьChromeEdgeFirefoxInternet ExplorerOperaSafari
Базовая поддержка33 Да49 Нет217
SpeechSynthesisUtterance constructor33 Да49 Нет217
lang33 Да49 Нет217
onboundary33 Да49 Нет217
onend33 Да49 Нет217
onerror33 Да49 Нет217
onmark33 Да49 Нет217
onpause33 Да49 Нет217
onresume33 Да49 Нет217
onstart33 Да49 Нет217
pitch33 Да49 Нет217
rate33 Да49 Нет217
text33 Да49 Нет217
voice33 Да49 Нет217
volume33 Да49 Нет217
ВозможностьAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Базовая поддержка3333 Да

62

61 — 621

Нет7.1 ?
SpeechSynthesisUtterance constructor3333 Да

62

61 — 621

Нет7.1 ?
lang3333 Да

62

61 — 621

Нет7.1 ?
onboundary3333 Да

62

61 — 621

Нет7.1 ?
onend3333 Да

62

61 — 621

Нет7.1 ?
onerror3333 Да

62

61 — 621

Нет7.1 ?
onmark3333 Да

62

61 — 621

Нет7.1 ?
onpause3333 Да

62

61 — 621

Нет7.1 ?
onresume3333 Да

62

61 — 621

Нет7.1 ?
onstart3333 Да

62

61 — 621

Нет7.1 ?
pitch3333 Да

62

61 — 621

Нет7.1 ?
rate3333 Да

62

61 — 621

Нет7.1 ?
text3333 Да

62

61 — 621

Нет7.1 ?
voice3333 Да

62

61 — 621

Нет7.1 ?
volume3333 Да

62

61 — 621

Нет7.1 ?

1. From version 61 until version 62 (exclusive): this feature is behind the media.webspeech.synth.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

See also

Метки документа и участники

Внесли вклад в эту страницу: Kan_Artem
Обновлялась последний раз: Kan_Artem,