ttf字体包瘦身

注:此方法只试用于只需要少数字体的情况。

需求

做APP时出现了一个需求,应用登录页面和主页面的系统名称需要根据用户所属行政区划进行动态调节。
为了突出系统名和样式的美观,系统名在显示时使用了华文琥珀字体。

有了此需要,在应用打包时就需要将华文琥珀字体的ttf文件添加到项目中。

问题

在项目中添加该ttf文件后,整个安装包提交直接曾加了将近3M。
这就有些得不偿失了,我们需要的就几个行政区划的名字,结果需要将所有字体打包,体积不暴增才怪。

那就需要将不需要的字体排除,只将需要的字体打包进ttf文件就可已解决问题。

处理过程

准备工作

  • 下载好完整版华文琥珀字体的.ttf文件。
  • 下载好fontcreator字体编辑器。

开始操作

  1. 在fontcreator中打开完整版字体文件。
  2. 在fontcreator中新建瘦身版文件。
  3. 打开在线字符编码查询,查找指定字体的编码。
  4. 华文琥珀在python代码中怎么写 华文琥珀字体图片_登录页面

  5. 在fontcreator完整版字体中查找字体编码对应的字体并拷贝它。
  6. 华文琥珀在python代码中怎么写 华文琥珀字体图片_登录页面_02

  7. 在压缩版中插入新字体并把刚刚拷贝的字体复制上去,并设置字体编码。
  8. 华文琥珀在python代码中怎么写 华文琥珀字体图片_ttf字体瘦身_03


  9. 华文琥珀在python代码中怎么写 华文琥珀字体图片_华文琥珀在python代码中怎么写_04

  10. 根据自己的需求重复第3、4、5步骤。
  11. 华文琥珀在python代码中怎么写 华文琥珀字体图片_字符编码_05

  12. 注意:要在瘦身文件前默认出入一个空值且编码为0的字体,不然瘦身包使用时会有渲染不上的情况。
  13. 保存果实
    所有需要的字体都拷贝完成后保存瘦身文件即可得到小号的ttf文件了。
  14. 华文琥珀在python代码中怎么写 华文琥珀字体图片_ttf提取字体_06


  15. 华文琥珀在python代码中怎么写 华文琥珀字体图片_ttf字体瘦身_07

  16. ttf文件从3621kb,变为11kb,瘦身成功。