在iOS的项目开发中经常遇到需要使用一些自定义的字体文件,比如 仿宋_GB2312
、 华康少女体
等。之前我们为了使用这些自定义的字体,在应用的资源包中放入这些字体文件。因为字体文件通常比较大,有的一个字库就达到10M以上,这样打包后的ipa文件的体积就可能会变得很大,对于只有个别的模块需要特殊的字体样式的应用来说很不划算,那么在iOS6.0以后苹果就开放了动态加载字体的权限。下面就iOS中使用字体的这两种方式进行介绍。
使用静态字体
将字体文件拷贝到项目工程中,在 Info.plist
文件中添加 Fonts provided by application
的配置项,其中每一个Item对应的是字体文件的名称,如 huakangshaonv.ttf
。
然后就可以调用 + (UIFont *)fontWithName:(NSString *)fontName size:(CGFloat)fontSize
使用字体,如果不知道fontName可以遍历打印出来:
使用动态字体
在网易新闻iOS客户端中可以使用自定义的字体,对于未下载的字体可先下载然后安装下次就能自动设置为该字体,效果如下:
下面就该功能简单介绍实现的步骤
-
*下载字体文件
-
*解压zip压缩包
-
*注册指定路径下的字体文件
下载回来的字体文件如果不做处理是不能直接使用的,使用前需要先注册然后才能使用,注册方式如下:
需要先引入 #import <coretext coretext.h></coretext>
, CoreText
框架
- *判断字体是否加载
在使用字体文件前最好是先判断字体是否已经被加载过了,判断方式如下:
- *其他说明
经测试注册过的字体在应用关闭后下次开启应用,判断字体是否加载时返回为 NO
,为了保证正常使用需要每次启动应用的时候先遍历一遍字体文件夹将里面的字体文件都再次注册一遍即可。参考代码如下:
以上就是对使用第三方字体的方法的介绍。
Original: https://www.cnblogs.com/Free-Thinker/p/15880421.html
Author: brave-sailor
Title: iOS 使用第三方字体
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/546148/
转载文章受原作者版权保护。转载请注明原作者出处!