![GoldenDict 中的文本转语音](https://linux22.com/image/1550585/GoldenDict%20%E4%B8%AD%E7%9A%84%E6%96%87%E6%9C%AC%E8%BD%AC%E8%AF%AD%E9%9F%B3.png)
我知道如何在 Linux 中为 GoldenDict 添加文本转语音功能,但我到处寻找适用于 Windows 的解决方案,却一无所获。
答案1
相同的解决方案应该在 Windows 中起作用,但是您需要一些等效的东西espeak
。
下面是一个 PowerShell 代码片段,它使用 .NET 类读取一些文本:
Add-Type -AssemblyName System.speech
$speak = New-Object System.Speech.Synthesis.SpeechSynthesizer
$speak.Speak('Hello.')
以下是可以在 Windows 命令提示符(cmd.exe)中运行的等效命令:
PowerShell -Command "Add-Type –AssemblyName System.Speech; (New-Object System.Speech.Synthesis.SpeechSynthesizer).Speak('hello');"
使用上述命令(并将“hello”替换为“%GDWORD%”),以及发布以上内容,我们也可以实现同样的效果。
以下是完整步骤:
打开 GoldenDict 并按F3下调出字典窗户。
在来源选项卡,选择程式标签。
点击添加按钮,选择声音的为了类型列中,输入一些名称(例如“tts”)姓名列,以及以下命令命令行柱子:
PowerShell -Command "Add-Type –AssemblyName System.Speech; (New-Object System.Speech.Synthesis.SpeechSynthesizer).Speak('%GDWORD%');"
别忘了检查已启用盒子。
单击“确定”
这将使用 Windows 中的默认声音。如果您想使用女性声音,请使用以下命令:
PowerShell -Command "Add-Type –AssemblyName System.Speech; $s=(New-Object System.Speech.Synthesis.SpeechSynthesizer); $s.SelectVoiceByHints(2); $s.Speak('%GDWORD%');"
如果您是 .NET 程序员并且了解 PowerShell,则配置语音很容易。