微软似乎决定从 Word 2007 中删除文本转语音功能。有没有合适的替代品,最好不需要单独的应用程序?我希望它直接从 Word 中读取。
这实际上也不是一个可访问性问题。我只是希望能够听到我大声朗读的内容。这会让措辞不当变得更加明显。
答案1
是的,微软又这么做了。Word 2007 中已删除了文本转语音功能。
幸运的是,有一种相当简单的方法可以用一点宏代码来实现它。
文章Word 文本转语音描述如何使用 VBA 宏向 Word 添加两个按钮 SpeakText 和 StopSpeaking。
答案2
MS Word 2007 中的文本转语音
以下是启用 TTS 的宏。这些宏应放入“normal.dot”,以便它与 MS Word 应用程序一起加载。
按 Alt+F11 转到宏编辑器并粘贴此代码。您需要向快速访问工具栏添加三个按钮。您可以通过单击 MS Word 标题栏上的小向下箭头“自定义快速访问工具栏”来执行此操作,您将在其中找到保存、撤消和重做按钮。在下拉菜单中选择“更多命令”以打开“Word 选项”窗口。在左侧菜单上选择“自定义”,并将“从中选择命令”设置为“宏”。添加所有三个宏,这将在快速访问工具栏上创建三个按钮。现在您的 MS Word 已启用 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
答案3
您可以尝试将文本复制/粘贴到请阅读。它有免费版和付费版,免费版有效伟大的! 只需安装,复制您的文本,就可以了!:)