在iPhone上使用自定义阿拉伯字体的问题
我正在用MonoTouch开发一个使用自定义阿拉伯字体的iPhone应用程序(来自http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=ArabicFonts的 Scheherazade)。 我没有问题在我的应用程序中加载字体。 我也看到,当我使用拉丁语文本,但是当我想显示阿拉伯语文本时,它使用默认的系统字体来显示文本。
有没有人有自定义阿拉伯语字体和MonoTouch / iPhone开发的经验,或有一个想法,为什么发生这种情况?
先谢谢你。
给予最亲切的问候,
塔纳Gedikoglu
这些课程将完成这项工作:
https://github.com/Accorpa/Arabic-Converter-From-and-To-Arabic-Presentation-Forms-B
下载他们,我敢肯定,回答你的问题,因为我以前有完全相同的问题!
代码示例:
ArabicConverter *converter = [[ArabicConverter alloc] init]; NSString* convertedString = [converter convertArabic:@"منذ دقيقة"]; infoText.font = [UIFont fontWithName:@"YOUARABICFONT" size:16]; infoText.text = convertedString;
如果你的目标是iOS 6,那么你可以使用NSAttributedString
来实现这一点:
NSAttributedString *attributedString = [[NSAttributedString alloc] initWithString:info.text attributes:@{ NSFontAttributeName : [UIFont fontWithName:@"Scheherazade" size:32], NSLigatureAttributeName: @2}]; cell.textLabel.attributedText = attributedString;
有关其他与阿拉伯语字体相关的其他问题的讨论,请参阅我的答案,例如行间距和连字。
您用来显示文本的API可能是您面临的问题。 看看这个问题(和答案): 在CGBitmapContext中没有德语错误