SpeechSynthesizer.GetInstalledVoices Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Sistemde yüklü olan konuşma birleştirme (metin okuma) sesleri koleksiyonunu döndürür.
Aşırı Yüklemeler
GetInstalledVoices() |
Yüklü konuşma sensonu (metinden konuşmaya) seslerini döndürür. |
GetInstalledVoices(CultureInfo) |
Belirli bir yerel ayarı destekleyen tüm yüklü konuşma birleştirme (metin okuma) seslerini döndürür. |
Açıklamalar
Bir uygulama çağırdığında GetInstalledVoices , yöntemi, kayıt defterinde bulduğu her bir sesi (metin okuma için altyapılar), belirli minimum ölçütlere uygun olduğunu doğrular. Doğrulama başarısız olan tüm sesleriniz için GetInstalledVoices Enabled özelliğini olarak ayarlar False
. Bir uygulama özelliği olan bir ses seçemezsiniz Enabled False
. Genellikle, uygulamalar bir sesin özelliğini ayarlayamaz Enabled .
GetInstalledVoices()
Yüklü konuşma sensonu (metinden konuşmaya) seslerini döndürür.
public:
System::Collections::ObjectModel::ReadOnlyCollection<System::Speech::Synthesis::InstalledVoice ^> ^ GetInstalledVoices();
public System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice> GetInstalledVoices ();
member this.GetInstalledVoices : unit -> System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice>
Public Function GetInstalledVoices () As ReadOnlyCollection(Of InstalledVoice)
Döndürülenler
Sistemde yüklü olan seslerin salt okunurdur bir koleksiyonunu döndürür.
Örnekler
Aşağıdaki örnek, bir nesne Başlatan konsol uygulamasının bir parçasıdır SpeechSynthesizer ve konsola yüklü olan seslerin bir listesini (konuşma sensimi için altyapılar) görüntüler ve her ses için kullanılabilen bilgileri gösterir.
using System;
using System.Speech.Synthesis;
using System.Speech.AudioFormat;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the SpeechSynthesizer.
using (SpeechSynthesizer synth = new SpeechSynthesizer())
{
// Output information about all of the installed voices.
Console.WriteLine("Installed voices -");
foreach (InstalledVoice voice in synth.GetInstalledVoices())
{
VoiceInfo info = voice.VoiceInfo;
string AudioFormats = "";
foreach (SpeechAudioFormatInfo fmt in info.SupportedAudioFormats)
{
AudioFormats += String.Format("{0}\n",
fmt.EncodingFormat.ToString());
}
Console.WriteLine(" Name: " + info.Name);
Console.WriteLine(" Culture: " + info.Culture);
Console.WriteLine(" Age: " + info.Age);
Console.WriteLine(" Gender: " + info.Gender);
Console.WriteLine(" Description: " + info.Description);
Console.WriteLine(" ID: " + info.Id);
Console.WriteLine(" Enabled: " + voice.Enabled);
if (info.SupportedAudioFormats.Count != 0)
{
Console.WriteLine( " Audio formats: " + AudioFormats);
}
else
{
Console.WriteLine(" No supported audio formats found");
}
string AdditionalInfo = "";
foreach (string key in info.AdditionalInfo.Keys)
{
AdditionalInfo += String.Format(" {0}: {1}\n", key, info.AdditionalInfo[key]);
}
Console.WriteLine(" Additional Info - " + AdditionalInfo);
Console.WriteLine();
}
}
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Açıklamalar
Ses, sisteme yüklenen bir konuşma birleştirme altyapısıdır (metin okuma veya TTS).
Ayrıca bkz.
Şunlara uygulanır
GetInstalledVoices(CultureInfo)
Belirli bir yerel ayarı destekleyen tüm yüklü konuşma birleştirme (metin okuma) seslerini döndürür.
public:
System::Collections::ObjectModel::ReadOnlyCollection<System::Speech::Synthesis::InstalledVoice ^> ^ GetInstalledVoices(System::Globalization::CultureInfo ^ culture);
public System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice> GetInstalledVoices (System.Globalization.CultureInfo culture);
member this.GetInstalledVoices : System.Globalization.CultureInfo -> System.Collections.ObjectModel.ReadOnlyCollection<System.Speech.Synthesis.InstalledVoice>
Public Function GetInstalledVoices (culture As CultureInfo) As ReadOnlyCollection(Of InstalledVoice)
Parametreler
- culture
- CultureInfo
Sesin desteklemesi gereken yerel ayar.
Döndürülenler
Belirtilen yerel ayarı destekleyen sistemde halen yüklü olan seslerin salt okunurdur bir koleksiyonunu döndürür.
Örnekler
Aşağıdaki örnek, bir nesne Başlatan konsol uygulamasının bir parçasıdır SpeechSynthesizer ve konsola çıkış olarak en-US yerel ayarını destekleyen yüklü seslerin listesini verir.
using System;
using System.Globalization;
using System.Speech.Synthesis;
namespace SampleSynthesis
{
class Program
{
static void Main(string[] args)
{
// Initialize a new instance of the speech synthesizer.
using (SpeechSynthesizer synthesizer = new SpeechSynthesizer())
{
// Output information about all of the installed voices that
// support the en-US locale.
Console.WriteLine("Installed voices for the en-US locale:");
foreach (InstalledVoice voice in
synthesizer.GetInstalledVoices(new CultureInfo("en-US")))
{
VoiceInfo info = voice.VoiceInfo;
OutputVoiceInfo(info);
}
// Output information about the current voice.
Console.WriteLine();
Console.WriteLine("Current voice:");
OutputVoiceInfo(synthesizer.Voice);
}
Console.WriteLine();
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
// Display information about a synthesizer voice.
private static void OutputVoiceInfo(VoiceInfo info)
{
Console.WriteLine(" Name: {0}, culture: {1}, gender: {2}, age: {3}.",
info.Name, info.Culture, info.Gender, info.Age);
Console.WriteLine(" Description: {0}", info.Description);
}
}
}
Açıklamalar
Yüklü seslerin hiçbiri belirtilen yerel ayarı desteklemiyorsa, bu yöntem boş bir koleksiyon döndürür.
Microsoft Windows ve System. Speech API tüm geçerli dil-ülke kodlarını kabul eder. Kültür özelliğinde belirtilen dili kullanarak metin okuma gerçekleştirmek için, söz konusu dil-ülke kodunun yüklü olması gerekir. Microsoft Windows 7 ile birlikte gelen konuşma seniş motorları aşağıdaki dil-ülke kodlarıyla çalışır:
en-US. İngilizce (ABD)
zh-CN. Çince (Çin)
zh-TW. Çince (Tayvan)
"En" gibi iki harfli dil kodlarına de izin verilir.