加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

文字转换为语音VB.NEt实现

发布时间:2020-12-17 07:36:24 所属栏目:百科 来源:网络整理
导读:ImportsSystem.Speech.SynthesisImportsSpeechLibPublicClassForm1PublicSubNew()'此调用是Windows窗体设计器所必需的。InitializeComponent()'在InitializeComponent()调用之后添加任何初始化。EndSub'分别用两种方法实现DimssAsSpeechSynthesizer'定义一个
ImportsSystem.Speech.Synthesis
ImportsSpeechLib


PublicClassForm1
PublicSubNew()
'此调用是Windows窗体设计器所必需的。
InitializeComponent()
'在InitializeComponent()调用之后添加任何初始化。
EndSub
'分别用两种方法实现
DimssAsSpeechSynthesizer'定义一个语音引擎访问全局变量
DimvoiceAsSpVoice=NewSpVoice'调用第三方工具库SpeechLib
PrivateSubForm1_Load(senderAsObject,eAsEventArgs)HandlesMyBase.Load
ss=NewSpeechSynthesizer()'实例化
DimvoicestringAsString=""'定义一个字符串
ForEachivAsInstalledVoiceInss.GetInstalledVoices()'遍历已安装的语音引擎
ComboxVoice.Items.Add(iv.VoiceInfo.Name)'将其名字添加到组合框
Next
ComboxVoice.SelectedIndex=0'默认显示第一个
EndSub

PrivateSubButtonRead_Click(senderAsObject,eAsEventArgs)HandlesButtonRead.Click
voice.Voice=voice.GetVoices(String.Empty,String.Empty).Item(0)'设置中文语音
'voice.Voice=voice.GetVoices(String.Empty,String.Empty).Item(1)'设置英文语音,只读英文
'voice.Rate=trackBarSpeed.Value'设置语速
'voice.Volume=trackBarVolumn.Value'设置音量
ss.SelectVoice(ComboxVoice.SelectedItem)'选择语音引擎
ss.Rate=trackBarSpeed.Value'设置语速
ss.Volume=trackBarVolumn.Value'设置音量
'voice.Speak(txtMsg.Text,SpeechVoiceSpeakFlags.SVSFDefault)'同步朗读
'voice.Speak(txtMsg.Text,SpeechVoiceSpeakFlags.SVSFlagsAsync)'异步朗读
ss.SpeakAsync(txtMsg.Text)'异步发出语音

EndSub

PrivateSubButtonPause_Click(senderAsObject,eAsEventArgs)HandlesButtonPause.Click
ss.Pause()'暂停播放
'voice.Pause()
EndSub

PrivateSubButtonContinue_Click(senderAsObject,eAsEventArgs)HandlesButtonContinue.Click
ss.Resume()'继续播放
'voice.Resume()
EndSub

PrivateSubButtonRecord_Click(senderAsObject,eAsEventArgs)HandlesButtonRecord.Click
DimssAsSpeechSynthesizer=NewSpeechSynthesizer()'定义一个局部变量
ss.Rate=trackBarSpeed.Value
ss.Volume=trackBarVolumn.Value
DimsfdAsSaveFileDialog=NewSaveFileDialog()'定义一个文件保存提示框,并且实例化
sfd.Filter="WaveFiles|*.wav"'设置文件类型为语音文件(.wav)
Ifsfd.ShowDialog=DialogResult.OKThen'如果选择了文件名
ss.SetOutputToWaveFile(sfd.FileName)'输出音频文件
ss.Speak(txtMsg.Text)
ss.SetOutputToDefaultAudioDevice()
MessageBox.Show("完成录音~~","提示")
EndIf
EndSub

PrivateSubButtonClose_Click(senderAsObject,eAsEventArgs)HandlesButtonClose.Click
Application.Exit()'应用退出
EndSub
EndClass

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读