AVSpeechSynthesizer文字转语音

与我们的AVSpeechsynthesizer语音是发音为“A”是“资本A”,但只是想“A”怎么可以做到这一点?

这只发生在string中有单个字符时,

你可以使用这种方法检查string长度是否为1,而不是将其转换为小写string,

NSString *stringToUtter = @"A"; if (stringToUtter.length==1) { stringToUtter = [stringToUtter lowercaseString]; } AVSpeechUtterance *utterance = [[AVSpeechUtterance alloc] initWithString:stringToUtter]; utterance.rate = AVSpeechUtteranceMinimumSpeechRate; utterance.voice = [AVSpeechSynthesisVoice voiceWithLanguage:@"en-us"]; [self.synthesizer speakUtterance:utterance];