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

Übersehen seit .NET 8: TimeProvider für testbare Zeit
Seit .NET 8 gibt es TimeProvider als offizielle Zeit-Abstraktion. Doch noch zweieinhalb Jahre später ist sie in vielen Projekten unbekannt.
6 Minuten
1. Jul 2026
RAG mit SQL Server 2025: KI-Antworten mit Kontext - SQL Server 2025 und Microsoft Azure AI, Teil 1
RAG als Architekturpattern verbindet Sprachmodelle mit der realen Wissensbasis eines Unternehmens. Seine pragmatische Umsetzung im Microsoft-Stack: Azure OpenAI für Sprache, SQL Server 2025 und Azure AI Search für Semantik und .NET 10 für Integration und Orchestrierung.
6 Minuten
29. Jun 2026
Design mit KI - UX goes Dev, Teil 2
Wie die Integration künstlicher Intelligenz in Designwerkzeuge die Art und Weise verändert, in der digitale Benutzeroberflächen entstehen.
6 Minuten
2. Jul 2026

Das könnte Dich auch interessieren

Übersehen seit .NET 8: TimeProvider für testbare Zeit
Seit .NET 8 gibt es TimeProvider als offizielle Zeit-Abstraktion. Doch noch zweieinhalb Jahre später ist sie in vielen Projekten unbekannt.
6 Minuten
1. Jul 2026
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Elektronische Schaltkreise im Browser simulieren - Simulation
Statt mit Steckfeld oder Lötkolben kann man auf dieser Website Schaltungen per Drag and Drop zusammenstellen und deren Verhalten testen.
2 Minuten
26. Jul 2018
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige