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自定义字体及类目的更多相关文章

  1. iOS自定义字体及类目 分类: ios技术 2015-05-15 16:34 195人阅读 评论(0) 收藏

    1:获取字体文件 从各种渠道下载字体文件ttf, 网站或者从别的ipa里扣出来.(以fzltxh.ttf为例) 2:将fzltxh.ttf文件拷贝到工程中 3:在Info.plist中添加项: Fon ...

  2. iOS 自定义字体设置

    有时候客户都要求使用方正兰亭刊黑字体,可是iOS没有自带这个字体,肿么办 ,只能自己自定义字体了,下面是自定义字体的几个重要步骤: 1.下载字体资源文件(.ttf或.otf格式的文件) 比如说你要使用 ...

  3. iOS自定义字体

    1.下载字体库,如:DINCond-Bold.otf 2.双击,在mac上安装 3.把下载的字体库拖入工程中: 4.配置info.plist文件 5.xib方式设置自定义字体:Font选Custom, ...

  4. 【转】IOS版本自定义字体步骤

    本文转载自:http://quick.cocoachina.com/wiki/doku.php?id=ios%E7%89%88%E6%9C%AC%E4%BD%BF%E7%94%A8%E8%87%AA% ...

  5. iOS - 使用自定义字体-苹方字体

    苹方提供了六个字重,font-family 定义如下:苹方-简 常规体font-family: PingFangSC-Regular, sans-serif;苹方-简 极细体font-family: ...

  6. 类的扩展--类目和延展--ios

    person+money.h  这是类目类 #import "Person.h" //这是扩展person类的接口类,独立一个文件 @interface Person (Money ...

  7. iOS类目

    首先我们解释一下类目是什么 iOS中类目是为给已经存在的类加入新的方法.(可是不能加入实例变量) 也就是说 我们已经有一个类了 .可是我们发现这个类眼下所提供的方法,满足不了我们的需求,我们须要新的方 ...

  8. iOS -类目,延展,协议

    1.类目 类目就是为已存在的类添加新的方法.但是不能添加实例变量.比如系统的类,我们看不到他的.m文件,所以没有办法用直接添加方法的方式去实现. @interface NSMutableArray ( ...

  9. iOS使用自定义字体的方法(内置和任意下载ttf\otf\ttc字体文件)

    最近做了个有关阅读的应用,使用了自定义字体,学习了一下这方面的知识. 1.首先是最简单也普遍的做法,打包内置字符库文件: 把字体库文件添加到工程,如font1.ttf添加到工程,然后在工程plist添 ...

随机推荐

  1. java 设计模式之单利模式以及代理模式(静态)

    1:单利模式: public class Singleton { private static Singleton uniqueInstance = null; private Singleton() ...

  2. ubuntu11.10server 安装php-redis插件

    1.下载php-redis插件 1 sudo wget https://github.com/nicolasff/phpredis/archive/master.zip 2.安装 1 2 3 4 5 ...

  3. springMVC下载文件前修改文件名字

    很多时候,为了方便,下载文件其实就直接写了一个文件在服务器上面的路径,然后直接点击一个这个地址,浏览器就自然而然的开始下载了. 但是这次项目需要在文件下载之前修改文件的名字,也就是说,服务器上文件的名 ...

  4. 用memcached的时候找key找不到,写了个命令来找找

    for i in $(seq 30); do echo "stats cachedump $i 0" | nc 192.168.88.150 11211 | grep groupS ...

  5. applicationContext.xml文件配置模板

    <?xml version="1.0" encoding="gb2312"?><!--  Spring配置文件的DTD定义-->< ...

  6. 配置snort

    0.如果要输出到mysql,请安装barnyard2 在此之前,请启动并配置mysql git clone https://github.com/firnsy/barnyard2 cd barnyar ...

  7. Android 联网监控抓包工具的制作(tcpdump的使用)

    最近做一个Android联网抓包的工具 自己在网上搜索了好久 发现还是没有头绪 于是考虑在linux层上下功夫 于是采用linux的tcpdump来实现了抓包的功能 用简单的话来定义tcpdump,就 ...

  8. FragmentActivity与Fragment两者交互方法简介(转)

    FragmentActivity与Fragment两者交互方法简介 分类: Fragment 2014-07-07 18:17 88人阅读 评论(0) 收藏 举报 在Android4.0后很多时候我们 ...

  9. Kali渗透测试学习

    http://blog.chinaunix.net/uid-26349264-id-4041727.html

  10. IE6里面子集尺寸大的会把父亲撑大

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...