SpeechSynthesizer::SelectVoiceByHints Method (VoiceGender, VoiceAge, Int32, CultureInfo^)
Selects a voice with a specific gender, age, and locale, based on the position in which the voices are ordered.
Assembly: System.Speech (in System.Speech.dll)
public: void SelectVoiceByHints( VoiceGender gender, VoiceAge age, int voiceAlternate, CultureInfo^ culture )
Parameters
- gender
-
Type:
System.Speech.Synthesis::VoiceGender
The gender of the voice to select.
- age
-
Type:
System.Speech.Synthesis::VoiceAge
The age of the voice to select.
- voiceAlternate
-
Type:
System::Int32
The position of the voice to select.
- culture
-
Type:
System.Globalization::CultureInfo^
The locale of the voice to select.
The SpeechSynthesizer object finds voices whose Gender, Age, and Culture properties match the gender, age, and culture parameters. The SpeechSynthesizer counts the matches it finds, and returns the voice when the count equals the voiceAlternate parameter.
Microsoft Windows and the System.Speech API accept all valid language-country codes. To perform text-to-speech using the language specified in the culture parameter, a speech synthesis engine that supports that language-country code must be installed. The speech synthesis engines that shipped with Microsoft Windows 7 work with the following language-country codes:
en-US. English (United States)
zh-CN. Chinese (China)
zh-TW. Chinese (Taiwan)
Two-letter language codes such as "en" are also permitted.
When an application calls GetInstalledVoices, the method verifies that each of the voices it finds in the registry meets certain minimum criteria. For any voice that fails verification, GetInstalledVoices sets its Enabled property to False. An application cannot select a voice whose Enabled property is False. Typically, applications will not set a voice’s Enabled property.
To select a voice based on other characteristics, see the other SelectVoiceByHints overloads.
To select a voice by name, use the SelectVoice method.
Available since 3.0