我正在努力让SpeechSynthesis能够使用无英语语言。
首先,我尝试设置文化信息:
var speech = new SpeechSynthesizer
{
Volume = 100,
Rate = 0
};
var text = "Dette er en test";
var builder = new PromptBuilder(new System.Globalization.CultureInfo("da-dk"));
builder.AppendText(text);
speech.SpeakAsync(builder);
但它仍然是一个英国人的声音。
然后我在小程序中列出了安装的声音:
using (var synth = new SpeechSynthesizer())
{
Console.WriteLine("Installed voices -");
foreach (var voice in synth.GetInstalledVoices())
{
var info = voice.VoiceInfo;
Console.WriteLine(" Name: " + info.Name);
Console.WriteLine(" Culture: " + info.Culture);
Console.WriteLine();
}
}
使用C#列出支持的语言:
但是当看到窗户时,我会看到更多的声音。其中丹麦人(Helle)
我的Windows中的显示语言是英语。但是我也在用丹麦语作为显示语言的Windows上尝试了我的程序。同样的结果:仍然选择了英语配音。
简而言之,我如何让SpeechSynthesis说丹麦语?