Text 连接两个不同的标签进行文本到语音转换(swift3)

Text 连接两个不同的标签进行文本到语音转换(swift3),text,swift3,avfoundation,avspeechsynthesizer,avspeechutterance,Text,Swift3,Avfoundation,Avspeechsynthesizer,Avspeechutterance,使用speech to text功能,我可以很容易地获得一个标签。但我希望话语2与话语相结合。我希望话语首先被说出,然后当它结束时,话语2被说出之后 let utterance = AVSpeechUtterance(string: dptext.text!) let utterance2 = AVSpeechUtterance(string: dptext2.text!) let synthesizer = AVSpeechSynthesizer()

使用speech to text功能,我可以很容易地获得一个标签。但我希望话语2与话语相结合。我希望话语首先被说出,然后当它结束时,话语2被说出之后

     let utterance = AVSpeechUtterance(string: dptext.text!)
     let utterance2 = AVSpeechUtterance(string: dptext2.text!)

     let synthesizer = AVSpeechSynthesizer()
     synthesizer.speak(utterance)

我认为处理这种情况的最简单方法是将两个字符串与
空格
组合

let combineString = dptext.text! + " " + dptext2.text!
let utterance = AVSpeechUtterance(string: combineString)
let synthesizer = AVSpeechSynthesizer()
synthesizer.speak(utterance)

我认为处理这种情况的最简单方法是将两个字符串与
空格
组合

let combineString = dptext.text! + " " + dptext2.text!
let utterance = AVSpeechUtterance(string: combineString)
let synthesizer = AVSpeechSynthesizer()
synthesizer.speak(utterance)
我希望话语首先被说出,然后当它结束时,话语2被说出之后

     let utterance = AVSpeechUtterance(string: dptext.text!)
     let utterance2 = AVSpeechUtterance(string: dptext2.text!)

     let synthesizer = AVSpeechSynthesizer()
     synthesizer.speak(utterance)
没有必要将两种语言连接起来:记住的最重要的事情是保留你的实例,直到完整的演讲结束

let synthesizer = AVSpeechSynthesizer()

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    
    let utterance = AVSpeechUtterance(string: dptext.text!)
    let utterance2 = AVSpeechUtterance(string: dptext2.text!)
    
    synthesizer.speak(utterance)
    synthesizer.speak(utterance2)
}
根据这一基本原理,您可以:

  • 说话时在话语中加入前置/后置延迟
  • 你想说多少就说多少
每一个话语都将被放入语音合成器队列,并将按照接收到的顺序被说出

我希望话语首先被说出,然后当它结束时,话语2被说出之后

     let utterance = AVSpeechUtterance(string: dptext.text!)
     let utterance2 = AVSpeechUtterance(string: dptext2.text!)

     let synthesizer = AVSpeechSynthesizer()
     synthesizer.speak(utterance)
没有必要将两种语言连接起来:记住的最重要的事情是保留你的实例,直到完整的演讲结束

let synthesizer = AVSpeechSynthesizer()

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    
    let utterance = AVSpeechUtterance(string: dptext.text!)
    let utterance2 = AVSpeechUtterance(string: dptext2.text!)
    
    synthesizer.speak(utterance)
    synthesizer.speak(utterance2)
}
根据这一基本原理,您可以:

  • 说话时在话语中加入前置/后置延迟
  • 你想说多少就说多少
每一个话语都将被放入语音合成器队列,并将按照接收到的顺序被说出