[Swift通天遁地]八、媒體與動畫-(12)CoreText框架中的字體的FontMetrics布局信息
阿新 • • 發佈:2019-02-07
tex 最大 color ext 不可 addition 輸出 start esc
本文將演示字體的布局信息。文字的布局就是將眾多字形,通過一定的規則排列在顯示設備上。
文字分布的區域被稱為文本區,字形的排列是基於一條不可見的線進行排列的,這條抽象的線稱為基線。
在左側的項目導航區,打開視圖控制器的代碼文件【ViewController.swift】
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib.8 9 //初始化一個指定尺寸的字體對象 10 let font = UIFont.systemFont(ofSize: 24) 11 12 //輸出字體對象的上行高度,即基線與字形最高點之間的距離。 13 print("font.ascender: \(font.ascender)") 14 //輸出字體對象的下行高度,即基線與字形最低點之間的距離。 15 print("font.descender: \(font.descender)") 16 //輸出基線到大寫字母最高點的距離。 17 print("font.capHeight: \(font.capHeight)") 18 //輸出基線至非突出的小寫字母最高點的距離。 19 print("font.xHeight: \(font.xHeight)") 20 //輸出一行字形的最大高度,等於前三個屬性值的和。 21 print("font.lineHeight: \(font.lineHeight)") 22 //輸出行距的數值,即上方一行的最低點,與下方一行的最高點的距離 23 print("font.leading: \(font.leading)") 24 } 25 26 override func didReceiveMemoryWarning() { 27 super.didReceiveMemoryWarning() 28 // Dispose of any resources that can be recreated. 29 } 30 }
[Swift通天遁地]八、媒體與動畫-(12)CoreText框架中的字體的FontMetrics布局信息