这是一个工作示例,它对thumb_up
和thumb_down
字形和连字进行了子集化。
fonttools subset MaterialIcons-Regular.ttf \
--unicodes=5f-7a,30-39,e8db,e8dc \
--no-layout-closure \
--output-file=o.woff2 \
--flavor=woff2
这说明了什么:
--unicodes=5f-7a
: 包括符号_
、字母a-z
和数字0-9
。据我了解,除非定义了单个字形, , , ... ,否则字体无法识别thumb_alt
为连字(即使我们永远不会要求字体呈现单个字母字形)。t
h
u
...e8db,e8dc
:指定子集中实际需要的字形。
--no-layout-closure
: 只包括我们需要的字形的连字 (thumbs_up
和thumbs_down
),而不包括任何其他可以从集合中构造的连字_a-z
,比如add
,delete
等等face
。如果没有这个选项,子集就会增长到几乎整个集合。
您可以检查生成的文件,例如在fontdrop.info上,它将显示 30 个字形和两个连字。在我的情况下,您可以使用指南中记录的文件:
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url('../../fonts/o.woff2') format('woff2');
}
.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 24px; /* Preferred icon size */
display: inline-block;
line-height: 1;
text-transform: none;
letter-spacing: normal;
word-wrap: normal;
white-space: nowrap;
direction: ltr;
/* Support for all WebKit browsers. */
-webkit-font-smoothing: antialiased;
/* Support for Safari and Chrome. */
text-rendering: optimizeLegibility;
/* Support for Firefox. */
-moz-osx-font-smoothing: grayscale;
/* Support for IE. */
font-feature-settings: 'liga';
}
要查找所需字形的 Unicode 值,您可以查看代码点文件。