【问题标题】:What is the most effective way of making speech synthesizer pronounce the date right?使语音合成器正确发音的最有效方法是什么?
【发布时间】:2017-03-25 12:46:37
【问题描述】:

我正在用 C# 编写一个语音合成程序,我正在使用两台机器进行调试。机器一的文化名称为“English (United Kingdom)”,系统日期显示为“25/03/2017”,机器二的文化名称为“English (United Kingdom)”,系统日期显示为“03/25/2017” ”。使用 Microsoft David Desktop 作为语音合成器语音时,前者发音为“25 slash 03 slash 2017”,后者发音为“25th March 2017”。另一方面,在使用 Microsoft Hazel Desktop 时,前者发音为“25th March 2017”,后者发音为“03 slash 25 slash 2017”。我知道 Hazel 是英国的英国声音,而 David 是美国的英国声音。无论系统文化是英国还是美国,是否有一种有效的方法可以让所有英语语音都正确发音日期?

【问题讨论】:

  • 您是否考虑过通过提供文字日期来消除歧义?
  • 我正在使用“System.DateTime.Now.ToShortDateString()”来获取当前日期。

标签: c# text-to-speech speech-synthesis speechsynthesizer


【解决方案1】:

考虑使用DateTime.ToLongDateString() methodSystem.DateTime.Now.ToLongDateString() 2017 年 4 月 14 日星期五。

这应该可以解决您使用不同语音合成声音的问题,但是,您必须注意,您将从该方法获得的字符串格式将取决于您设置的CultureInfo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-14
    • 2012-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-12
    相关资源
    最近更新 更多