[注解] [506] 华丽的 & 符号
Opened this issue · 0 comments
cssmagic commented
花絮与注解
第 125 页 · 最后一段
……在某些情况下(比如在 CMS 环境下),我们根本无法轻易地修改 HTML 结构。
CMS 即 “内容管理系统”,比如像 WordPress 这样的文章发布系统。CMS 意味着网站内容可能是 UGC(用户生成的内容),我们作为网站的设计者和维护者,当然是不可能去修改这些内容的。
第 128 页 · 第二段
很遗憾,我们唯一的出路有些 hack 的味道:不去指定字体的家族名(family name),而是直接指定字体中我们想要的单个风格/字重所对应的 “PostScript 名称”。
一般来说,一款字体往往是由多个物理文件组成的,每个文件负责容纳不同字重或不同风格的字形,这样比较便于字体的开发、维护和分发。
举例来说,一套微软雅黑字体包含 msyh.ttf
和 msyhbd.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