SpeechSynthesizer.AddLexicon(Uri, String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Nesnesine SpeechSynthesizer bir sözcük sözlüğü ekler.
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)
Parametreler
- uri
- Uri
Sözlük bilgilerinin konumu.
- mediaType
- String
Sözlüğün medya türü. Medya türü değerleri büyük/küçük harfe duyarlı değildir.
Örnekler
Aşağıdaki örnek, "blue" sözcüğü için özel bir söyleniş içeren bir sözcük sözlüğü ekleme ve kaldırmanın etkisini gösterir. Sözcük sözlüğü, "bleep" gibi ses getirmek için "blue" telaffuzunu tanımlar. Sözcük sözlüğü yüklenirken, konuşma sentezleyicisi sözcük sözlüğünde tanımlanan telaffuzu kullanır.
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 lexicon dosyasının içeriği aşağıdadır:
<?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>
Açıklamalar
Söyleniş sözlüğü, desteklenen fonetik alfabenin harflerinden ve karakterlerinden oluşan söylenişleriyle birlikte sözcüklerden veya tümceciklerden oluşan bir koleksiyondur. Uygulamanızda özel sözcük dağarcığı için özel söylenişler belirtmek için sözlük kullanabilirsiniz.
Dış sözlük dosyasında belirtilen söylenişler, konuşma sentezleyicisinin iç sözlüğü veya sözlüğünden daha önceliklidir. Ancak, , AppendSsmlMarkupveya AppendSsml yöntemlerinden herhangi biriyle oluşturulan istemlerde satır içi olarak belirtilen söylenişlerAppendTextWithPronunciation, herhangi bir sözcük sözlüğünde belirtilen söylenişlerden önceliklidir. Satır içi söylenişler yalnızca bir sözcüğün tek bir tekrarı için geçerlidir. Daha fazla bilgi için bkz . Lexicons ve Fonetik Alfabeleri .
Bir nesneye SpeechSynthesizer birden çok sözcük öğesi ekleyebilirsiniz. Şu anda parametresi için mediaType
iki değer desteklenmektedir:
değeri
application/pls+xml
, sözlüğün Telaffuz Sözlüğü Belirtimi (PLS) Sürüm 1.0'a uygun olduğunu gösterir. Bu, kullanılacak tercih edilen biçimdir.değeri
application/vdn.ms-sapi-lex
, lexicon biçiminin Microsoft'a özel bir biçim olan Sıkıştırılmamış Lexicon olduğunu gösterir. Bu eski bir biçimdir ve yukarıda açıklanan PLS biçimini kullanmanızı öneririz.