精简ttf字体文件

参考原文http://wv1124.iteye.com/blog/2170465

精简ttf字体文件

精简字体是开发中经常需要用的减小软件包大小和加载速度的手段。
bitmapfont比较常见,但bitmapfont制作麻烦(据说mac很方便),可能有些东西也不支持bitmapfont,这种位图格式缩放了也会失真,但是ttf总不会有大问题的。所以用精简的ttf字体文件更适合。

ttf2svg

在网上找到一个ttf转svg的软件ttf2svg。长这个样子:
ttf2svg
下载地址:
http://pan.baidu.com/s/1dDqHjJr

fonts-streamline生成精简字符集

fonts-streamline是国人写的非常实用的nodejs模块,整合了一些字体转换模块的功能.
项目托管地址
项目附带了很不错的教程,我也是后来才知道原来还有别的转换方法(看了github说明)
安装fonts-streamline需要npm,运行需要node.js,先安装node.js.
npm install -g fonts-streamline
用法简单:
fonts-streamline “这里是字符集” 源字体路径 存放精简字体路径
如:
fonts-streamline “一块钢板的艺术之旅40道工艺制程” ./FZLTCXHJW.svg ./iconfont.ttf
转换好了就生成了所有格式的字体文件了。
既然是个模块,自然node也能引用啊,可以写些批量转换的小工具啥的。

Node.js逆向TTF字体文件通常指的是解析TrueType Font(TTF)格式的字体文件,提取其中的字形数据、元数据等信息的过程。TTF字体文件包含了描述字体外观的数学曲线和其他相关信息,逆向这些文件可以用于多种目的,比如字体分析、字体编辑或生成自定义字体文件。 在Node.js环境中,可以通过解析二进制文件的方式来处理TTF字体文件。一般需要按照TTF文件格式的规范来读取和解析文件中的数据。一个基本的逆向流程可以包括以下几个步骤: 1. 读取TTF文件的头部信息,包括魔数(Magic Number)、主表长度等。 2. 解析TTF文件中的各个表(Tables),如'cmap'表包含字符到字形的映射信息,'glyf'表包含字形数据等。 3. 解析字形数据,包括点阵数据、轮廓信息等。 4. 处理和使用逆向出来的数据,可能用于字体的显示、换或进一步编辑。 以下是一个使用Node.js进行TTF字体文件逆向处理的基本代码示例(注意:这只是一个非常简化的例子,实际逆向过程会更加复杂): ```javascript const fs = require('fs'); // 读取TTF文件 fs.readFile('example.ttf', (err, data) => { if (err) { console.error('读取文件出错:', err); return; } // 假设我们知道字体文件的结构 // 读取头部信息 let header = data.slice(0, 12); console.log('TTF头部信息:', header); // 读取字形表(glyf)的数据 let glyfOffset = ...; // 根据TTF文件结构计算出的glyf表偏移量 let glyfLength = ...; // glyf表的长度 let glyfData = data.slice(glyfOffset, glyfOffset + glyfLength); console.log('字形表数据:', glyfData); // ...其他处理逻辑 }); ``` 为了执行上述操作,你需要对TTF文件格式有深入的理解,并且编写相应的代码来正确解析每个部分的数据。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值