VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > python入门教程 >
  • 文字转换为语音VB.NEt实现

 

  1. Imports System.Speech.Synthesis
  2.  
    Imports SpeechLib
  3.  
  4.  
  5.  
    Public Class Form1
  6.  
        Public Sub New()
  7.  
            ' 此调用是 Windows 窗体设计器所必需的。
  8.  
            InitializeComponent()
  9.  
            ' 在 InitializeComponent() 调用之后添加任何初始化。
  10.  
        End Sub
  11.  
        '分别用两种方法实现
  12.  
        Dim ss As SpeechSynthesizer '定义一个语音引擎访问全局变量
  13.  
        Dim voice As SpVoice = New SpVoice '调用第三方工具库SpeechLib
  14.  
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  15.  
            ss = New SpeechSynthesizer() '实例化
  16.  
            Dim voicestring As String = "" '定义一个字符串
  17.  
            For Each iv As InstalledVoice In ss.GetInstalledVoices() '遍历已安装的语音引擎
  18.  
                ComboxVoice.Items.Add(iv.VoiceInfo.Name) '将其名字添加到组合框
  19.  
            Next
  20.  
            ComboxVoice.SelectedIndex = 0 '默认显示第一个
  21.  
        End Sub
  22.  
  23.  
        Private Sub ButtonRead_Click(sender As Object, e As EventArgs) Handles ButtonRead.Click
  24.  
            voice.Voice = voice.GetVoices(String.Empty, String.Empty).Item(0) '设置中文语音
  25.  
            'voice.Voice = voice.GetVoices(String.Empty, String.Empty).Item(1) '设置英文语音,只读英文
  26.  
            ' voice.Rate = trackBarSpeed.Value '设置语速
  27.  
            'voice.Volume = trackBarVolumn.Value '设置音量
  28.  
            ss.SelectVoice(ComboxVoice.SelectedItem) '选择语音引擎
  29.  
            ss.Rate = trackBarSpeed.Value '设置语速
  30.  
            ss.Volume = trackBarVolumn.Value '设置音量
  31.  
            'voice.Speak(txtMsg.Text, SpeechVoiceSpeakFlags.SVSFDefault) '同步朗读
  32.  
            ' voice.Speak(txtMsg.Text, SpeechVoiceSpeakFlags.SVSFlagsAsync) '异步朗读
  33.  
            ss.SpeakAsync(txtMsg.Text) '异步发出语音
  34.  
  35.  
        End Sub
  36.  
  37.  
        Private Sub ButtonPause_Click(sender As Object, e As EventArgs) Handles ButtonPause.Click
  38.  
            ss.Pause() '暂停播放
  39.  
            'voice.Pause()
  40.  
        End Sub
  41.  
  42.  
        Private Sub ButtonContinue_Click(sender As Object, e As EventArgs) Handles ButtonContinue.Click
  43.  
            ss.Resume() '继续播放
  44.  
            'voice.Resume()
  45.  
        End Sub
  46.  
  47.  
        Private Sub ButtonRecord_Click(sender As Object, e As EventArgs) Handles ButtonRecord.Click
  48.  
            Dim ss As SpeechSynthesizer = New SpeechSynthesizer() '定义一个局部变量
  49.  
            ss.Rate = trackBarSpeed.Value
  50.  
            ss.Volume = trackBarVolumn.Value
  51.  
            Dim sfd As SaveFileDialog = New SaveFileDialog() '定义一个文件保存提示框,并且实例化
  52.  
            sfd.Filter = "Wave Files|*.wav" '设置文件类型为语音文件(.wav)
  53.  
            If sfd.ShowDialog = DialogResult.OK Then '如果选择了文件名
  54.  
                ss.SetOutputToWaveFile(sfd.FileName) '输出音频文件
  55.  
                ss.Speak(txtMsg.Text)
  56.  
                ss.SetOutputToDefaultAudioDevice()
  57.  
                MessageBox.Show("完成录音~~", "提示")
  58.  
            End If
  59.  
        End Sub
  60.  
  61.  
        Private Sub ButtonClose_Click(sender As Object, e As EventArgs) Handles ButtonClose.Click
  62.  
            Application.Exit() '应用退出
  63.  
        End Sub
  64.  
    End Class
 

 

转载于:https://blog.51cto.com/10882708/1890438


  1. Imports System.Speech.Synthesis
  2.  
    Imports SpeechLib
  3.  
  4.  
  5.  
    Public Class Form1
  6.  
        Public Sub New()
  7.  
            ' 此调用是 Windows 窗体设计器所必需的。
  8.  
            InitializeComponent()
  9.  
            ' 在 InitializeComponent() 调用之后添加任何初始化。
  10.  
        End Sub
  11.  
        '分别用两种方法实现
  12.  
        Dim ss As SpeechSynthesizer '定义一个语音引擎访问全局变量
  13.  
        Dim voice As SpVoice = New SpVoice '调用第三方工具库SpeechLib
  14.  
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  15.  
            ss = New SpeechSynthesizer() '实例化
  16.  
            Dim voicestring As String = "" '定义一个字符串
  17.  
            For Each iv As InstalledVoice In ss.GetInstalledVoices() '遍历已安装的语音引擎
  18.  
                ComboxVoice.Items.Add(iv.VoiceInfo.Name) '将其名字添加到组合框
  19.  
            Next
  20.  
            ComboxVoice.SelectedIndex = 0 '默认显示第一个
  21.  
        End Sub
  22.  
  23.  
        Private Sub ButtonRead_Click(sender As Object, e As EventArgs) Handles ButtonRead.Click
  24.  
            voice.Voice = voice.GetVoices(String.Empty, String.Empty).Item(0) '设置中文语音
  25.  
            'voice.Voice = voice.GetVoices(String.Empty, String.Empty).Item(1) '设置英文语音,只读英文
  26.  
            ' voice.Rate = trackBarSpeed.Value '设置语速
  27.  
            'voice.Volume = trackBarVolumn.Value '设置音量
  28.  
            ss.SelectVoice(ComboxVoice.SelectedItem) '选择语音引擎
  29.  
            ss.Rate = trackBarSpeed.Value '设置语速
  30.  
            ss.Volume = trackBarVolumn.Value '设置音量
  31.  
            'voice.Speak(txtMsg.Text, SpeechVoiceSpeakFlags.SVSFDefault) '同步朗读
  32.  
            ' voice.Speak(txtMsg.Text, SpeechVoiceSpeakFlags.SVSFlagsAsync) '异步朗读
  33.  
            ss.SpeakAsync(txtMsg.Text) '异步发出语音
  34.  
  35.  
        End Sub
  36.  
  37.  
        Private Sub ButtonPause_Click(sender As Object, e As EventArgs) Handles ButtonPause.Click
  38.  
            ss.Pause() '暂停播放
  39.  
            'voice.Pause()
  40.  
        End Sub
  41.  
  42.  
        Private Sub ButtonContinue_Click(sender As Object, e As EventArgs) Handles ButtonContinue.Click
  43.  
            ss.Resume() '继续播放
  44.  
            'voice.Resume()
  45.  
        End Sub
  46.  
  47.  
        Private Sub ButtonRecord_Click(sender As Object, e As EventArgs) Handles ButtonRecord.Click
  48.  
            Dim ss As SpeechSynthesizer = New SpeechSynthesizer() '定义一个局部变量
  49.  
            ss.Rate = trackBarSpeed.Value
  50.  
            ss.Volume = trackBarVolumn.Value
  51.  
            Dim sfd As SaveFileDialog = New SaveFileDialog() '定义一个文件保存提示框,并且实例化
  52.  
            sfd.Filter = "Wave Files|*.wav" '设置文件类型为语音文件(.wav)
  53.  
            If sfd.ShowDialog = DialogResult.OK Then '如果选择了文件名
  54.  
                ss.SetOutputToWaveFile(sfd.FileName) '输出音频文件
  55.  
                ss.Speak(txtMsg.Text)
  56.  
                ss.SetOutputToDefaultAudioDevice()
  57.  
                MessageBox.Show("完成录音~~", "提示")
  58.  
            End If
  59.  
        End Sub
  60.  
  61.  
        Private Sub ButtonClose_Click(sender As Object, e As EventArgs) Handles ButtonClose.Click
  62.  
            Application.Exit() '应用退出
  63.  
        End Sub
  64.  
    End Class
 

 

转载于:https://blog.51cto.com/10882708/1890438


相关教程