如何在 C# Visual Studio 2010 中使用已安装的语音
本文关键字:安装 语音 2010 Visual Studio | 更新日期: 2023-09-27 17:55:58
我想在c#程序中使用已安装的男性,女性等声音。 我正在使用语音合成器和说话异步函数。请帮助我。
下面是一篇关于如何在应用程序中实现语音的简单文章:
http://www.dotnetfunda.com/articles/article828-build-your-talking-application-.aspx
作为本文的一部分,它展示了如何列出所有已安装的语音,还展示了如何在应用程序中使用所选语音。 以下是本文给出的示例代码:
List lst = new List();
foreach (InstalledVoice voice in spsynthesizer.GetInstalledVoices())
{
lst.Items.Add(voice.VoiceInfo);
}
spsynthesizer.SelectVoice(lstVoice[0].Name);
这会将所有已安装的语音放入列表中,并使用列表中的第一个语音作为所选语音。
如果你想
让你的程序说话,试着用这个:
public void Say(string say)
{
SpeechSynthesizer talker = new SpeechSynthesizer();
talker.Speak(say);
}
并像这样调用此函数: Say("Hello World"!);
确保包括:using System.Speech.Synthesis;
如果您需要获取男性或女性声音的列表,您可以执行以下操作:
private static void Main()
{
Speak(VoiceGender.Male);
Speak(VoiceGender.Female);
}
private static void Speak(VoiceGender voiceGender)
{
using (var speechSynthesizer = new SpeechSynthesizer())
{
var genderVoices = speechSynthesizer.GetInstalledVoices().Where(arg => arg.VoiceInfo.Gender == voiceGender).ToList();
var firstVoice = genderVoices.FirstOrDefault();
if (firstVoice == null)
return;
speechSynthesizer.SelectVoice(firstVoice.VoiceInfo.Name);
speechSynthesizer.Speak("How are you today?");
}
}