好多的小伙伴问我文字转语音如何转,现在提供两种方法,第一种就是用VB程序来实现,可以直接保存为MP3格式,第二中就是不需要编程技术,直接在电脑本地很简单的建立一个,有点就是不能保存MP3格式!
先看第一种
1.新建一个VB标准工程1并保存,名字自己随便写
2.建立一个text1的文本框用来放置需要转语音的文字
3.建立两个按钮,将其名称caption改为转换语音和保存MP3,按钮的文件将保持不变,如Command1/2
4.将其摆放好位置,大体界面如下图
5.鼠标双击转换语音按钮进入代码界面,在end sub 上面一行写上如下代码
Dim o As Object Set o = CreateObject("sapi.spvoice") k = o.Speak(Text1.Text)
6.返回主界面,鼠标双击保存MP3按钮进入后台代码界面,在end sub上面写上如下代码
Const SSFMCreateForWrite = 3 strText = Text1.Text '这里输入要输出的声音 Set objVoice = CreateObject("SAPI.SpVoice") Set objFile = CreateObject("SAPI.SpFileStream.1") objFile.Open "D:\文字转语音.mp3", SSFMCreateForWrite '输出路径 Set objVoice.AudioOutputStream = objFile objVoice.Rate = 1 objVoice.Volume = 100 '音量 objVoice.AllowAudioOutputFormatChangesOnNextSet = False objVoice.Speak strText objFile.Close Set objVoice.AudioOutputStream = Nothing Set objVoice = Nothing MsgBox "语音文件已经为你保存在电脑的D盘下", 0, "温馨提示你"
完整代码
至此大功告成,运行测试,在文本框中写入文字点击转换语音,神奇的效果很不错吧,比其他网站上转换的要逼真吧,下面是完整的代码
Private Sub Command1_Click() Dim o As Object Set o = CreateObject("sapi.spvoice") k = o.Speak(Text1.Text) End Sub '以下是保存MP3 Private Sub Command2_Click() Const SSFMCreateForWrite = 3 strText = Text1.Text '这里输入要输出的声音 Set objVoice = CreateObject("SAPI.SpVoice") Set objFile = CreateObject("SAPI.SpFileStream.1") objFile.Open "D:\文字转语音.mp3", SSFMCreateForWrite '输出路径 Set objVoice.AudioOutputStream = objFile objVoice.Rate = 1 objVoice.Volume = 100 '音量 objVoice.AllowAudioOutputFormatChangesOnNextSet = False objVoice.Speak strText objFile.Close Set objVoice.AudioOutputStream = Nothing Set objVoice = Nothing MsgBox "语音文件已经为你保存在电脑的D盘下", 0, "温馨提示你" End Sub
别忘记了,看代码就知道文件是保存在D盘的根目录下的文字转语音.MP3
来看下第二种
1.新建记事本功能,文件名随便写
2.在记事本里面写上如下代码
CreateObject("SAPI.SpVoice").Speak "I LOVE YOU"
3.保存后退出
4.修改记事本的文件后缀为vbs
5.打开听效果吧!
想要第一种的文档可以在留言簿给我留下你的邮箱,我免费发给你哦!