Qt TextToSpeechの変更点

Qt 6 は、フレームワークをより効率的で使いやすくするための意識的な努力の結果です。

私たちは各リリースにおいて、すべてのパブリックAPIのバイナリとソースの互換性を維持しようと努めています。しかし、Qt をより良いフレームワークにするために避けられない変更もあります。

このトピックでは、Qt TextToSpeechにおけるそれらの変更点を要約し、それらを扱うためのガイダンスを提供します。

利用可能なエンジン

Qt 5 で利用可能だったすべてのエンジンは Qt 6.4 でも利用可能です。Qt 6.4 で利用可能なエンジンの完全なリストはQt TextToSpeech Engines を参照してください。

エンジンは追加の設定パラメーターを受け取ることができるようになりました。QTextToSpeech インスタンスを作成する際に、エンジン固有のキーと値のペアをQVariantMap に渡します。

API の変更

Qt TextToSpeechモジュールの基本的な統合とクリーンアップが行われました。Qt 6 に切り替えるための移植作業は最小限で済むはずです。

QTextToSpeech クラス

QTextToSpeech::State enum 値BackendErrorError に改名されました。詳細なエラー情報はQTextToSpeech::errorReason() とQTextToSpeech::errorString() から入手できます。

新しいengine プロパティでは、初期化されたQTextToSpeech オブジェクトのエンジンを変更できます。

pause およびQTextToSpeech::stop スロットはQTextToSpeech::BoundaryHint enum 値を取ります。これにより、PMF構文を使用するシグナル/スロット接続において、シグナルにこれまで無視されていたパラメータがある場合、コンパイルが中断されます:

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

パラメータなしでシグナルに接続するか、ラムダを使用してそれぞれのスロット・メソッドを明示的に呼び出してください:

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

QVoiceクラス

QVoice クラスを使用する既存のコードは、以前と同様に動作します。QVoice オブジェクトは、QDataStream を介してシリアライズできるようになりました。

QTextToSpeechEngine および QTextToSpeechPlugin クラス

これらのクラスはパブリック API から削除されました。これらのクラスはまだ存在し、利用可能なエンジン実装によって使用されていますが、ドキュメント化されサポートされている API の一部ではなく、将来のリリースで変更される可能性があります。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。