目标是能够发音像 wo3 这样的东西。System.Speech 可以处理汉字,但是有没有办法直接输入拼音呢?从http://msdn.microsoft.com/en-us/library/ms720566(v=vs.85).aspx看来,我应该能够像这样写出拼音
<PRON SYM="ni 3"/>
如何使用 PRON SYM?
更新: 以下是一些讨论该问题但没有解决方案的网页:- http://www.ms-news.net/f3012/problem-with-phonemes-and-chinese-tts-3031240.html
Update2 我在 .NET 中使用 System.Speech.Synthesizer。也许这就是问题所在。我可以看到将其输入到语音属性中可以正常工作:
如果我从 C# 执行此操作,它只会读取标签:
var culture = CultureInfo.GetCultureInfo("zh-CN");
var synth = new SpeechSynthesizer();
var voices = synth.GetInstalledVoices(culture);
if (voices.Count > 0)
{
synth.SelectVoice(voices[0].VoiceInfo.Name);
synth.Speak("<pron sym=\"ni 3 hao 3 xiao 1\"/>");
}