TtsEngineSsml.AddLexicon(Uri, String, ITtsEngineSite) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Добавляет лексикон к объекту Synthesizer
Voice
, реализованному текущим экземпляром TtsEngineSsml.
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
Public MustOverride Sub AddLexicon (uri As Uri, mediaType As String, site As ITtsEngineSite)
Параметры
- uri
- Uri
Допустимый экземпляр System.Uri
, указывающий местоположение информации о словарях.
- mediaType
- String
Строка, содержащая тип мультимедиа лексикона. Типы мультимедиа не учитывают регистр.
- site
- ITtsEngineSite
Ссылка на интерфейс ITtsEngineSite, используемый для взаимодействия с инфраструктурой платформы.
Примеры
Реализация использует переданный AddLexiconITtsEngineSite интерфейс для загрузки лексикона из ресурса. Затем он сохраняет System.IO.Stream
в лексиконе в экземпляре System.Collections.Generic.Dictionary
, индексируется по 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);
}
}
Комментарии
Словарь произношения — это коллекция слов или фраз вместе с их произношением, указанными с помощью соответствующего алфавита произношения.
Этот метод обычно вызывается инфраструктурой платформы в ответ на вызов приложения AddLexicon на System.Speech.Synthesis основе и использование синтезатора голоса, реализованного текущим TtsEngineSsml экземпляром.
Значение mediaType
, как правило, является спецификацией MIME, так как спецификация SSML использует MIME для спецификаций мультимедиа.
Примечания для тех, кто реализует этот метод
Ответственность за реализацию заключается в том, чтобы быть полностью знакомым с и иметь возможность обрабатывать лексикон, хранящийся в uri
. Реализация также должна отслеживать время существования всех добавленных словарей и управлять ими.