码迷,mamicode.com
首页 > 移动开发 > 详细

iOS自定义字体及类目

时间:2015-05-15 17:47:39      阅读:344      评论:0      收藏:0      [点我收藏+]

标签:

1:获取字体文件

从各种渠道下载字体文件ttf, 网站或者从别的ipa里扣出来.(以fzltxh.ttf为例)

 

2:将fzltxh.ttf文件拷贝到工程中

 

3:在Info.plist中添加项:

Fonts provided by application(UIAppFonts)  可以添加一个或多个item,

如 item0 --  fzltxh.ttf

技术分享

 

4:找出真正的字体名称:

因为使用字体时, 要使用字体的真实名称, 而不是文件名, 可以用以下代码来遍历当前设备可用的字体名称,

再从中找出刚才添加的字体真实名称.

    
    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] );
        }
    }

  技术分享

 

FZLTXHK--GBK1-0  这个就是此字体的真实使用名称.

 

5:使用字体

[UIFont fontWithName:@"FZLTXHK--GBK1-0" size:fontSize];

  

6:统一替换

如果想把旧工程的字体整体替换掉, 又不想改动已有代码, 可以重写 

systemFontOfSize 方法.

//
//  UIFont+custom.h
//  TuJing
//
//  Created by willbin on 15/1/13.
//  Copyright (c) 2015年 willbin. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface UIFont (TJCustom)

+ (UIFont *)systemFontOfSize:(CGFloat)fontSize;

@end

 

//
//  UIFont+custom.m
//  TuJing
//
//  Created by willbin on 15/1/13.
//  Copyright (c) 2015年 willbin. All rights reserved.
//

#import "UIFont+custom.h"

@implementation UIFont (TJCustom)

+ (UIFont *)systemFontOfSize:(CGFloat)fontSize
{
    return [UIFont fontWithName:@"FZLTXHK--GBK1-0" size:fontSize];
}

@end

  

 

这样的话, 原先写的 

systemFontOfSize 方法都会用新方法代替, 从而实现整体替换的效果.

iOS自定义字体及类目

标签:

原文地址:http://blog.csdn.net/q644419002/article/details/45746549

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!