このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

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 2018年9月.

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

ブラウザーの互換性

関連情報