Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[注解] [506] 华丽的 & 符号 #63

Open
cssmagic opened this issue Feb 8, 2017 · 0 comments
Open

[注解] [506] 华丽的 & 符号 #63

cssmagic opened this issue Feb 8, 2017 · 0 comments
Labels

Comments

@cssmagic
Copy link
Owner

cssmagic commented Feb 8, 2017

花絮与注解

第 125 页 · 最后一段

……在某些情况下(比如在 CMS 环境下),我们根本无法轻易地修改 HTML 结构。

CMS 即 “内容管理系统”,比如像 WordPress 这样的文章发布系统。CMS 意味着网站内容可能是 UGC(用户生成的内容),我们作为网站的设计者和维护者,当然是不可能去修改这些内容的。

第 128 页 · 第二段

很遗憾,我们唯一的出路有些 hack 的味道:不去指定字体的家族名(family name),而是直接指定字体中我们想要的单个风格/字重所对应的 “PostScript 名称”。

一般来说,一款字体往往是由多个物理文件组成的,每个文件负责容纳不同字重或不同风格的字形,这样比较便于字体的开发、维护和分发。

举例来说,一套微软雅黑字体包含 msyh.ttfmsyhbd.ttf 两个文件,分别是常规字形和加粗字形。而对于西文字体来说,斜体字形往往是单独设计的,所以一款字体可能至少会包含四个文件——比如一套完整的 Consolas 字体包含常规字重、常规字重斜体、加粗字重、加粗字重斜体等四套字形。

好,现在我们可以解释一下 “家族名” 和 “PostScript 名称” 这两个概念了。

对于 Consolas 这款字体来说,它所包含的(不同风格和字重所对应的)四个文件的 “家族名” 是一样的,同时还会通过不同的 “PostScript 名称” 来标记自己的风格和字重是什么。一般我们称呼一款字体时,用的往往就是它的 “家族名”。

这些概念的关系可以用如下表格来描述:

文件名 字重与风格 家族名 PostScript 名称
consola.ttf 常规 Consolas Consolas
consolai.ttf 斜体 Consolas Consolas-Italic
consolab.ttf 加粗 Consolas Consolas-Bold
consolaz.ttf 加粗斜体 Consolas Consolas-BoldItalic

更多与字体名有关的知识,可参考这里:
https://fontforge.github.io/fontinfo.html

@cssmagic cssmagic mentioned this issue Feb 8, 2017
@cssmagic cssmagic added the 注解 label Mar 2, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant