首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在旧金山使用fontWithSize API

在旧金山使用fontWithSize API
EN

Stack Overflow用户
提问于 2015-09-06 17:33:13
回答 1查看 1.4K关注 0票数 2

iOS 9中的新旧金山字体通过调整SF显示和SF文本之间的跟踪和动态切换,对其使用的大小进行了优化。在WWDC会话#804中指出,开发人员不应该通过尝试使用UIFont初始化fontWithName来使用旧金山,例如:

代码语言:javascript
复制
UIFont *originalFont = [UIFont systemFontOfSize:11];
UIFont *newFont = [UIFont fontWithName:originalFont.fontName size:44];

这是因为当使用fontWithName API时,系统无法优化新大小的字体。

相反,建议从原始字体中获取UIFontDescriptor,并以新的字体大小创建新字体,如下所示:

代码语言:javascript
复制
UIFont *originalFont = [UIFont systemFontOfSize:11];
UIFont *newFont = [UIFont fontWithDescriptor:originalFont.fontDescriptor size:44];

但是,它们没有提到是否允许优化:

代码语言:javascript
复制
UIFont *originalFont = [UIFont systemFontOfSize:11];
UIFont *newFont = [originalFont fontWithSize:44];

我的问题是,fontWithSize API的行为是否类似于fontWithName API或fontWithDescriptor API --它是否为新大小优化字体?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-06 17:56:41

我可以确认fontWithSize确实创建了一个新大小的优化字体。

代码语言:javascript
复制
Printing description of originalFont:
<UICTFont: 0x7f8d9ba85340> font-family: ".SFUIText-Regular"; font-weight: normal; font-style: normal; font-size: 11.00pt

Printing description of newFont:
<UICTFont: 0x7f8d9ba7fe70> font-family: ".SFUIDisplay-Regular"; font-weight: normal; font-style: normal; font-size: 44.00pt
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32426341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档