SpeechSynthesisUtterance: text プロパティ

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2018.

textSpeechSynthesisUtterance インターフェイスのプロパティで、発話時に合成されるテキストを取得および設定します。

テキストはプレーンテキストか、整形された SSML 文書として提供されます。 SSML タグは SSML に対応していない端末では取り除かれます。

合成するテキストを表す文字列です。 各発話で発話できるテキストの最大長は 32,767 文字です。

js
const synth = window.speechSynthesis;

const inputForm = document.querySelector("form");
const inputTxt = document.querySelector("input");
const voiceSelect = document.querySelector("select");

const voices = synth.getVoices();

// ...

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

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

仕様書

Specification
Web Speech API
# dom-speechsynthesisutterance-text

ブラウザーの互換性

BCD tables only load in the browser

関連情報