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.
Miscellaneous

Neueste Beiträge

Vom Sub-Agenten zum Schwarm - Kimi K3 – das Modell hinter dem Agenten, Teil 5
Mehr Agenten versprechen mehr Tempo, vervielfachen aber auch Abstimmung und Risiko. Ob aus paralleler Aktivität tatsächlich Fortschritt entsteht, entscheidet sich dort, wo spektakuläre Schwarmdemos meist enden.
5 Minuten
CartoType: Einsatz mit Windows Forms - Mapping mit CartoType, Teil 2
Der Big-Tech-freie Kartendienst CartoType kann dazu beitragen, Anwendungen mit Maps-Diensten unabhängiger von Google, Apple und Co. zu machen. In diesem Beitrag soll das System in einer Windows-Forms-Applikation ins Leben gerufen werden.
5 Minuten
7. Sep 2026
Sichtkontakt: Coding-Driven Design - Kimi K3 – das Modell hinter dem Agenten, Teil 4
Zwischen fehlerfrei kompiliert und überzeugend gestaltet liegt eine Lücke, die reine Codeanalyse kaum erfasst. Sobald ein Agent seine eigene Oberfläche betrachtet, beginnt eine andere Art der Entwicklung mit neuen Möglichkeiten, aber auch neuen Maßstäben.
5 Minuten

Das könnte Dich auch interessieren

MessagePack: JSON als Binär-Image - Best of NuGet, Teil 10
Das Serialisierungsformat MessagePack wurde – anders als JSON – konsequent auf die Bedürfnisse von Maschinen und damit auch auf höchstmögliche Kompaktheit optimiert. Der Vorteil: Ein geringeres zu übertragendes Datenvolumen führt vor allem in IoT-nahen Anwendungen direkt zu geringeren Kosten.
6 Minuten
17. Aug 2026
Wiederholend wie ein Papagei: Polly - Best of NuGet, Teil 8
Viele Probleme der Systemtechnik lassen sich durch wiederholtes Versuchen oder durch Rate Limiting lösen. Die .NET-Bibliothek Polly stellt Entwicklern hierfür verschiedenste Maßnahmen zur Resilienz-Steigerung in Form von schlüsselfertigen Bausteinen zur Verfügung.
6 Minuten
10. Aug 2026
.NET-Anbindung für die Llama-KI - LLamaSharp
Open-Source-KI auf dem lokalen Gerät nutzen – mit handhabbarem Speicherbedarf und optionalem Zugriff auf externe Datenquellen.
8 Minuten
13. Jan 2025
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige