我想用Visual C#/ C ++编写一个简单的Windows应用程序,使用户可以输入不同的文本段,然后按一组热键随时收听TTS中的各个文本段。在后台运行甚至全屏应用程序处于焦点状态时,程序应接受热键。
用例示例:用户输入“ hello world”并将其保存为第一个文本段,然后输入“堆栈溢出”并将其另存为第二个文本段。用户可以切换到另一个程序,然后按热键CTRL-1听到TTS说“ hello world”,或者按CTRL-2听到TTS说“堆栈溢出”。该程序当然应该能够完全脱机运行(以防影响任何建议)
附带说明,我对使用Visual进行编程非常陌生,但是在C#/ C +中具有足够的背景知识,因此,即使我主要是在TTS方面寻求帮助,我也乐于接受任何建议如果有人以前做过这种事情。
最佳答案
如果您想谈谈C#,请使用Introp.SpeechLib.dll
例如:
private void ReadText()
{
int iCounter = 0;
while (Convert.ToInt32(numericUpDown1.Value) > iCounter)
{
SpVoice spVoice = new SpVoice();
spVoice.Speak("Hello World", SpeechVoiceSpeakFlags.SVSFPurgeBeforeSpeak);
spVoice.WaitUntilDone(Timeout.Infinite);
iCounter = iCounter + 1;
}
}
阅读此:Speech Technologies