1. 程式人生 > >[Swift通天遁地]八、媒體與動畫-(12)CoreText框架中的字體的FontMetrics布局信息

[Swift通天遁地]八、媒體與動畫-(12)CoreText框架中的字體的FontMetrics布局信息

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布局信息