SpeechSynthesizer.AddLexicon(Uri, String) Metoda

Definicja

Dodaje Leksykon do SpeechSynthesizer obiektu.

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)

Parametry

uri
Uri

Lokalizacja informacji o leksykonie.

mediaType
String

Typ nośnika leksykonu. W wartościach typu nośnika nie jest rozróżniana wielkość liter.

Przykłady

Poniższy przykład ilustruje efekt dodania i usunięcia leksykonu, który zawiera niestandardową wymowę dla wyrazu "Blue". Leksykon definiuje wymowę "niebieska" do dźwięku, takiego jak "Bleep". Podczas ładowania leksykonu, syntezator mowy używa wymowy zdefiniowanej w leksykonie.

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

Poniżej znajduje się zawartość pliku leksykonu Blue. innych obszarów roboczych:

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

Uwagi

Leksykon wymowy to kolekcja słów lub fraz wraz z wymowymi, które składają się z liter i znaków z obsługiwanego alfabetu fonetycznego. Możesz użyć leksykonu, aby określić niestandardowe wymowy dla wyspecjalizowanego słownictwa w aplikacji.

Wymowy określone w zewnętrznym pliku leksykonu mają pierwszeństwo przed wymowąm leksykonu lub słownika wewnętrznego syntezatora mowy. Jednak wymowy określone w tekście w wierszach polecenia AppendTextWithPronunciation , AppendSsmlMarkup , lub AppendSsml mają pierwszeństwo przed wydaniami, które są określone w dowolnym leksykonie. Wymowy wbudowane mają zastosowanie tylko do jednego wystąpienia wyrazu. Aby uzyskać więcej informacji , zobacz leksykony i alfabety fonetyczne .

Do obiektu można dodać wiele leksykonów SpeechSynthesizer . Dwie wartości są obecnie obsługiwane dla mediaType parametru:

  • Wartość application/pls+xml wskazuje, że Leksykon jest zgodny ze specyfikacją leksykonu wymowy (innych obszarów roboczych) w wersji 1,0. Jest to preferowany format do użycia.

  • Wartość application/vdn.ms-sapi-lex wskazuje, że format leksykonu jest nieskompresowanym leksykonem, który jest formatem zastrzeżonym przez firmę Microsoft. Jest to starszy format i zalecamy użycie opisanego powyżej formatu innych obszarów roboczych.

Dotyczy

Zobacz też