Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

.NET/VB: Texte vorlesen lassen

Manchmal ist es sinnvoll, einen Text nicht nur anzuzeigen, sondern ihn vom Computer vorlesen zu lassen. Beispielsweise, wenn man für eine Kinder-App einem vor sich hin dösenden Bären lustige Sprüche ins Maul legen will.
Zugegeben, die in Windows vorinstallierten Stimmen sind nicht gerade berauschende Erzähler, aber man kann die Text-to-Speach-Engines in jedem seiner Programme einsetzen. Das .NET Framework stellt dafür im Namensraum SpeechSynthesizer geeignete Klassen und Methoden zur Verfügung. Beispielsweise liefert die Methode SpeechSynthesizer.GetInstalledVoices() die verfügbaren Stimmen. Auf meinem Windows-10-Rechner sind das Hedda (deutsch) und Zira (englisch). Der Test auf die vorinstallierten Voices klappt so:
Private Sub MainWindow_Loaded(...) Handles Me.Loaded 
...
  Try
    synthesizer = New SpeechSynthesizer()
    Dim Stimmen As String = ""
    For Each Voice In synthesizer.GetInstalledVoices()
      Stimmen += Voice.VoiceInfo.Name + " | " +
                 Voice.VoiceInfo.Culture.ToString + vbCrLf
    Next
    MsgBox(Stimmen)

  Catch ex As Exception
  End Try
...
End Sub
 
Meine Windows-10-Anwendung ist ein Bild von einem Bären, dem Kids Fragen stellen können. Die Antworten darauf werden aus rund 150 Vorgaben per Zufall ausgewählt. Fast immer kommt etwas lustiges dabei heraus. Dass der Bär per Computerstimme antwortet, klappt mit Speak(text):
Private Sub Speak(ByVal text As String)
  synthesizer.SelectVoice("Microsoft Hedda Desktop")
  'synthesizer.SelectVoice("Microsoft Zira Desktop") spricht englisch

  synthesizer.Volume = 80
  synthesizer.Rate = 1synthesizer.SpeakAsync(text)
End Sub
 
Extra-Tipp: In der Registry gibt es oft noch weitere Text-to-Speach-Engines (bei mir: Katja und Stefan) die aber nicht gentutzt werden können. Diese Anleitung zeigt, wie man sie dennoch nutzen kann.

Neueste Beiträge

Meine Ziele – deine Ziele – unsere Ziele
Verfolgt ein Entwicklungsteam gemeinsame Ziele, so kommt, auch bei sehr erfolgreichen Teams, irgendwann der Zeitpunkt, wo die individuellen Ziele einzelner Mitglieder in den Vordergrund treten und das Team gefährden. Warum ist das so, und wie gehen wir damit angemessen um?
7 Minuten
14. Aug 2025
Dokumente in MongoDB speichern
Der GridFS-Speicher als Fundament für KI-gestützte .NET-Anwendungen
6 Minuten
13. Aug 2025
Browser-Apps mit Avalonia entwickeln - Avalonia
Klassische UI-Frameworks finden ihren Weg in den Browser
7 Minuten
11. Aug 2025
Miscellaneous

Das könnte Dich auch interessieren

Sicher ist sicher - Azure DevOps Pipelines Security
Als integraler Bestandteil der Entwicklungsumgebung ist Azure DevOps Pipelines oft Ziel von Angriffen. Da ist es gut zu wissen, wo die Schwachstellen des Systems liegen.
14 Minuten
16. Jun 2025
CodeProject.AI Server in neuer Version - Lokaler AI-Server
CodeProject.AI Server (jetzt in Version 2.1.10) ist ein lokal installierter, selbstgehosteter, schneller, kostenloser und Open Source Artificial Intelligence Server für jede Plattform und jede Sprache.
2 Minuten
Für Einsteiger: Backend-Webentwicklung mit .NET - Microsoft
Auf YouTube bietet Microsoft eine Videoserie für Einsteiger in die Backend-Webentwicklung mit .NET.
2 Minuten
13. Feb 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige