苹果在细节方面,虽然下了很大的功夫,但是仍然会有些需求是无法涵盖到的,比如之前在项目中遇到的特殊字体的设置。字体都会有相应的字体文件,一般是以ttf或otf为后缀。我们就以百度综艺简体(bdzy.ttf)为例。
首先,需要下载ttf字体文件,下载之后将字体copy到资源文件,
加入字体后,在info.plist文件中设置相应字体设置信息。
接下来,我们通过代码来获取字体对应的字库名称。
for(NSString*fontFamilyNamein[UIFontfamilyNames]) {
NSLog(@"--- %@ ---", fontFamilyName);
for(NSString*fontNamein[UIFontfontNamesForFamilyName:fontFamilyName]) {
NSLog(@"%@", fontName);
}
NSLog(@"");
}
到此为止,我们就可以使用ttf文件来设置想要的字体了。
UILabel*wLabel = [CustomMethodcreateALabelWithframe:CGRectMake(SCREEN_WIDTH/2-100,74,200,50)andWithName:@"百度综艺简体"andTextAlcent:NSTextAlignmentCenterandTextColor:White_ColorandFont:[UIFontsystemFontOfSize:35]];
NSMutableAttributedString*str = [[NSMutableAttributedStringalloc]initWithString:weimeiLabel.text];
NSMutableDictionary*textAttr = [NSMutableDictionarydictionary];
textAttr[NSForegroundColorAttributeName] = [UIColorwhiteColor];
textAttr[NSFontAttributeName] = [UIFontfontWithName:@"BDZYJT--GB1-0"size:35];
[straddAttributes:textAttrrange:NSMakeRange(0,2)];
wLabel.attributedText= str;
[self.viewaddSubview:wLabel];