最近在写官网时候开开心心的将需求开发完成验收完毕,就在上线的时候你发生了奇怪的事情。
上线后通过域名访问发现要很久页面才能展示出来,后来通过排查发现服务器带宽小的可怜,机智的我有通过Network 和 Lighthouse 发现问题出在字体上
项目用到四个字体ui提供的都是15000kb左右的大小文件为otf后缀格式,导致页面解析慢
想到字体的原因我就想到字体压缩 找了一些工具发现其他都是pyhton或者需要手动录入用到的文字进行提取的,适合前端童鞋的好像只剩下了font-spider 工具
- 安装工具
npm install font-spider -g- 进入项目目录执行压缩 因为我有多个文件所以用了*.html
font-spider *.html 或者 font-spider 要压缩的文件名字.html- 压缩完成
.font-spider文件夹中是压缩前的字体,压缩后的字体会替换到原本文件
这样工具就会自动提取html中用到的字体其他未用到的删除,达到压缩的目的。
如果到这里你成功了那么恭喜你,但如果你出现了报错,说明你的字体文件类型不是font-spider 所支持的
**
path.dirname = newName.dirname;
TypeError: Cannot read property ‘dirname’ of undefined
**
1.将你的otf或者其他类型的字体文件 转换为ttf后缀文件
文件类型转换地址
2. css中引用ttf后缀字体文件
3. 重新运行压缩命令 font-spider *.html