我的文字长度接近11000
。当我将该文本传递给chrome.tts.speak
函数时,它不是在说内容。稍后,在进行一些调试之后,我发现如果我发送500
length的文本,它会正常显示。所以,我做到了
for(var start = 0; utterance.length > 500 ; start++){
text = utterance.substring(0,500);
chrome.tts.speak(text);
// console.log(text)
utterance = utterance.substring(500,utterance.length);
}
现在的问题是它不等待此功能
chrome.tts.speak(text);
完成。我想给
chrome.tts
引擎提供任何长度的文本,它应该说出来。我怎么能够 ?
最佳答案
检出the documentation。它指出,除非使用speak
选项,否则连续调用enqueue
会中断以前的调用。那应该带您到想要的地方。
编辑:从文档,enqueue
选项的示例:
chrome.tts.speak('Speak this next, when the first sentence is done.', {'enqueue': true});
编辑:将其应用于您的代码
chrome.tts.speak(text, {'enqueue': true});
关于javascript - 调用chrome.tts.speak函数获取任意长度的文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24114652/