4

在我的应用程序中,我需要显示具有不同自定义字体的阿拉伯语文本。我按照将ttf文件添加到info.plist.

根据上述情况,我成功地获得了仅用于英语文本的不同字体样式的显示文本。我正在为阿拉伯字体样式做同样的事情,但在这里我没有得到。为什么会这样?

请任何人都可以帮助我

提前致谢。

4

2 回答 2

6

@Kareem,我从 Stackoverflow 本身获得了加载字体的提示,但无法让它在第一次运行时工作。可能以下步骤可以帮助您。

  1. 将字体文件添加到您的项目中。
  2. 在 info.plist 文件中输入他们的条目

    在此处输入图像描述

  3. 您现在可以实现一些方法,在应用程序委托中的某处加载您的字体,例如

    -(UIFont*) CustomFontWithSize:(float)size{

        UIFont* customFont = [UIFont fontWithName:@"FX_Masa" size:size];
    
        if(customFont == nil)
            customFont = [UIFont systemFontOfSize:size];
    
        return customFont;
    }
    

如果您注意到,那么我在这里传递的名称是 "FX_MASA" 而不是 FX_MasaRegular ,这就是我错的地方。我们在获取字体时需要使用的名称是安装名称(双击字体在系统上安装字体,字体簿中出现的名称是安装名称)。

在此处输入图像描述

希望这对您的问题也有帮助。如果您遇到任何好的方法,请在此处更新。

于 2011-11-22T11:32:25.580 回答
0

GitHub 中有一个不错的 UILabel 扩展名为“Font Label”:https ://github.com/zynga/FontLabel 这允许加载任何 TTF 文件,然后使用此自定义字体绘制 ZLabel 对象(ZLabel 是 UILabel 的扩展)。它基于 CoreGraphics,我用许多自定义字体进行了测试,证明可以正常工作。我当然不知道阿拉伯字体的效果,但值得一试,欢迎您(对我们以及 github 项目管理员)的反馈。

于 2011-11-22T09:27:51.393 回答