SpeechSynthesizer.AddLexicon(Uri, String) メソッド

定義

用語集を SpeechSynthesizer オブジェクトに追加します。

public:
 void AddLexicon(Uri ^ uri, System::String ^ mediaType);
public void AddLexicon (Uri uri, string mediaType);
member this.AddLexicon : Uri * string -> unit
Public Sub AddLexicon (uri As Uri, mediaType As String)

パラメーター

uri
Uri

辞書情報の場所。

mediaType
String

辞書のメディア タイプ。 メディアの種類の値では大文字と小文字は区別されません。

次の例では、"blue" という単語のカスタム発音を含む辞書を追加および削除する効果を示します。 辞書は、"bleep" のように聞こえる "blue" の発音を定義します。 辞書が読み込まれる間、音声シンセサイザーは辞書で定義されている発音を使用します。

using System;
using System.Speech.Synthesis;

namespace SampleSynthesis
{
  class Program
  {
    static void Main(string[] args)
    {

      // Initialize a new instance of the SpeechSynthesizer.
      using (SpeechSynthesizer synth = new SpeechSynthesizer())
      {

        // Configure the audio output.
        synth.SetOutputToDefaultAudioDevice();

        // Speak the prompt.
        synth.Speak("My favorite color is blue.");

        // Add a lexicon that changes the pronunciation of "blue".
        synth.AddLexicon(new Uri("C:\\test\\Blue.pls"), "application/pls+xml");

        // Speak the prompt.
        synth.Speak("My favorite color is blue.");

        // Remove the lexicon.
        synth.RemoveLexicon(new Uri("C:\\test\\Blue.pls"));

        // Speak the prompt.
        synth.Speak("My favorite color is blue.");
      }

      Console.WriteLine();
      Console.WriteLine("Press any key to exit...");
      Console.ReadKey();
    }
  }
}

辞書ファイル Blue.pls の内容を次に示します。

<?xml version="1.0" encoding="UTF-8"?>

<lexicon version="1.0"
      xmlns="http://www.w3.org/2005/01/pronunciation-lexicon"
      alphabet="x-microsoft-ups" xml:lang="en-US">

  <lexeme>
    <grapheme> blue </grapheme>
    <phoneme> B L I P </phoneme>
  </lexeme>

</lexicon>

注釈

発音辞書は、サポートされているふりがなの文字と文字で構成される、単語またはフレーズのコレクションとその発音です。 辞書を使用して、アプリケーション内の特殊なボキャブラリのカスタム発音を指定できます。

外部辞書ファイルで指定された発音は、音声シンセサイザーの内部辞書または辞書の発音よりも優先されます。 ただし、または AppendSsml のいずれかのメソッドで作成されたプロンプトでインラインで指定された発音は、任意のAppendTextWithPronunciationAppendSsmlMarkup辞書で指定された発音よりも優先されます。 インライン発音は、単語の 1 回の出現にのみ適用されます。 詳細については、「 辞書とふりがな 」を参照してください。

オブジェクトに複数の辞書を SpeechSynthesizer 追加できます。 パラメーターでは、現在、次の 2 つの値が mediaType サポートされています。

  • この値 application/pls+xml は、辞書が 発音辞書仕様 (PLS) バージョン 1.0 に準拠していることを示します。 これは、使用する推奨形式です。

  • application/vdn.ms-sapi-lexは、辞書形式が非圧縮辞書であることを示します。これは、Microsoft独自の形式です。 これは従来の形式であり、上記の PLS 形式を使用することをお勧めします。

適用対象

こちらもご覧ください