您现在的位置是:网站首页> C/C++

QT的tts

  • C/C++
  • 2022-03-28
  • 1248人已阅读
摘要

QT += texttospeech


#include <QTextToSpeech>

Form1::Form1(QWidget* parent)

: QMainWindow(parent){


ui.setupUi(this);

// 创建TTS语音对象(尽量用new创建)

QTextToSpeech* tts= new QTextToSpeech(this);

// 发出声音

//tts->say(QString::fromLocal8Bit("你好!世界"));

       tts->say(tr("你好!世界"));

//

// 其他

//

//获取当前所有可用的语音包列表

QVector<QVoice> voiceList = tts->availableVoices();

// 遍历所有语音包名称

for each (QVoice voi in voiceList){

QString voiceName = voi.name();

}

//获取当前的语速、音量、正在使用的语音包

double currentRate = tts->rate();

double currentVolume = tts->volume();

QString currentVoiceName = tts->voice().name();

//修改参数

tts->setRate(55); //设置语速

tts->setVolume(0.5); //设置音量( 范围 0.0 至 1.0 )

for each (QVoice voi in voiceList)

{

if (QString::compare(voi.name(), "Microsoft Huihui Desktop") == 0)  //寻找名为【Microsoft Huihui Desktop】的语音包

tts->setVoice(voi); //设置语音包

break;

}

//tts->say(QString::fromLocal8Bit("你好!world "));

tts->say(tr("你好!world "));

}


Top