📢
Swiftで文字列の読み上げをする
環境
- Xcode 12.2
- Swift 5.0
文字列を読み上げる
以下のクラスを作成します。
import AVFoundation
class Speecher {
static let shared = SpeecheManager()
private var speechSynthesizer: AVSpeechSynthesizer!
func speeche(text: String) {
// AVSpeechSynthesizerのインスタンス作成
speechSynthesizer = AVSpeechSynthesizer()
// 読み上げる、文字、言語などの設定
let utterance = AVSpeechUtterance(string: text) // 読み上げる文字
utterance.voice = AVSpeechSynthesisVoice(language: "ja-JP") // 言語
utterance.rate = 0.5 // 読み上げ速度
utterance.pitchMultiplier = 1.0 // 読み上げる声のピッチ
utterance.preUtteranceDelay = 0.2 // 読み上げるまでのため
speechSynthesizer.speak(utterance)
}
}
こんな感じでワンライナーで読み上げできます!
Speecher.shared.speeche(text: "hoge")
Discussion