Почему UIFont и CGFont / CTFont полностью разделены?

Я пытался нарисовать текст с помощью загруженного шрифта. Я просмотрел документацию по API и поискал в Интернете. Я нашел решение, но проблема в том, что оно применимо только к структуре уровня CoreGraphics . Поэтому я искал способ конвертировать CGFont в UIFont , но не мог этого сделать.

Я понял UIFont и CGFont / CTFont полностью отделены, даже если они созданы из одного файла шрифта. CGFont и CTFont конвертируются друг в друга, но для UIFont единственный способ - воссоздать с такими атрибутами, как имя и размер. И применимые коды также разделены.

Например, CATextLayer принимает только CGFont / CTFont - нет UIFont . Но все элементы управления UIKit принимают только UIFont .

Почему существует такое разделение? Или я не прав? (Любой способ использовать загруженный шрифт в UIKit классах?)

14
задан Todd Lehman 11 April 2016 в 01:01
поделиться