Text-to-speech em GoldenDict

0

Eu sei como adicionar recurso de texto-fala para GoldenDict no Linux , mas eu procurei em todos os lugares por uma solução para o Windows, e não encontrei nada.

    
por Mohammad Dehghan 11.01.2018 / 20:24

1 resposta

0

A mesma solução deve funcionar no Windows, mas você precisa de algo equivalente a espeak .

Aqui está um trecho do PowerShell que, usando classes .NET, lê algum texto:

Add-Type -AssemblyName System.speech
$speak = New-Object System.Speech.Synthesis.SpeechSynthesizer
$speak.Speak('Hello.')

Aqui está o comando equivalente que pode ser executado no prompt de comando do Windows (cmd.exe):

PowerShell -Command "Add-Type –AssemblyName System.Speech; (New-Object System.Speech.Synthesis.SpeechSynthesizer).Speak('hello');"

Usando o comando acima (e substituindo 'hello' por '% GDWORD%'), e as etapas mencionadas em post acima , podemos conseguir a mesma coisa.

Aqui estão os passos completos:

  1. Abra o GoldenDict e pressione F3 para abrir a janela Dicionários .

  2. Na guia Origens , selecione a guia Programas .

  3. Clique no botão Adicionar , selecione Áudio para a coluna Tipo , digite algum nome ("tts" por exemplo) no > Nome , e o seguinte comando para a coluna Linha de Comando :

    PowerShell -Command "Add-Type –AssemblyName System.Speech; (New-Object System.Speech.Synthesis.SpeechSynthesizer).Speak('%GDWORD%');"
    
  4. Não se esqueça de marcar a caixa Ativado .

  5. Clique em OK

Isso usa a voz padrão no Windows. Se você quiser usar uma voz feminina, use o seguinte comando:

PowerShell -Command "Add-Type –AssemblyName System.Speech; $s=(New-Object System.Speech.Synthesis.SpeechSynthesizer); $s.SelectVoiceByHints(2); $s.Speak('%GDWORD%');"

Configurar a voz é fácil, se você é um programador .NET e conhece o PowerShell.

    
por 11.01.2018 / 20:49