Condividi tramite


SpeechSynthesizer.AddLexicon(Uri, String) Metodo

Definizione

Aggiunge un lessico all'oggetto 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)

Parametri

uri
Uri

Il percorso delle informazioni del lessico.

mediaType
String

Tipo di supporto del lessico. Per i valori dei tipi di supporti non viene fatta la distinzione tra maiuscole e minuscole.

Esempio

Nell'esempio seguente viene illustrato l'effetto dell'aggiunta e della rimozione di un lexicon contenente una pronuncia personalizzata per la parola "blu". Il lexicon definisce la pronuncia di "blu" per suonare come "bleep". Mentre il lexicon viene caricato, il sintetizzatore vocale usa la pronuncia definita nel lexicon.

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

Di seguito sono riportati i contenuti del file blue.pls del lessico:

<?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>

Commenti

Un lexicon di pronuncia è una raccolta di parole o frasi insieme alle loro pronuncia, costituite da lettere e caratteri da un alfabeto fonetico supportato. È possibile usare un lessico per specificare le pronuncia personalizzate per vocabolario specializzato nell'applicazione.

Le pronuncia specificate in un file di lessico esterno hanno la precedenza sulle pronuncia del sintetizzatore vocale interno o del dizionario. Tuttavia, le pronuncia specificate inline nelle richieste create con uno dei AppendTextWithPronunciationmetodi , AppendSsmlMarkupo AppendSsml hanno la precedenza sulle pronuncia specificate in qualsiasi lexicon. Le pronuncia inline si applicano solo a una singola occorrenza di una parola. Per altre informazioni , vedere Lexicons e Fonetica Alfabeti .

È possibile aggiungere più lexicon a un SpeechSynthesizer oggetto. Due valori sono attualmente supportati per il mediaType parametro:

  • Il valore application/pls+xml indica che il lexicon è conforme al lexicon Specification (PLS) Version 1.0. Si tratta del formato preferito da usare.

  • Il valore application/vdn.ms-sapi-lex indica che il formato del lexicon è lexicon non compresso, ovvero un formato proprietario di Microsoft. Si tratta di un formato legacy e si consiglia di usare il formato PLS descritto in precedenza.

Si applica a

Vedi anche