iOS使用自定义字体
摘要: 准备:你的自定义字体文件-〉ttf,odf字体文件。现在网上一般下的中文字体文件都是ttc格式的,这个需要转换一下,网上有很多转换工具,不过都是windows下面的。(ttc就是多个ttf压在一起形成的)使用:1.加入工程中2 ...
准备:你的自定义字体文件-〉ttf,odf字体文件。 现在网上一般下的中文字体文件都是ttc格式的,这个需要转换一下,网上有很多转换工具,不过都是windows下面的。(ttc就是多个ttf压在一起形成的) 使用: 1.加入工程中 2.得到UIFont来使用 方法一: Info.plist中添加Fonts provided by application项,加入一个item值为刚刚添加的字体文件文件名。 如果不知道这个字体的FontName,可以使用Mac OS中的 字体册 程序查看。 [textField setFont:[UIFont fontWithName:@"Amelia BT" size:12]]; 方法二: 直接使用代码来获取UIFont -(UIFont*)customFont{// 你的字体路径 NSString *fontPath = [[NSBundle mainBundle] pathForResource:@"Amelia BT" ofType:@"ttf"]; NSURL *url = [NSURL fileURLWithPath:fontPath]; CGDataProviderRef fontDataProvider = CGDataProviderCreateWithURL((__bridge CFURLRef)url); if (fontDataProvider == NULL) return nil; CGFontRef newFont = CGFontCreateWithDataProvider(fontDataProvider); CGDataProviderRelease(fontDataProvider); if (newFont == NULL) return nil; NSString *fontName = (__bridge NSString *)CGFontCopyFullName(newFont); UIFont *font = [UIFont fontWithName:fontName size:12]; CGFontRelease(newFont); return font;}
修正: 1.方法二中如果要使用UIFont,那么 不添加 Fonts provided by application项是不可以的。如果仅仅使用 CGFontRef,那么可以不添加。 |