#Guideline
浅浅学习下可变字体
OpenType可变字体(英语:OpenType variable fonts)是字体格式OpenType在1.8版规范中引入的扩展规范,由苹果、微软、谷歌和Adobe联合开发,于2016年9月14日正式发布。 可变字体的优势:
- 更小的文件体积
- 更自由的设计空间
- 更好的响应式网页适配性
微软可变字体简介:
https://learn.microsoft.com/en-us/typography/opentype/spec/otvaroverview
如何在web使用可变字体
可变字体(Variable fonts) 是 OpenType 字体规范上的演进,它允许将同一字体的多个变体统合进单独的字体文件中。从而无需再将不同字宽、字重或不同样式的字体分割成不同的字体文件。你只需通过 CSS 与一行 @font-face 引用,即可获取包含在这个单一文件中的各种字体变体。
@font-face {
}
静态字体和可变字体的差异
标准(静态)字体
过去,一个字体家族往往由大量独立字体文件组成,每个字体文件都代表某一特定的宽度/字重/样式的组合。因此你会看到有单独的字体文件叫做“Roboto Regular”、“Roboto Bold”,或是“Roboto Bold Italic”——这意味着你可能需要 20 或 30 个不同的字体文件才能算是有了一整个字体家族(对于有着不同宽度的大型字体来说,这个数量还要翻上几倍)。
在这样的情景下,为了在一个单纯显示进行正文展示的页面中使用一个字体,你至少需要四个字体文件:常规、斜体、加粗、斜体加粗。如果你想添加更多的字重,比如让题注更轻或让额外强调的地方更重,意味着你需要更多文件。这就导致了更多大量 HTTP 请求的产生,同时也需要下载更多的数据(通常每个文件至少有 20k 或更多)。
可变字体
通过使用可变字体,所有这些情况的排列组合都可以被装进一个文件中。这个文件可能比常规的单个字体文件大一些,但通常情况下,都不会大于,并且常常是小于你因为要展示正文所需要下载的四个文件的尺寸总和。使用可变字体的优势是你可以直接使用所有可用的字重、宽度和样式的字体,而不必像过去一样仅仅受限于使用其中单独的某一种。一个可变字体文件可以包含传统静态字体系列中的所有字体。 就原始文件大小而言,这是一个直接的胜利,因为它紧凑地打包了整个字体系列。 替换的静态字体越多,节省的空间就越大——对于非常大的字体系列,压缩甚至高达 70%。
这允许使用常见的排版技术,例如在不同的字重中设置不同大小的标题,以便在每种大小下都具有更好的可读性,或者在数据密集展示时使用稍窄一点的字体宽度。相比之下,在杂志的印刷系统中,在整个出版物中使用 10-15 种或更多不同的字重和宽度组合是很典型的——这比目前在 web 上的典型样式提供了更广泛的样式范围 (或者仅从性能方面考虑确实很实用)。
关于字体系列,字重和变体的说明
您可能注意到,我们一直在讨论为每种权重和样式 (即粗体,斜体以及斜体加粗) 创建特定的字体文件,而不是依赖于浏览器来合成它们。这样做的原因,是大多数字体对于粗体和斜体都有非常特殊的设计,它们通常包含完全不同的字符 (例如,小写字母的“a”和“g”在斜体中常常是完全不同的)。在使用非可变字体时,为了最准确地反映字体设计,避免浏览器之间的差异以及它们如何合成或不合成不同的样式,在需要的地方加载特定的字体文件会更为准确。
您可能还会发现一些可变字体分为两个文件:一个用于正体及其所有变体,另一个包含斜体变体。有时这样做是为了在不需要或不使用斜体的情况下减小整体文件大小。在所有情况下,仍然可以通过通用的 font-family 名称链接它们,以便您可以使用相同的 font-family 和相应的 font-style 来调用它们。
可变轴
可变字体新格式的核心是可变轴的概念,其描述了字体设计中某一特性的允许变化范围。 例如: “字重轴”描述了字体的粗细; “宽度轴”描述了字体的宽窄; “斜体轴”描述是否使用斜体字形并且可相应地开关; 等。 请注意,轴既可以是 范围选择 又可以是 开关选择 。