CSS 为什么不能用 SourceHanSansCN 或 SourceHanSansSC 引入思源黑体 CN Normal 或 思源黑体 Normal?

2017-02-20 17:32:27 +08:00
 jmyz0455

最近在浏览思源黑体的官方 GitHub 主页时有一事不解:

在 Language-specific OTFs 里点击 Simplified Chinese 下载的文件叫 SourceHanSansSC.zip ,解压后大小 109MB ,在中文语言的 Windows 里点击 SourceHanSansSC-Normal.otf 文件显示字体名称是“思源黑体 Normal ”。

然后我在 Region-specific Subset OTFs 里点击 China 下载的文件叫 SourceHanSansCN.zip ,解压后大小 55.8MB ,在中文语言的 Windows 里点击 SourceHanSansCN-Normal.otf 文件显示字体名称是“思源黑体 CN Normal ”。

问题来了,英文的网站下载英文的字体文件,字体属性名称却是中文,我好奇地安装了字体并写了个 Demo ,果然出现 font-family: "SourceHanSansCN"; 不生效而只有 font-family: "思源黑体 CN"; 生效的情况。而思源黑体和 SourceHanSansSC 同理。( PS :关于 SourceHanSansCN 和 SourceHanSansSC 的区别可以看这个 知乎回答,我一开始也不懂)

大家可以看谷歌的 Noto 字体的做法,只有一个名字 Noto Sans CJK SC , 一句 font-family: "Noto Sans CJK SC"; 即可,没有任何歧义。

而且各位可能觉得这只是 Adobe 的喜欢这样命名没问题,但是你们可以看一下你们的 Windows 系统-查看安装的字体,你会发现你的系统没有安装一个叫 Microsoft YaHei 的字体,只安装了微软雅黑,但是 font-family: "Microsoft YaHei"; 或 font-family: "微软雅黑"; 均可以生效。

说得有点乱,其实就是我好奇思源黑体在 css 的 font-famliy 命名上为什么不是中英文通用(但是我看到有人安装的字体直接就叫 SourceHanSansCN 或 SourceHanSansSC ),而微软雅黑却没有这个问题(可能也是系统的锅?)。小白问题求轻喷。

10943 次点击
所在节点    CSS
6 条回复
lslqtz
2017-02-20 18:27:43 +08:00
没有空格?
Bardon
2017-02-20 20:04:22 +08:00
windows 下不知道
linux 下我知道 `fc-list :lang=zh` 能打印出字体的 title
jmyz0455
2017-02-21 08:15:33 +08:00
@lslqtz SourceHanSansCN 和 SourceHanSansSC 不用空格吧,你指的是?
lslqtz
2017-02-21 09:40:09 +08:00
@jmyz0455 系统显示这个字体不能用是 bug 但我更怀疑是没有空格。
因为大部分字体英文都包含空格
lslqtz
2017-02-21 09:41:39 +08:00
SourceHanSansCN-Normal ?
ewex
2017-02-21 10:58:02 +08:00
1. 回答“标题”:你写错了,肯定不能用。正确写法 Source Han Sans SC 和 Source Han Sans CN 。另外 Normal 需要额外定义,默认情况下不同操作系统、不同系统语言、不同浏览器、不同浏览器版本、不同浏览器语言也是不一样的(我装逼地写了这么多不同,实际不一致的情况很少)。

2. 回答“问题来了”:按照第二、三、六段落内容推测你的系统为简体中文,属性是中文难道体验不是更好?至于为什么不是全中文这应该是 Adobe 的命名问题。区别的问题,没必要看逼忽,官网和命名上就很容易理解。

3. 第六段落:你需要特别说明系统语言,英文版下面就是 Microsoft YaHei ,虽然可以推断你用的是简体中文版。另外 CSS 里的字体最好不要用非英文,原因你可以去逼忽看。

4. 最后一段:中英文通不通用无所谓,原因同上。微软雅黑没这问题不是系统的锅,是字体商的命名问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/341829

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX