Auf dieser Seite

Änderungen an Qt TextToSpeech

Qt 6 sind das Ergebnis bewusster Bemühungen, das Framework effizienter und benutzerfreundlicher zu gestalten.

Wir bemühen uns, bei jeder Version die Binär- und Quellkompatibilität für alle öffentlichen APIs zu gewährleisten. Einige Änderungen waren jedoch unvermeidlich, um Qt zu einem besseren Framework zu machen.

In diesem Abschnitt fassen wir diese Änderungen zusammen Qt TextToSpeechund geben Hinweise zu deren Handhabung.

Verfügbare Engines

Alle Engines, die in Qt 5 verfügbar waren, sind auch in Qt 6.4 verfügbar. Eine vollständige Liste der in Qt 6.4 verfügbaren Engines finden Sie unter „Qt TextToSpeech -Engines“.

Engines können nun zusätzliche Konfigurationsparameter entgegennehmen. Übergeben Sie beim Erstellen einer „ QTextToSpeech “-Instanz ein „ QVariantMap “ mit enginespezifischen Schlüssel-Wert-Paaren.

API-Änderungen

Das Qt TextToSpeech Modul wurde grundlegend konsolidiert und bereinigt. Der Portierungsaufwand für den Wechsel zu Qt 6 sollte minimal sein.

Die Klasse „QTextToSpeech“

Der Enum-Wert „ QTextToSpeech::State “ BackendError wurde in „ Error “ umbenannt. Detaillierte Fehlerinformationen sind über QTextToSpeech::errorReason() und QTextToSpeech::errorString() verfügbar.

Die neue Eigenschaft „ engine “ ermöglicht das Ändern der Engine bei einem initialisierten „ QTextToSpeech “-Objekt.

Die Slots „ pause “ und „ QTextToSpeech::stop “ erwarten einen Wert aus der Enumeration „ QTextToSpeech::BoundaryHint “. Dies führt zu einer Kompilierungsfehler bei Signal-/Slot-Verbindungen, die die PMF-Syntax verwenden, wenn das Signal Parameter enthält, die zuvor ignoriert wurden:

connect(stopButton, &QPushButton, tts, &QTextToSpeech::stop);

Verbinden Sie sich entweder mit einem Signal ohne Parameter oder verwenden Sie ein Lambda und rufen Sie die entsprechende Slot-Methode explizit auf:

connect(stopButton, &QPushButton, tts, [tts]{ tts->stop(); });

Die Klasse „QVoice“

Bestehender Code, der die Klasse „ QVoice “ verwendet, funktioniert weiterhin wie bisher. „ QVoice “-Objekte können nun über „ QDataStream “ serialisiert werden.

Die Klassen `QTextToSpeechEngine` und `QTextToSpeechPlugin`

Diese Klassen wurden aus der öffentlichen API entfernt. Sie existieren weiterhin und werden von den verfügbaren Engine-Implementierungen verwendet, sind jedoch nicht Teil der dokumentierten und unterstützten API und werden sich in zukünftigen Versionen wahrscheinlich ändern.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.