⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tts_sapi5.cpp

📁 Powerful and Portable GPS application -- support Linux, Windows, Windows CE GPS navigation and Map m
💻 CPP
字号:
/* *  Roadnav *  TTS_SAPI5.cpp * *  Copyright (c) 2004 - 2007 Richard L. Lynch <rllynch@users.sourceforge.net> * *  This program is free software; you can redistribute it and/or *  modify it under the terms of version 2 of the GNU General Public License *  as published by the Free Software Foundation. * *  This program is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *  GNU General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program; if not, write to the Free Software *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA *////////////////////////////////////////////////////////////////////////////////// \file////// Text to speech functions using Microsoft SAPI 5/////////////////////////////////////////////////////////////////////////////////#ifdef HAVE_CONFIG_H#  include <config.h>#endif#ifdef _MSC_VER#pragma warning(disable: 4786)#endif#ifdef USE_SAPI5#include <wx/wx.h>#include "TTS_SAPI5.h"//////////////////////////////////////////////////////////////////////////////////// \brief Initialize TTS/////////////////////////////////////////////////////////////////////////////////TTS_SAPI5::TTS_SAPI5(){	m_cpVoice = NULL;		if (FAILED(m_cpVoice.CoCreateInstance(CLSID_SpVoice)))	{		m_strLastError = wxT("Error initializing Microsoft SAPI 5");		return;	}}//////////////////////////////////////////////////////////////////////////////////// \brief Clean up TTS/////////////////////////////////////////////////////////////////////////////////TTS_SAPI5::~TTS_SAPI5(){	if (m_cpVoice)		m_cpVoice.Release();	m_cpVoice = NULL;}//////////////////////////////////////////////////////////////////////////////////// \brief Name of this TTS engine/////////////////////////////////////////////////////////////////////////////////wxString TTS_SAPI5::Name(){	return wxT("Microsoft SAPI 5");}//////////////////////////////////////////////////////////////////////////////////// \brief Say some stuff using TTS/////////////////////////////////////////////////////////////////////////////////ITTS::ETTSStatus TTS_SAPI5::Speak(const wxString & strText){	if (!m_cpVoice)	{		// not initialized (MS SAPI 5 probably not installed)		return ITTS::TTSErrorDisableGPS;	}	m_cpVoice->Speak(strText.wc_str(*wxConvCurrent), 0, NULL);	return ITTS::TTSStatusOK;}//////////////////////////////////////////////////////////////////////////////////// \brief Retrieve last error message/////////////////////////////////////////////////////////////////////////////////wxString TTS_SAPI5::GetLastError(){	return m_strLastError;}//////////////////////////////////////////////////////////////////////////////////// \brief Retrieve engine status/////////////////////////////////////////////////////////////////////////////////ITTS::ETTSStatus TTS_SAPI5::GetStatus(){	if (!m_cpVoice)	{		// not initialized (MS SAPI 5 probably not installed)		return ITTS::TTSErrorDisableGPS;	}	return ITTS::TTSStatusOK;}#endif // #ifdef USE_SAPI5

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -