SpeechSynthesizer.AddLexicon(Uri, String) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidá do objektu SpeechSynthesizer lexikon.
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
Umístění informací o lexikonu.
- mediaType
- String
Typ média lexikonu. V hodnotách typu média se nerozlišují velká a malá písmena.
Příklady
Následující příklad ukazuje efekt přidání a odebrání lexikonu, který obsahuje vlastní výslovnost pro slovo "blue". Lexikon definuje výslovnost "blue" tak, aby zněla jako "bleep". Při načítání lexikonu syntetizátor řeči používá výslovnost definovanou v lexikonu.
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();
}
}
}
Následuje obsah souboru lexicon 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>
Poznámky
Lexikon výslovnosti je kolekce slov nebo frází společně s jejich výslovností, která se skládá z písmen a znaků z podporované fonetické abecedy. Lexikon můžete použít k určení vlastní výslovnosti pro specializovanou slovní zásobu ve vaší aplikaci.
Výslovnost zadaná v externím souboru lexikonu má přednost před výslovností interního slovníku syntetizátoru řeči nebo slovníku. Výslovnost zadaná inline v výzev vytvořených AppendTextWithPronunciationpomocí metody , AppendSsmlMarkupnebo AppendSsml však mají přednost před výslovností určenou v libovolném lexikonu. Vložená výslovnost se vztahuje pouze na jeden výskyt slova. Další informace najdete v tématu Lexikony a fonetické abecedy .
K objektu SpeechSynthesizer můžete přidat více lexikonů. Parametr aktuálně podporuje mediaType
dvě hodnoty:
Hodnota
application/pls+xml
označuje, že lexikon odpovídá výslovnosti Lexicon Specification (PLS) verze 1.0. Toto je upřednostňovaný formát, který se má použít.Hodnota
application/vdn.ms-sapi-lex
označuje, že formát lexikonu je Nekomprimovaný lexicon, což je proprietární formát Microsoftu. Toto je starší formát a doporučujeme použít formát PLS popsaný výše.