首先我们来看一看UIFont的API里面有哪些属性:

  1. // Font attributes
  2. @property(nonatomic,readonly,strong) NSString *familyName;
  3. @property(nonatomic,readonly,strong) NSString *fontName;
  4. @property(nonatomic,readonly)        CGFloat   pointSize;
  5. @property(nonatomic,readonly)        CGFloat   ascender;
  6. @property(nonatomic,readonly)        CGFloat   descender;
  7. @property(nonatomic,readonly)        CGFloat   capHeight;
  8. @property(nonatomic,readonly)        CGFloat   xHeight;
  9. @property(nonatomic,readonly)        CGFloat   lineHeight NS_AVAILABLE_IOS(4_0);
  10. @property(nonatomic,readonly)        CGFloat   leading;

你会发现有这么一大堆属性然而并不知道都是干嘛的,不用着急,给你们看一张图就知道了:

现在应该大致知道各个属性都是干嘛了的吧。

pointSize就是字体的大小,要获取字体大小就用这个属性。

而lineHeight是行高,当你要计算这些字所占用的高度的时候,要用这个属性。

有一个属性baseLine,指的就是紧贴着这些字符的那条线。

leading指的是如果有多行的话,两个baseline之间的距离,如果只有一行,那么这个值就是0.

ascender和descender意义很明确,就不说了。

capHeight表示最高的字符的高度。

xHeight表示最低的字符的高度。

fontName表示的字体的名字,familyName会把字体名字分成几部分,用空格隔开。

iOS-字体UIFont的lineHeight与pointSize的更多相关文章

  1. [iOS]UIFont的lineHeight与pointSize

    写这篇文章的初衷是由于我有一次想获取一个font的字体大小时使用了UIFont的lineHeight属性,结果是比字体的大小要大了一部分,然后经过查阅各种资料,发现了原因. 首先我们来看一看UIFon ...

  2. iOS字体 UIFont 字体名字大全

    打印所有的字体 NSArray *familyNames = [UIFont familyNames];//所有的家族名称 for(NSString *familyName in familyName ...

  3. 一文让你彻底了解iOS字体相关知识

    写本文的契机主要是把自己整理的关于iOS字体方面的知识不断更新写在这篇博文中,用来自己以后查阅. 一.iOS原生字体展示 在label中选择字体的font,并把font由system改成custom后 ...

  4. IOS字体下载

    结合书本与苹果官方给的例子后,总结下下载的方法. 苹果给我们提供了很多漂亮的字体,只是有些字体设备并没有内置,需要我们去下载才行. 系统提供给我们的字体名我们可以通过mac系统提供的字体册来查阅. 得 ...

  5. iOS字体大小

    1,iOS 字体大小单位是pt——磅. 英文字体的1磅,相当于1/72 英寸,约等于1/2.8mm. px:相对长度单位.像素(Pixel).(PS字体) pt:绝对长度单位.点(Point).(iO ...

  6. iOS字体相关

    1.使用自定义字体 (1)将字体文件导入项目 (2)在info.plist文件中添加 Fonts provided by application (3)获取字体在项目中的名称 for fontFami ...

  7. IOS中用UIFont返回字体的行高、动态改变tableView中Cell的高度

    一.动态改变Cell的高度 1.利用tableView代理方法的返回值决定每一行cell的高度 - (CGFloat)tableView:(UITableView *)tableView height ...

  8. iOS字体加载三种方式

    静态加载 动态加载 动态下载苹果提供的多种字体 其他 打印出当前所有可用的字体 检查某字体是否已经下载 这是一篇很简短的文章,介绍了 iOS 自定义字体加载的三种方式. 静态加载 这个可以说是最简单最 ...

  9. ios 字体设计

    ref: http://ju.outofmemory.cn/entry/217705 ref:http://gold.xitu.io/entry/57958a41128fe10056be13b1 下面 ...

随机推荐

  1. IOS 监听slider滑动

    // 监听slider滑动 - (IBAction)valueChnage:(UISlider *)sender; @property (weak, nonatomic) IBOutlet NJVie ...

  2. PHP数组排序方法总结

    随着PHP的快速发展,用它的人越来越多,在PHP数组学习摘录部分了解到最基本的PHP数组的建立和数组元素的显示.需要深入学习下PHP数组的相关操作.首先接触的就是PHP数组排序.降序的排序问题. so ...

  3. 五、react中父子组件间如何传值

    1.父组件向子组件传递数据:父组件绑定属性值传给子组件,子组件通过this.props()接受. 2.子组件向父组件传递数据:子组件绑定一个方法,方法中通过this.props.父组件方法名(参数)传 ...

  4. BZOJ2287: 【POJ Challenge】消失之物(背包dp)

    题意 ftiasch 有 N 个物品, 体积分别是 W1, W2, ..., WN. 由于她的疏忽, 第 i 个物品丢失了. “要使用剩下的 N - 1 物品装满容积为 x 的背包,有几种方法呢?” ...

  5. PAT 乙级 1059

    题目 题目地址:PAT 乙级 1059 题解 开始我是从暴力循环的角度考虑这道题,大概计算了一下时间复杂度应该不会超,但是很不幸没有通过,时间超限:之后考虑搜索算法可能优化不太好,因此就把输入的序列先 ...

  6. TO_DATS() AS ABAP_DATE

    有的时候一个想不到的小问题,,才是致命的问题!

  7. 卸载Redhat 7自带的yum,安装并使用网易163源

    由于redhat的yum在线更新是收费的,如果没有注册的话不能使用,如果要使用,需将redhat的yum卸载后,安装CentOS yum工具,再配置其他源,以下为详细过程:删除redhat原有的yum ...

  8. 使用U盘给笔记本重做系统

    **一.戴尔 Vostro 14 3000 Series **1. 开机时快速按F12进入BIOS界面 **2. 按照下图进行一系列的处理,把U盘被设置为第一启动项 **3. 插入U盘后进入老毛桃PE ...

  9. 【Python】剑指offer 14:剪绳子

    题目:给你一根长度为n的绳子,请把绳子剪成m段 (m和n都是整数,n>1并且m>1)每段绳子的长度记为k[0],k[1],-,k[m].请问k[0]k[1]-*k[m]可能的最大乘积是多少 ...

  10. 问题 1936: [蓝桥杯][算法提高VIP]最大乘积

    问题 1936: [蓝桥杯][算法提高VIP]最大乘积 时间限制: 1Sec 内存限制: 128MB 提交: 77 解决: 16 题目描述 对于n个数,从中取出m个数,如何取使得这m个数的乘积最大呢? ...