ios开发text kit_iOS文本布局探讨之二——关于TextKit框架中的字体描述-阿里云开发者社区...

本文介绍了iOS开发中TextKit框架的动态字体和UIFontDescriptor类,阐述了如何使用UIFontDescriptor创建动态字体,以及字体描述类的创建方法,包括通过字体名称、矩阵变换和配置字典。同时,详细讲解了动态字体的风格常量和UIFontDescriptor的属性设置,如符号特征、宽度、倾斜度等。
摘要由CSDN通过智能技术生成

一、引言

UIFont是iOS开发中处理文本字体的类,关于UIFont的相关内容,以前的一篇博客有详细介绍,本片博客主要介绍关于动态字体的应用与字体描述类NSFontDescriptor的应用。

二、iOS系统中的动态字体

所谓动态字体,是指在应用使用中,用户可以动态调整字体的风格字号等。在iOS7及之后的iOS系统版本,TextKit框架中提供了一个新的类UIFontDescriptor。简单理解,UIFontDescriptor类是专门用来描述字体的,其中提供了许多方法可以直接创建出某种字体,也可以对字体进行设置和调整。动态字体也由这个类来创建。

在iOS7之后,系统增加了动态字体的功能,当用户在系统设置中修改字体的属性或者字号时,不仅会影响系统应用的字体,第三方应用的字体也可以进行相应调整。系统设置字体界面如下:

使用UIFontDescriptor类中的如下方法可以创建动态字体:

//创建动态字体的字体描述类实例

+ (UIFontDescriptor *)preferredFontDescriptorWithTextStyle:(NSString *)style;

UIFont类中的如下方法可以将字体描述类转换成UIFont字体:

+ (UIFont *)fontWithDescriptor:(UIFontDescriptor *)descriptor size:(CGFloat)pointSize NS_AVAILABLE_IOS(7_0);

系统定义了一组动态字体的风格字符创常量,开发者可以根据需求选用:

//标题1

UIKIT_EXTERN NSString *const UIFontTextStyleTitle1 NS_AVAILABLE_IOS(9_0);

//标题2

UIKIT_EXTERN NSString *const UIFontTextStyleTitle2 NS_AVAILABLE_IOS(9_0);

//标题3

UIKIT_EXTERN NSString *const UIFontTextStyleTitle3 NS_AVAILABLE_IOS(9_0);

//大标题

UIKIT_EXTERN NSString *const UIFontTextStyleHeadline NS_AVAILABLE_IOS(7_0);

//子标题

UIKIT_EXTERN NSString *const UIFontTextStyleSubheadline NS_AVAILABLE_IOS(7_0);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值