我使用NSMutableAttributedString
格式化字符串,如下所示:
NSString* nextPrayerString=@"للفجر";
NSMutableAttributedString *nextPrayerAttString=[[NSMutableAttributedString alloc] initWithString:nextPrayerString];
UIFont *nextPrayerNameFont=[UIFont fontWithName:@"Helvetica-Bold" size:21.0f];
[nextPrayerAttString addAttribute:NSFontAttributeName value:nextPrayerNameFont range:NSMakeRange(0,[nextPrayerString length])];
但在运行时,字符串显示为下图:
我希望它出现在我写的“للفجر”,请我帮忙。
答案 0 :(得分:0)
我的第一个想法是你使用Helvetica作为阿拉伯语文本的字体。 Helvetica可能缺乏合适的连线和组合以显示阿拉伯文本的正确字符变体。 Geeza Pro是iOS的默认阿拉伯字体 - 也许尝试相反?
来自Apple's NSAttributedString Programming Guide: "脚本只能分配支持它们的字体。例如,汉字和阿拉伯字符不能分配Times-Roman字体,并且必须是支持这些脚本的重新分配字体。"