Новые шрифты в Сан-Франциско в iOS 9 оптимизированы для размера, в котором он будет использоваться, путем настройки отслеживания и динамического переключения между SF Display и SF Text. Было отмечено, в WWDC сессии # 804 Разработчики не должны использовать Сан-Франциско, пытаясь инициализировать UIFont
с помощью fontWithName
, например:Использование шрифтаWithSize API с Сан-Франциско
UIFont *originalFont = [UIFont systemFontOfSize:11];
UIFont *newFont = [UIFont fontWithName:originalFont.fontName size:44];
Это происходит потому, что система не может оптимизировать шрифт для нового размера при использовании fontWithName
API.
Вместо этого было рекомендовано, чтобы получить UIFontDescriptor
от оригинального шрифта и создать новый шрифт, что в новом размере, например, так:
UIFont *originalFont = [UIFont systemFontOfSize:11];
UIFont *newFont = [UIFont fontWithDescriptor:originalFont.fontDescriptor size:44];
Однако они не упоминают, если следующие позволяют оптимизации или нет:
UIFont *originalFont = [UIFont systemFontOfSize:11];
UIFont *newFont = [originalFont fontWithSize:44];
Мой вопрос, имеет ли fontWithSize
API ведут себя как fontWithName
API или fontWithDescriptor
API - это приводит к оптимизации шрифта для нового размера или нет?