网站字体处理-字体子集.md

# 网站字体处理-字体子集

在网站中,往往涉及字体引入,对于网站中广泛使用的字体,直接引入没问题,但是对于只有少数使用场景的字体时,直接引入开销太大,如下图:

> 在当前博客中,引用了 LongCang 字体,ttf 文件大小约 5MB,占据整个网络传输的 90%,开销太大

![image-20260813210042271](https://oss.tilex.world/d/blog-images/2026/08/13/image-20260813210042271.png?sign=653W6uEO9ZDrFxWRc4ogdhQLTbIzJdMTyayWhnXgTII=:0)

但实际使用 longcang 字体的地方只有:

  • **logo**:Tilex Blog
  • 几个特殊文字

因此,几个字符就需要开销完整的 LongCang 字体,约 5MB,自然是不划算的,但可通过 `pyftsubset` 进行处理:

- pyftsubset: 是 Python 处理 fonts 的 tools 之一,可以只生成想要字符的 ttf 文件,得到所需字符的子集

可以将下面的 prompt 发给 codex:
> plan模式规划:字体子集处理
背景:由于 longcang ttf 文件太大,但在项目中并不是广泛使用的字体,只用于logo字体和首页的特殊字体,请使用 pyftsubset 对当前已有的字体提取为所需的子集,而不是完整的ttf

处理后得到一个新的、小得多的字体文件——只有 10kb

![image-20260813223457649](https://oss.tilex.world/d/blog-images/2026/08/13/image-20260813223457649.png?sign=1eG0fg-9IT-ozUho7NXEOnxH9l6DLdOTpQD0MXG14uY=:0)

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论