使用Swift显示AVSpeechSynthesizer显示为字幕的内容

时间:2019-05-26 12:25:18

标签: swift avspeechsynthesizer

我有一个带引号的数组,并且正在使用按钮从该数组开始播放随机报价。

我想知道,如何将所选的随机报价也显示在ViewController中,以便人们可以读取语音合成器正在读取的内容?

2 个答案:

答案 0 :(得分:1)

  

如何将选定的随机报价也显示在ViewController中,以便人们可以读取语音合成器正在读取的内容?

突出显示发声单词的最佳方法是使用 AVSpeechSynthesizerDelegate协议Required permissions方法。

与其在此处复制和粘贴代码段,不如看一下这个complete and useful example (ObjC和Swift),该字体以粗体显示带有语音合成的发声单词。< / p>

  

...是否有某种使用Subtitles.sizeToFit()的方法,以便将Label分成3行或更多行,而不仅仅是“一行到无穷大”?

speechSynthesizer:willSpeakRangeOfSpeechString:utterance:-Xcode Interface Builder中,将标签属性Attributes Inspector的值设置为0,并调整约束以获取多行显示。 enter image description here

答案 1 :(得分:0)

在视图中添加标签,然后在其上设置引号文字

quoteLabel.text = randomQuote

要在多行上显示标签,请添加:

label.numberOfLines = 0