Lendo Texto em Visual Basic .net

Como ler texto em VB.net

Para o nosso aplicativo ler textos precisamos utilizar o Namespace System.Speech.

Antes de programar primeiro devemos verificar se no sistema está configurado as vozes.

Neste exemplo estou utilizando o Windows 10 e o Visual Studio 2019 com o Framework 4.7.2.

Clique em iniciar e depois em configurações, selecione Hora e Linguagem.

Configurações de Hora e Linguagem

Seleciona a opção Fala ou Speech e do lado direito por Gerencia Vozes ou Manage voices e clique em Adicionar vozes.

Aqui na minha configuração eu possui dois pacotes de vozes instalados.

Agora podemos criar o projeto para fazer o programa falar qualquer texto digitado em uma caixa de texto.

Criei um novo projeto de nome FalaTexto e adicionei os seguintes controles:

  • ListView – Name: lvVoz
  • TextBox – Name: txtTexto
  • Button – Name: btnLer
Projeto FalaTexto

Agora precisamos adicionar a referência do Namespace System.Speech em nosso projeto.

Clique com o botão direito sobre o nome do projeto selecion Add e clique em Reference…

Em Assemblies selecione Framework, pesquise como Speech e marque o System.Speech.

Adicionando referência System.Speech

Com as configurações feitas agora vamos para o código:

Imports System.Speech.Synthesis

Public Class Form1
    Dim falar As New SpeechSynthesizer


    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        Dim vozes = falar.GetInstalledVoices

        For Each V In vozes
            lvVoz.Items.Add(V.VoiceInfo.Name, V.VoiceInfo.Name & " - " & V.VoiceInfo.Culture.Name, 0)
        Next
    End Sub

    Private Sub btnLer_Click(sender As Object, e As EventArgs) Handles btnLer.Click
        If txtTexto.TextLength > 0 Then

            falar.SelectVoice(lvVoz.SelectedItems.Item(0).Name)

            falar.SpeakAsync(txtTexto.Text)
        End If
    End Sub
End Class

Veja o vídeo passo a passo da criação do projeto:

Projeto LerTexto em passo a passo

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *