之前发过一个想法,里面的代码还可以用,这里补上详细的教程。
https://www.zhihu.com/pin/1090633274971422720
阅读须知:本文仅针对已经在Ankidroid上使用TTS的读者,满足指定特定字段文字转语音而非整张卡片转语音的需求。
首先是安卓端的教程
打开 Ankidroid 2.9 的用户手册
AnkiDroid 2.9 User ManualCtrl + F,搜索 TTS
找到对应的手册章节
阅读手册,对照自己使用的模板,我用的是划词助手Antimoon模板
编写满足自己需求的代码,我想要在卡片正面播放我的英文例句,于是在正面将 {{例句}} 改写成
<tts service="android" voice="en_US">
{{例句}}
</tts>
然后就可以了。
然后是和电脑端兼容的教程
继续看文档,发现可以和 AwesomeTTS兼容
我之前使用的是微软的TTS,所以仿照文档编写代码
<tts service="sapi5com" quality="39" speed="0" voice="Microsoft David Desktop" volume="100" xml="16">
<tts service="android" voice="en_US">
{{例句}}
</tts>
</tts>
然后就实现了在电脑上使用 AwesomeTTS,在手机上使用 系统/Google 的TTS服务,并且可以针对特定字段。
注意:AwesomeTTS 官方版本已经停止更新,所以我建议使用这个版本:
AwesomeTTS (Google Cloud Text-to-Speech) [unofficial]插件安装代码:814349176
拓展阅读
如果想要了解如何在安卓手机上使用 TTS,看这篇
余时行:【工具篇】TTS 妈妈再也不用担心我的软件发音如果想要了解如何在电脑上使用 Anki 插件 AwesomeTTS 来对特定字段文字转语音,可以看这篇
易小猫:AwesomeTTS高级技巧之<tts>标签一劳永逸