← Toda a documentação
Plugin

Configuração do ditado e API JavaScript

Conversão de fala em texto pela Web Speech API. Um botão de microfone na barra de ferramentas ativa e desativa a escuta; as transcrições provisórias aparecem ao vivo sob o cursor. Nenhum serviço externo — o áudio é processado pelo fornecedor de reconhecimento de fala que o navegador usar.

Ativação opcional

O recurso é opcional de propósito — mesmo nos navegadores suportados, o botão da barra de ferramentas fica oculto, a menos que você habilite o plugin. A permissão do microfone é sensível; não queremos que um ícone de microfone apareça por padrão.

var cfg = {
    dictationEnabled: true,
    dictationLang: "en-US",              // BCP-47
    dictationContinuous: true,
    dictationInterimResults: true,
    dictationAutoPunctuation: true
};
new RichTextEditor("#editor", cfg);

No Tag Helper do ASP.NET Core:

<richtextbox asp-for="Body" toolbar="default"
             enable-dictation="true"
             dictation-lang="en-US"
             dictation-continuous="true"
             dictation-auto-punctuation="true" />

API JavaScript

editor.dictation.start();
editor.dictation.stop();
editor.dictation.toggle();
editor.dictation.isListening();     // boolean
editor.dictation.isSupported();     // false on Firefox

Suporte dos navegadores

  • Chrome, Edge, Opera — suportado (usa o serviço de fala em nuvem do Google)
  • Safari 14.1+ (macOS), iOS 14.5+ — suportado (no dispositivo ou na nuvem, conforme o sistema operacional)
  • Firefox — não tem SpeechRecognition; o plugin detecta isso e oculta o botão.

O primeiro clique solicita a permissão do microfone. Os usuários podem revogá-la a qualquer momento nas configurações de site do navegador. O handler onerror mostra uma mensagem amigável em caso de not-allowed.

Opções

OpçãoPadrãoObservações
dictationEnabledfalseHabilita o recurso. Sem ela, o plugin fica inativo.
dictationLangnavigator.languageTag de idioma BCP-47: en-US, es-ES, zh-CN, ja-JP etc.
dictationContinuoustrueSe for false, para depois de uma única fala.
dictationInterimResultstrueMostra uma pré-visualização esmaecida do que o navegador ainda está ouvindo.
dictationAutoPunctuationtrueColoca em maiúscula o início de cada trecho final e acrescenta um ponto final se não houver nenhum.