转载自:   http://blog.csdn.net/a2331046/article/details/52904529

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

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

[objc] view plain copy  
  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会把字体名字分成几部分,用空格隔开。应该是字体也分家族吧。

我觉得说的很清楚了,到这了。

UIFont的lineHeight与pointSize相关推荐

  1. [iOS]UIFont的lineHeight与pointSize

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

  2. iOS-字体UIFont的lineHeight与pointSize

    首先我们来看一看UIFont的API里面有哪些属性: [objc] view plain copy // Font attributes @property(nonatomic,readonly,st ...

  3. Swift 计算文本的size

    iOS 11之前限制宽高计算字符串的size用的是UILabel的textRect(forBounds bounds: CGRect, limitedToNumberOfLines numberOfL ...

  4. Beginning IOS 7 Development Exploring the IOS SDK - Handling Basic Interface Fun

    Beginning IOS 7 Development Exploring the IOS SDK 目前使用的是Objective-C,用这本书,简单记录一下 第一章,图书简介 第二章,简要介绍使用x ...

  5. 【转】几点 iOS 开发技巧

    [译] 几点 iOS 开发技巧 原文:iOS Programming Architecture and Design Guidelines 原文来自破船的分享 原文作者是开发界中知晓度相当高的 Mug ...

  6. ios新手开发——toast提示和旋转图片加载框

    不知不觉自学ios已经四个月了,从OC语法到app开发,过程虽然枯燥无味,但是结果还是挺有成就感的,在此分享我的ios开发之路中的小小心得~废话不多说,先上我们今天要实现的效果图: 有过一点做APP经 ...

  7. vue3图片描点标记

    <el-dialog v-model="markVisible" title="图片标注" width="70%" :before-c ...

  8. IOS字体大小,字号的问题 UIFont

    IOS字体大小,字号的问题 UIFont 2011-06-29 16:44 UIFont Parameters fontSize The size (in points) to which the f ...

  9. iOS中关于行间距lineSpacing 行高lineHeight

    转载自:原文 关于行间距lineSpacing 先贴出一张的的iOS中的的UILabel的默认排版样式: 大家也都能看出来,默认的排版样式中,文本的行间距很小,显得文本十分挤. 这种时候,设计师就会提 ...

最新文章

  1. JavaHelp软件的一个定制实用程序类
  2. 【SRH】------常见的HTTP状态码
  3. 计算机专业到投行的工作需要的金融财务知识
  4. 解决Sublime Text打开C++文件出现中文乱码
  5. kickstart及引导镜像制作
  6. mpvue微信小程序http请求-fly.js
  7. 后缀自动机:从入门到放弃
  8. 数字模拟信号 单双信道传输
  9. html iframe php,html iframe使用的实战总结分享
  10. c++thread里暂停线程_多线程技术
  11. es6 箭头函数 rest参数 扩展运算符
  12. C#中的矩阵乘法——对图像应用变换
  13. android4.2 高用zing拍照后,返回其它页面操作时,主线程关掉或程序退出的问题解决...
  14. R语言metafor包预后meta分析复现
  15. CS229 Lecture 20
  16. 使用paython制作简单贺卡
  17. 计算机复制方法有,电脑复制粘贴怎么用(6种电脑复制粘贴方法)
  18. 微侵袭面部年轻化技术进展 (1ey-SO
  19. 海量高性能列式数据库HiStore技术架构解析
  20. 朱西产:智能网联汽车与未来出行变革

热门文章

  1. 基于SSM花卉商城设计与实现
  2. 使用squid代理时出现 The requested URL could not be retrieved
  3. OSChina 周四乱弹 —— 连繁育下一代的时间都没有
  4. Verilog设计分频器(一)
  5. iOS动画——ViewAnimations
  6. Windows驱动开发(二)WDM/WDF的IOControl
  7. python random库安装,详解python第三方库的安装、PyInstaller库、random库
  8. 并导:9:二维热传导
  9. linux时间管理,时钟中断,系统节拍
  10. 教程 | 如何使用变分自编码器VAE生成动漫人物形象