TtsEngineSsml.RemoveLexicon(Uri, ITtsEngineSite) 方法

定义

移除由当前 TtsEngineSsml 实例实现的 SynthesizerVoice 当前加载的字典。

public:
 abstract void RemoveLexicon(Uri ^ uri, System::Speech::Synthesis::TtsEngine::ITtsEngineSite ^ site);
public abstract void RemoveLexicon (Uri uri, System.Speech.Synthesis.TtsEngine.ITtsEngineSite site);
abstract member RemoveLexicon : Uri * System.Speech.Synthesis.TtsEngine.ITtsEngineSite -> unit
Public MustOverride Sub RemoveLexicon (uri As Uri, site As ITtsEngineSite)

参数

uri
Uri

指示词典信息位置的 System.Uri 的有效实例。

site
ITtsEngineSite

对由平台基础结构传入以允许访问基础结构资源的 ITtsEngineSite 接口的引用。

示例

RemoveLexicon实现使用词典 URI 查询 实例System.Collections.Generic.DictionarySystem.IO.Stream,关闭流并删除引用词典的 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);  
     }  
}  

注解

发音词典是单词或短语的集合,以及使用适当的发音字母表指定的发音。

通常调用此方法以响应System.Speech.Synthesis调用 和使用由当前TtsEngineSsml实例实现的合成器语音的基于应用程序RemoveLexicon

实施者说明

实现的责任是完全熟悉并能够处理存储在 中的 uri词典。 实现还必须跟踪和管理它删除的所有词典的生存期。

适用于