TtsEngineSsml.AddLexicon(Uri, String, ITtsEngineSite) Метод

Определение

Добавляет лексикон к объекту SynthesizerVoice, реализованному текущим экземпляром TtsEngineSsml.Adds a lexicon to the SynthesizerVoice implemented by the current TtsEngineSsml instance.

public:
 abstract void AddLexicon(Uri ^ uri, System::String ^ mediaType, System::Speech::Synthesis::TtsEngine::ITtsEngineSite ^ site);
public abstract void AddLexicon (Uri uri, string mediaType, System.Speech.Synthesis.TtsEngine.ITtsEngineSite site);
abstract member AddLexicon : Uri * string * System.Speech.Synthesis.TtsEngine.ITtsEngineSite -> unit

Параметры

uri
Uri

Допустимый экземпляр System.Uri, указывающий местоположение информации о словарях.A valid instance of System.Uri indicating the location of the lexicon information.

mediaType
String

Строка, содержащая тип мультимедиа лексикона.A string containing the media type of the lexicon. Типы мультимедиа не учитывают регистр.Media types are case insensitive.

site
ITtsEngineSite

Ссылка на интерфейс ITtsEngineSite, используемый для взаимодействия с инфраструктурой платформы.A reference to an ITtsEngineSite interface used to interact with the platform infrastructure.

Примеры

Реализация AddLexicon использует интерфейс, ITtsEngineSite переданный для загрузки лексикона из ресурса.The implementation of AddLexicon uses the ITtsEngineSite interface passed in to load a lexicon from a resource. Затем он сохраняет System.IO.Stream в лексиконе System.Collections.Generic.Dictionary в экземпляре, индексируемом по URI лексикона.It then stores a System.IO.Stream to the lexicon in a System.Collections.Generic.Dictionary instance, indexed by the lexicon URI.

public static Dictionary<Uri, Stream> _aLexicons = new Dictionary<Uri, Stream>();  
  
 public void AddLexicon(Uri uri, string mediaType, ITtsEngineSite site) {  
    Stream stream = site.LoadResource(uri, mediaType);  
    _aLexicons.Add(uri, stream);  
}  
  
 public void RemoveLexicon(Uri uri, ITtsEngineSite site) {  
     Stream stream;  
     if (_aLexicons.TryGetValue(uri, out stream)) {  
         stream.Close();  
         _aLexicons.Remove(uri);  
     }  
}  
  

Комментарии

Лексикон произношения — это коллекция слов или фраз вместе с произношением, заданными с помощью соответствующего алфавита произношения.A pronunciation lexicon is a collection of words or phrases together with their pronunciations specified using an appropriate pronunciation alphabet.

Этот метод обычно вызывается инфраструктурой платформы в ответ System.Speech.Synthesis на приложения, вызывающие AddLexicon и использующая голосовое использование синтезатора, реализованное текущим TtsEngineSsml экземпляром.This method is typically called by the platform infrastructure in response to a System.Speech.Synthesis based applications calling AddLexicon and using the synthesizer voice implemented by the current TtsEngineSsml instance.

Значение mediaType является, как правило, спецификацией MIME, так как спецификация SSML использует MIME для спецификаций носителя.The value of mediaType is typically a MIME specification, as the SSML specification uses MIME for media specifications.

Примечания для тех, кто реализует этот метод

Реализация должна быть полностью знакома с и иметь возможность обрабатывать лексикон, хранящийся в uri.It is the responsibility of the implementation to be fully familiar with and be able to process the lexicon stored at uri. Реализация также должна вести отслеживание времени существования всех добавляемых лексиконов и управлять ими.The implementation must also keep track and manage the lifetimes of all lexicons it adds.

Применяется к