c # GetInstalledVoices на определенном языке - PullRequest
0 голосов
/ 21 мая 2018

Я могу получить список всех голосов, установленных в моей системе Windows 10, с:

var voiceCollection = synthesizer.GetInstalledVoices();

, и я могу получить список установленных голосов из определенной локали, например:

var voiceCollection = synthesizer.GetInstalledVoices(new CultureInfo("es-ES"));

Приведенная выше строка, однако, не вернет все установленные es-MEX голоса

Мой вопрос - есть ли способ получить список всех установленных голосов с определенный язык - например, все голоса, которые испанский , независимо от их конкретной локали?

1 Ответ

0 голосов
/ 21 мая 2018

В общем случае вы можете попробовать Linq , чтобы отфильтровать голоса:

using System.Linq;

... 

List<InstalledVoice> voices = synthesizer
  .GetInstalledVoices()                                          // all voices
  .Where(voice => voice.VoiceInfo.Culture.Name.StartsWith("es")) // but filtered
  .ToList();                                                     // organized in a list
...