总结如下:

iOS 粗体字 uilable 苹果粗体字怎么样_微软雅黑字体 mac

Font-weight就是字形的重量,就是粗不粗。在和程序员对接设计的过程中,发现前端大佬很多该加粗的地方都没有加粗,由此顺藤摸瓜,发现前端大佬们在看标注时,都不知道Pingfang的medium是表示加粗的属性,另外,前端也不知道medium到底是加了多少的字重,没有一个可供参考的具体数值。

目前通用的字体字重(font-weight)名称如下:

  • 100 - Thin
  • 200 - Extra Light (Ultra Light)
  • 300 - Light
  • 400 - Normal
  • 500 - Medium
  • 600 - Semi Bold (Demi Bold)
  • 700 - Bold
  • 800 - Extra Bold (Ultra Bold)
  • 900 - Black (Heavy)

这里需要特别说明一下,在设计稿内,苹方和微软雅黑的名称并不完全遵循通用名称规则,还是以其对应的字重数值为准。

微软雅黑支持三种字重:100(Lighter) 、400(Normal) 和 700(Bold)

苹方在程序中支持9种字重,在设计稿中仅有6种字重:100-极细体(Extra Light)、200-纤细体(Thin)、300-细体(Light)、400-常规体(regular)、500-中黑体(Medium)、700-中粗体(Bold)

微软雅黑字体只支持三种粗细,所以当你在代码里写成500的时候,也会被认为是400。但是 Mac 上的“苹方”字体,就支持从100到900之间的各种粗细。

其中Lighter和bolder代表的字重取决于其父元素的重量,是基于继承的重量值计算而得的。Bolder指定外观的重量大于继承的值,Lighter指定外观的重量小于继承的值。

计算规律如下:

iOS 粗体字 uilable 苹果粗体字怎么样_基于vc的freetype字体轮廓解析_02

关于字效渲染:

如果指定的font-weight数值,即所需的字重,能够在字体中找到对应的字重,那么就匹配为该对应的字重。否则,使用下面的规则来查找所需的字重并渲染: 

  • 如果所需的字重小于400,则首先降序检查小于所需字重的各个字重,如仍然没有,则升序检查大于所需字重的各字重,直到找到匹配的字重。
  • 如果所需的字重大于500,则首先升序检查大于所需字重的各字重,之后降序检查小于所需字重的各字重,直到找到匹配的字重。 
  • 如果所需的字重是400,那么会优先匹配500对应的字重,如仍没有,那么执行第一条所需字重小于400的规则。 
  • 如果所需的字重是500,则优先匹配400对应的字重,如仍没有,那么执行第一条所需字重小于400的规则

作者WecTeam   来自掘金

字重就告一段落了…

话说回来,Window系统下微软雅黑只有三种字重。Mac上的苹方却有9种字重。那如果是开发H5的话,该如何权衡Windows系统和Mac系统上字体的展示呢?

比如设计稿使用的是苹方中黑体,那么在windows系统上是应该展示normal还是Bold呢?这些都是这个场景下需要考虑的问题。我周围的小伙伴给出的解决方案是:

如果中黑体(500)出现在标题,那就按中粗体(700)处理,如果出现在正文,那就按常规体(400)处理。

这好歹也是个可接受的解决方法了,哈哈哈

------------------------------------------------

以下是一些已经有解决方案的小障碍,啊哈哈哈

当我在设计里调用我mac中的微软雅黑字体的时候,惊奇的发现只有regular字重,没有bold字重,问了几个小伙伴,她们也没有这个字重,那么,我去网上找了一个微软雅黑Bold字重打算安装,结果mac系统就开始报错说我安装了多个副本…

那么如何在mac上安装微软雅黑的多个字重呢?即同时使用Regular和Bold字重呢?

答案在这里:

根据链接内容操作就成,很简单。