
woff2是字体文件格式,子集化则决定文件包含哪些字形。体积变小后出现个别字使用另一种字体,可能是子集缺少字符、unicode-range声明不对应或字体回退,并不一定是网页编码损坏。
用真实内容检查字符范围
整理公司名、产品型号、繁简中文、标点和可能新增的内容,不能只拿首页已有几十个字制作永久子集。动态文章、客户名称和搜索结果会引入新字符。若只覆盖当前页面字形,应有随内容更新的流程,不能把一次导出当作长期完整字库。
核对文件字形与声明一致
unicode-range描述某个字体面适用的字符范围,但不会替文件创造缺失字形。检查实际子集内容、CSS声明和请求是否配套。声明过宽可能让浏览器选择没有字形的文件,声明过窄则可能让本来存在的字符没有机会使用该字体。

设计可靠的回退字体链
为未覆盖字符提供清楚、可接受的系统或其他授权字体回退,比较字重、基线与标点位置。混合字体不是任何情况下都算故障,但若公司名一半字形不同或按钮高度变化,应按实际阅读体验调整,而不是将未知字一律替换成图片。
检查新增内容与缓存更新
修改子集或范围后使用版本化资源并核对CDN、字体缓存及公开CSS。测试一段包含此前未出现字符的内容,确认新字不是只在编辑器里正常。再检查手机和不同操作系统,记录哪些字来自主字体、哪些按设计回退。
关键区别

woff2格式:表示字体容器格式;不说明字符是否齐全。
字体子集:实际保存部分字形;需考虑动态内容。
unicode-range:声明适用字符范围;不能补出缺失字形。
怎样确认处理到位
真实和新增文本均可阅读,关键名称字形符合设计,子集声明与文件一致,缺字回退不会造成明显错位或不可识别字符。
容易误判的边界
子集优化前还要确认字体许可允许相应处理;不要用非法字符替换或图片化整段正文掩盖字库覆盖问题。
