字体未在XCode中加载

时间:2012-04-16 07:56:54

标签: iphone objective-c xcode fonts uifont

好吧,我想将一个新的Font导入我的应用程序,但没有成功。我的.plist中有应用程序密钥提供的字体,我将字体作为字符串放在项目0中,值为AdelleBasic_Bold.otf,我已将字体添加到我的项目中,我正在尝试使用它: / p>

_myTextField.font = [UIFont fontWithName:@"Adelle Basic" size:15];

当我打开它时,Adelle Basic是字体的标题。我也试过没有任何成功:

_myTextField.font = [UIFont fontWithName:@"AdelleBasic_Bold" size:15];

有什么建议吗?

6 个答案:

答案 0 :(得分:14)

对于所有字体来说可能都不是这样,但根据我的经验,Xcode可能会很挑剔,而且我从来没有能够使用otf字体(任何有请发帖的人!),所以我总是使用这个非常优秀的网站转换我的字体 - Online Font Converter

我将它们转换为ttf字体,它们似乎总是正常工作 - 确保使用确切的名称(更改字体的文件名似乎也阻止它工作)。

希望这有帮助。

答案 1 :(得分:3)

以下是向XCODE应用添加字体的正确方法(.otf字体工作正常):

  1. 在XCode项目中包含您的字体
  2. 确保它们已包含在目标
  3. 仔细检查您的字体是否包含在捆绑包中的资源
  4. 在您的应用程序plist中包含您的iOS自定义字体
  5. 找到字体名称
  6. 使用图片here

    进行学分和更好的解释

答案 2 :(得分:1)

你只能使用扩展名为ttf的第三方字体,而且扩展名为otf的字体无法正常工作且大部分都不起作用

答案 3 :(得分:0)

除了确保5分之外,您还可以尝试以下代码片段打印出已安装的字体:

for (NSString* family in [UIFont familyNames])
{   
    NSLog(@"%@", family)       
    for (NSString* name in [UIFont fontNamesForFamilyName: family])
    {
        NSLog(@"  %@", name);
    }
}

如果未列出您要使用的字体,则您会错过5个步骤中的某些步骤。

答案 4 :(得分:0)

我只是在项目中添加字体,检查字体是否会复制到包内。在我的Mac上设置它并直接在Interface Builder中使用字体。如果您有任何problems solve they here

答案 5 :(得分:0)

我看过一些有关tff和otf的评论,但我不同意,这可能是因为您没有使用正确的字体名称,这并不意味着文件名 要找到您已在xcode中安装的字体,请运行

     for family: String in UIFont.familyNames{
                print(family)
                for names: String in UIFont.fontNames(forFamilyName: family){
                    print("== \(names)")
                }
            }