当前位置: 首页 > news >正文

字体文件大小压缩指南

字体文件子集化大小压缩指南

  • 思路
    • 字体渲染原理
    • 性能优化策略
  • 步骤
    • 1. 获取前端项目所需要的所有文案
    • 2. 下载字体子集化工具代码
    • 3. 把charset.txt和字体文件按照工具readme说明进行放置
    • 4. 执行打包获取子集化后的字体文件
    • 5. 预览子集化后的字体文件样式
    • 6. 效果
    • 7. 字体文件预加载
    • 9. 更新频率
    • 10. 字体文件推荐格式
    • 11. 在线工具

思路

字体渲染原理

在前端开发中,TTF和WOFF2等字体文件在浏览器中的渲染机制是按单个字符(字形)进行渲染的,而不是对整个字符串进行整体处理。
字体文件包含了一系列独立的字形数据,每个字符都对应着特定的字形信息。当浏览器解析文本内容时,会根据字符编码逐个查找字体文件中对应的字形数据,然后进行渲染显示。
浏览器通过@font-face规则加载字体文件后,会建立字符编码与字形数据之间的映射关系。渲染过程中,文本被拆分为独立的字符单元,每个字符都通过查找字体文件中的字形信息来独立渲染

性能优化策略

由于中文字体包含数万个字符,全量加载会显著增加文件体积和加载时间。因此我们需要从全量字体包中分离出我们真正需要的字体集。

步骤

1. 获取前端项目所需要的所有文案

中文:项目中所需要的中文
英文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z
数字:0123456789
常用符号:·!@#¥%……&*()——+~!{}|[];',./;‘’,。、“”"-<>??_=《》::
在这里插入图片描述

2. 下载字体子集化工具代码

仓库:https://github.com/BoaleH/font-subset
分支:master

3. 把charset.txt和字体文件按照工具readme说明进行放置

在这里插入图片描述

4. 执行打包获取子集化后的字体文件

npm run build

在这里插入图片描述

5. 预览子集化后的字体文件样式

[图片]
在这里插入图片描述

6. 效果

可以看到前后大小对比,大小差异非常明显
在这里插入图片描述
在这里插入图片描述

7. 字体文件预加载

<linkrel="preload"href="https://c-smart5-zitiku.oss-cn-hongkong.aliyuncs.com/font/AlibabaSansHK/AlibabaSansHK-55/AlibabaSansHK-55.woff2"as="font"type="font/woff2"crossorigin
/>

字体文件子集化之后就不会有那么大了,实际上可以不加。除非字体文件很大,才需要做预加载

9. 更新频率

由于字体子集化文件我们是依据此刻所需要的文字进行转换的,未来随着业务开发,会需要更多的新字符,因此需要每个月末都需要找后端要最新的国际化文案,重新执行一次字体子集化,以此更新字体文件的字符。

10. 字体文件推荐格式

浏览器推荐woff2,所以尽量使用woff2字体包

11. 在线工具

如果不想用代码跑,也可以用这两个在线工具。但是我建议用代码跑,能批量、能去重。

压缩工具:https://ecomfe.github.io/fontmin/#app
woff2转换工具:https://transfonter.org/
在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/a/606347.html

相关文章:

  • 异步IO的其他特性
  • 软考 系统架构设计师历年真题集萃(202)—— 2025年11月系统架构设计师真题5
  • 计算机网络基础:计算机网络概述
  • 电子商务网站建设实习wordpress手机页面模板下载地址
  • 苏州外贸网站建设运营域名注册价格
  • 危机公关的技术实现:Infoseek 如何用 AI 重构 “风险识别 - 智能处置” 全链路
  • “元宇宙实验室”落地中小学:AI技术如何重构未来课堂空间
  • 模板ACM
  • 图论专题(二):“关系”的焦点——一眼找出「星型图的中心节点」
  • 宁晋网站开发2019做网站的出路
  • 食品招商网网站如何做好优化
  • 三、ingress全面详解: 实例配置及访问
  • 商丘三合一网站建设云南做网站费用
  • 用php做京东网站页面产品开发流程6个步骤
  • 北京网站seo推广上海有名的效果图公司
  • Windows下 AutoGen(二)Autogen Studio
  • 用别人公司名字做网站违法么中国建设招标网 官方网站下载
  • 2026中国(济南)国际化工装备与智能制造展览会将于3月9日举办
  • Linux入门攻坚——54、SCSI与iSCSI协议初步
  • 如何在需求文档不清导致返工后改进流程
  • 网站建设简运维 简历宣武深圳网站建设公司
  • 自己做相册的网站免费域名注册查询入口
  • 深圳企业网站建设费用楚雄 网站建设
  • 使用goaccess监控系统
  • Go语言使用的编译器 | 入门到实战全解析
  • 成都网站建设制作网络与智能媒体设计 干什么?
  • Flink 的 RocksDB 状态后端在 vivo 的实践
  • 5-脱氧-5-甲硫腺苷标记生物素,5-MTA-Biotin,Biotin-5-脱氧-5-甲硫腺苷,5-MTA-生物素复合物
  • 怎么做自己的网站免费进入公众号继续阅读下一章
  • fastapi项目结构