You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS字符串转语音功能名称及Swift实现代码咨询

iOS文本朗读功能名称及Swift代码示例

功能名称

你提到的iOS选中整段文字进行朗读的系统功能官方名称是朗读所选内容(Speak Selection),它属于iOS辅助功能模块,开启后用户可选中任意文本触发朗读。而实现文本转语音的核心技术依赖于AVFoundation框架中的AVSpeechSynthesizer组件。

Swift代码示例

以下是直接将指定字符串转为语音的基础代码示例:

import AVFoundation

// 全局声明语音合成器实例,防止被提前释放
let speechSynthesizer = AVSpeechSynthesizer()

/// 将指定文本转为语音朗读
/// - Parameter text: 需要朗读的字符串
func speakText(_ text: String) {
    // 终止当前正在进行的朗读(如果存在)
    if speechSynthesizer.isSpeaking {
        speechSynthesizer.stopSpeaking(at: .immediate)
    }
    
    // 创建语音 utterance 对象,承载待朗读文本
    let utterance = AVSpeechUtterance(string: text)
    // 设置朗读语言为中文普通话,可替换为其他语言代码(如"en-US")
    utterance.voice = AVSpeechSynthesisVoice(language: "zh-CN")
    // 调整语速,范围0.0-1.0,默认值0.5
    utterance.rate = 0.5
    // 调整音量,范围0.0-1.0,默认值1.0
    utterance.volume = 1.0
    
    // 开始朗读
    speechSynthesizer.speak(utterance)
}

// 调用示例
speakText("欢迎使用iOS文本转语音功能")

补充说明

  • 确保项目中已导入AVFoundation框架
  • 可通过修改AVSpeechUtterance的属性自定义朗读效果,比如音调(pitchMultiplier)、停顿时间等
  • 若需要监听朗读的开始、结束、暂停等状态,可让类遵循AVSpeechSynthesizerDelegate协议并实现对应方法

内容的提问来源于stack exchange,提问作者Antonio A. Chavez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 04:20:27