Я пытаюсь установить кнопку для произнесения текста в метке (с разными голосами / языками), но речь не очень хорошо работает, когда есть символы оператора (+, -, ×), любая идея исправить это проблема
Я пытался:
//Option 1
TextLabel.text = "1 + 2 - 3 × 4" // Result: "+" = "and" other voice "plus" (ok), "-" = mute, "×" = mute, other voice "X" (letter)
//Option 2
TextLabel.text = "1 ➕ 2 ➖ 3 ✖️ 4" // Result: "+" = plus symbol, "-" = minus symbol, "×" = multiplication symbol
import UIKit
import AVFoundation
import Speech
class ViewController: UIViewController {
let synth = AVSpeechSynthesizer()
@IBAction func speaker(_ sender: UIButton) {
if (!synth.isSpeaking) {
let speech = AVSpeechUtterance(string: TextLabel.text!)
speech.voice = AVSpeechSynthesisVoice(language: "en-US")
speech.rate = 0.5
speech.pitchMultiplier = 1
speech.volume = 1
synth.speak(speech)
}
}
@IBOutlet weak var TextLabel: UILabel!
//Option 1
TextLabel.text = "1 + 2 - 3 × 4" // "+" = "and" other voice "plus" (ok), "-" = mute, "×" = mute, other voice "X" (letter)
//Option 2
TextLabel.text = "1 ➕ 2 ➖ 3 ✖️ 4" // "+" = plus symbol, "-" = minus symbol, "×" = multiplication symbol
}
Я ожидаю, что речевой символ + (плюс), - (минус), × (раз) правильно на разных языках с AVSpeechSynthesisVoice, но вариант 1 не верен или не отключает какой-либо символ ... и вариант 2 лучше, но воспроизвести слово "символ"