MicrosoftはWord2007からテキスト読み上げを削除することを決定したようです。まともな代替品はありますか、できれば別のアプリケーションを必要としませんか? Wordから直接読みたいのですが。
これも実際にはアクセシビリティの質問ではありません。私が書いたものを声に出して聞きたいのです。それは貧弱な言い回しをより明白にします。
はい、マイクロソフトは再びそれを行いました。 Text-to-SpeechはWord2007から削除されました。
幸いなことに、少しのマクロコードでそれを実装するかなり簡単な方法があります。
記事 Wordテキスト読み上げ は、VBAマクロSpeakTextとStopSpeakingを使用してWordに2つのボタンを追加する方法を説明しています。
MS Word 2007のテキスト読み上げ
以下は、TTSを有効にするためのマクロです。これらのマクロは「normal.dot」に配置する必要があるため、MSWordアプリケーションと一緒に読み込まれます。
Alt + F11を押してマクロエディタに移動し、このコードを貼り付けます。クイックアクセスツールバーに3つのボタンを追加する必要があります。これを行うには、MS Wordのタイトルバーにある[クイックアクセスツールバーのカスタマイズ]を示す小さな下向き矢印をクリックします。ここには、保存、元に戻す、やり直しのボタンがあります。ドロップダウンメニューで[その他のコマンド]を選択して、[Wordオプション]ウィンドウを開きます。左側のメニューで「カスタマイズ」を選択すると、「コマンドの選択」が「マクロ」に設定されているはずです。 3つのマクロをすべて追加すると、クイックアクセスツールバーに3つのボタンが作成されます。これで、MSWordでTTSが有効になりました。
Option Explicit
Dim speech As SpVoice
Dim i As Integer
Sub SpeakText()
On Error Resume Next
If i = 0 Then
Set speech = New SpVoice
If Len(Selection.Text) > 1 Then 'speak selection
speech.Speak Selection.Text, _
SVSFlagsAsync + SVSFPurgeBeforeSpeak
Else 'speak whole document
speech.Speak ActiveDocument.Range(0, _
ActiveDocument.Characters.Count).Text, _
SVSFlagsAsync + SVSFPurgeBeforeSpeak
End If
Else
If i = 1 Then
speech.Resume
i = 0
End If
End If
End Sub
Sub StopSpeaking()
On Error Resume Next
speech.Speak vbNullString, SVSFPurgeBeforeSpeak
Set speech = Nothing
i = 0
End Sub
Sub PauseSpeaking()
On Error Resume Next
If i = 0 Then
speech.pause
i = 1
Else
If i = 1 Then
speech.Resume
i = 0
End If
End If
End Sub
いつでもテキストをコピーして ReadPlease に貼り付けることができます。無料版と有料版があり、無料版は機能します素晴らしいです!インストールして、テキストをコピーして、オフになります! :)