Ответ 1
Короткий ответ: "Только люди Apple знают"
Более подробный ответ, после копания (реверсирование) фреймворков:
-
UIKit.framework
не использует вообщеCGFont
type -
UIKit.framework
используйте вместо CoreTextCTFont
иGSFont
... -
GSFont
происходит из...GraphicsServices
private framework -
GraphicsServices
... использоватьCGFont
Итак, вот моя догадка (может быть, совсем не так):
-
UIFont
>GSFont
(частный) >CGFont
-
UIKit
>GraphicsServices
>CoreGraphics
:По крайней мере, в отношении шрифтов инженеры Apple установили уровень абстракции между
UIKit
иCoreGraphics
, через obscurGraphicsServices
one. -
iOS
>iOS
(частный) >Mac OSX
:Почему они это сделали, я бы сказал, что
CoreGraphics
, который поставляется с Mac OSX, не был оптимальным для устройств iOS, аUIKit
был только iOS, они добавили слой между обоими apis. Или, как правило, они планируют один день полностью отделить UIKit от CoreGraphics... iOS от Mac OSX... Кто знает! Яблочные люди, мой короткий ответ:)
Об использовании пользовательских шрифтов с UIKit
вам может быть интересно прочитать this.