游戏开发的过程中,总免不了要使用一些字体库。

文章《引用地址》

然而字体库中的字不可能全部需要使用到,一个字体库小则几百K,大则十几M,这无疑增加了客户的流量费用,更增加了游戏的下载时间,使得游戏的体验更差。

不过,网络上有些字体提取工具,可以提取出指定的文字,避免了上述的情况。

下面我来说一下,最近找到的一款Google开源的字体提取神器——sfntly

开源地址:https://github.com/googlei18n/sfntly

(由于墙的原因,下载速度够慢,于是我mirror到OSC上了):http://git.oschina.net/cachegit/sfntly

下面介绍下编译及使用方式(因为PC安装的是java环境,所以编译的是java文件夹下的):

1. 下载源码到本地,并进入 java 目录,再使用 ant 方式编译 jar 包

git clone http://git.oschina.net/cachegit/sfntly
cd sfntly/java
ant

编译出来的包在当前目录的 dist 文件夹下

├─lib
├─sample
│  ├─sflint
│  └─sfntdump
└─tools├─conversion│  ├─eot│  └─woff├─fontinfo├─sfnttool└─subsetter

2. 真正使用到的工具在 dist/tools/sfnttool 目录下,执行命令行查看 参数

### 命令行
java -jar sfnttool.jar -h### 参数介绍
Subset [-?|-h|-help] [-b] [-s string] fontfile outfile
Prototype font subsetter-?,-help        print this help information-s,-string       String to subset-b,-bench        Benchmark (run 10000 iterations)-h,-hints        Strip hints-w,-woff         Output WOFF format-e,-eot  Output EOT format-x,-mtx  Enable Microtype Express compression for EOT format

3. 下面进行字体提取,使用命令行 (源字体库放于此目录下,导出的字体库也在此目录)

java -jar sfnttool.jar -s '需要提取的字体' 源字体库 导出的最终字体库###ex
java -jar sfnttool.jar -s '0123456789' llk.ttf llk2.ttf

注意:

我的运行环境是:

### ant
$ ant -v
Apache Ant(TM) version 1.9.7 compiled on April 9 2016
Trying the default build file: build.xml
Buildfile: build.xml does not exist!
Build failed### java
$ java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

利用谷歌开源工具 sfntly ,修改字体文件制作想要的字体文件相关推荐

  1. 学习谷歌开源工具Magenta

    学习谷歌开源工具Magenta Magenta介绍 Magenta下载 python安装 1)前置安装 2)下载python3 magenta环境安装 使用Magenta 编辑shell脚本 用自己的 ...

  2. matlab遍历文件制作自己的数据集 .mat文件

    原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/9115788.html 看到深度学习里面的教学动不动就是拿MNIST数据集,或者是IMGPACK ...

  3. docker容器cpu高问题排查_干货详解:一文教你如何利用阿里开源工具,排查线上CPU居高问题...

    前言 在我们开发过程中,无法避免的会出现所谓的垃圾代码,导致服务器的CPU一直处于100%.但我们应用已经上线,导致服务器CPU居高,但又不知道哪边出现的问题,我们应该怎么去找出哪边的代码出现问题呢? ...

  4. 如何利用 Google 开源工具 Ko 在 kubernetes 上构建并部署 Go 应用

    Ko 是 Google 开源的一款用于构建并部署 Go 应用的工具. 这是一款简单.快速的 Go 应用镜像构建器.并与 Kubernetes 集成,能够将应用快速部署到 Kubernetes 上.是云 ...

  5. 利用 labelCloud 开源工具标注自己的点云数据集为KITTI标注格式教程(支持pcd、bin格式点云)

    先贴地址 github 地址:https://github.com/ch-sa/labelcloud 标注为KITTI格式的复现步骤与操作流程 首先吧pcd格式点云转乘bin格式 克隆代码 git c ...

  6. RT-Thread GCC VSCode等开源工具链 在智能小车制作中的应用

    学 校: 山东大学(威海) 队伍名称: 海韵五队 参赛队员: 崔海勤.刘子晖.赵润萌 带队教师: 王小利 简 介: 社会的不断进步与发展,伴随的是对自动化技术需求的不断增加,同时自动化程序也呈现出任务 ...

  7. MIKE21 教程 3.2 随空间变化的网格文件制作(.dfsu文件制作) 曼宁值网格文件制作

    目录 1 数据准备 1.1 基于地形设置 1.2 基于地形水深设置: 2 数据导入 3 数据导出 上一节讲解了如何制作时间序列文件.

  8. 【工具】在TTF字体中提取想要的文字,让字体文件变迷你

    看到个非常实用的字体剪辑博文,记下以备后用.原地址为http://blog.csdn.net/ldpjay/article/details/46561031,大家可以到原地址查看. [说明] 游戏中经 ...

  9. 谷歌年度AI技术总结来了!Jeff Dean执笔,附赠27个开源工具和数据大礼包

    杨净 梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI Jeff Dean亲笔盘点谷歌AI研究成果,已经成了一年一度的保留节目. 今年也不例外,还是他抽出一部分假期时间完成的. 过去一年,谷 ...

最新文章

  1. 小鹏,该兑现PPT了
  2. Android开发--PreferenceActivity中打开子PreferenceScreen黑屏的解决办法
  3. 服务化实战之 dubbo、dubbox、motan、thrift、grpc等RPC框架比较及选型
  4. ubuntu 配置静态IP及DNS
  5. bzoj1051 [HAOI2006]受欢迎的牛 tarjan缩点
  6. 比较python类的两个instance(对象) 是否相等
  7. STM32 定时器中断
  8. 使用BUCK进行iOS项目打包
  9. 栈和队列的Java实现
  10. C++实现 电子邮件客户端程序(简易版)
  11. 冰雪大作战服务器响应超时,《冰雪大作战》一场回归童心的战争游戏
  12. 开源工业物联网数据库 Apache IoTDB 毕业成为 Apache 顶级项目!
  13. 使用Py-OpenCV(SIFT关键点)实现自然图像中的logo商标识别和定位
  14. 青少年怎么学计算机,青少年编程的正确学习路线
  15. java开发工程师必看书籍
  16. 无人机出问题更多可能是硬件上的问题而不是软件上的问题。
  17. Win8各国语言包的安装,让系统变成你想要的语言版,带你体验不一样的输入法
  18. 硬件知识:台式电脑主机各种接口介绍
  19. gitlab配置126邮箱发送邮件
  20. 建议收藏 | 可实操,数据中台选型示例

热门文章

  1. Java阿里巴巴开发手册与JDK1.8API中文版下载
  2. 1台电脑安装2个网卡(无线、有线)同时使用
  3. 千寻位置 开发demo_打开摄像头,2D插画实时变动画,中国程序媛出品,Demo在线可玩...
  4. 2018年上海后半年JAVA软件工程师面试真题
  5. 【C语言题目】循环-约瑟夫环
  6. 纪念 Dan Kohn 先生
  7. 宾果消消乐和宾果消消消_手机游戏软件宾果消消消和开心消消乐各有什么优点?...
  8. snapcraft动手实践 --- Web Camera
  9. 【面试题-算法思想】如何从包含大量URL的A,B文件中找到相同的URL?
  10. 初级程序员Mysql最新安装步骤(安装,卸载,常见问题)