在iOS下使用自定义字体比较蛋疼的就是名字不知道是什么,大部分字体可以在打开字体册就可以看到,如正常的XXX-Regular,但有时候名字并不是这个,有可能是XXX而已,还有可能是XXXItalic(而不是XXX-Italic)。名字错了,建立的字体肯定是空的。
那怎么办呢?
有办法的,有一段代码可以把当前所有的字体名字输出来。
如:
1.把XXX字体加入到resouce;
2.Info.plist的Fonts provided by application里面加入字体文件名
3.运行下面代码
NSArray *familyNames = [UIFont familyNames];
for( NSString *familyName in familyNames ){
printf( "Family: %s \n", [familyName UTF8String] );
NSArray *fontNames = [UIFont fontNamesForFamilyName:familyName];
for( NSString *fontName in fontNames ){
printf( "\tFont: %s \n", [fontName UTF8String] );
}
}
4.找到你的字体XXX,如下,Font:后面的就是我们要的字体名字
Family: Courier New
Font: CourierNewPSMT
Font: CourierNewPS-BoldMT
Font: CourierNewPS-ItalicMT
Font: CourierNewPS-BoldItalicMT
Family: Oriya Sangam MN
Font: OriyaSangamMN
Font: OriyaSangamMN-Bold
5.自然是使用,如
UIFont *font_regular = [UIFont fontWithName:@"CourierNewPS-ItalicMT" size:84];
完。