AppleScript以中文说出所选文本
问题 我想生成一个AppleScript,它执行“开始说话”的等效功能,它存在于我的Mavericks 10.9.2系统的上下文菜单中。目前,如果我选择英语选项,操作系统将讲英语 我想创建一个AppleScript,它可以生成语音文本转换服务,但使用普通话。我最初怀疑我的语言环境可能与OSX以特定语言响应有关,但我不再确定(因为在我的系统上更改语言环境没有任何效果)。我研究了这个问题,发现需要设置以下首选项才能启用。启用后,我可以在Safari和其他一些应用程序中选择文本以使用开始讲话服务。我对以下方法感兴趣:AppleScript以中文说出所选文本,applescript,text-to-speech,Applescript,Text To Speech,问题 我想生成一个AppleScript,它执行“开始说话”的等效功能,它存在于我的Mavericks 10.9.2系统的上下文菜单中。目前,如果我选择英语选项,操作系统将讲英语 我想创建一个AppleScript,它可以生成语音文本转换服务,但使用普通话。我最初怀疑我的语言环境可能与OSX以特定语言响应有关,但我不再确定(因为在我的系统上更改语言环境没有任何效果)。我研究了这个问题,发现需要设置以下首选项才能启用。启用后,我可以在Safari和其他一些应用程序中选择文本以使用开始讲话服务。我
on run {input, parameters}
set targetURI to urlEncode(input)
open location "http://translate.google.com/#zh-CN/en/" & targetURI --input
end run
on urlEncode(str)
local str
try
return (do shell script "/bin/echo " & quoted form of str & ¬
" | perl -MURI::Escape -lne 'print uri_escape($_)'")
on error eMsg number eNum
error "Can't urlEncode: " & eMsg number eNum
end try
end urlEncode
更新
结合以下说明后,我能够使用Safari/Notes中的内置Speech>Start Speaking上下文菜单来完成所需的功能。感谢您提供的信息,使我找到了一个合适的解决方案
您只需要打开automator并创建一个新服务。将自动机服务设置为“服务从任何应用程序接收文本”。然后添加一个“讲文本”操作。在语音列表中,选择您想听的任何语言。希望你有说中文的声音。保存它
现在,当您突出显示某些文本时,右键单击它,进入“服务”菜单,然后选择您的自动售货机服务。有一个中文语音选项。我刚在10.9登记。进入系统首选项->听写和语音->文本到语音选项卡->系统语音弹出按钮->自定义,我看到3个中文语音。当然其中一个会为你工作。如果您选中其中一个或所有选项,它们将被下载并添加到您的语音选项中。然后按照我上面描述的做。