嵌入式ttf字体裁减说明

裁剪工具包括三个软件

  • FontCreator:用于添加字符到字库中
  • Fontmin-v0.2.0:用于查看用到的字符集中在字库中缺少的单个字符。
  • FontSubsetPack/FontSubsetGUI.exe:用于裁剪只包含所需字符集的字库。

下面以一个实际的例子说明:
比如我所需要建立一个字符集的文本包含以下字符:

Mon 월요일 Понедельник Lunes 星期一 Pazartesi Poniedziałek Pondělí

  1. 将创建一个文档----language.txt.将文本复制到该文档下。
  2. 查看该字库中是否包含该文档中的所有的字符集。
    打开“Fontmin-v0.2.0-win64.exe”,
    将文本复制到“文本片段”下面:
    嵌入式ttf字体裁减说明_第1张图片
    此时使用的字库是windows 自带的字库,如上图,发现有很多“口”,这些字符代表的该字库下面没有这个字符。
  3. 将我们所需要的ttf拖入到软件中
    嵌入式ttf字体裁减说明_第2张图片
    发现右边的文字已经能正常显示了,并且 字符变成“粗黑体”。说明该字库中已经包含所需要的字符集了。所以不需要向该字库中添加字符了。但是很多情况下我们的字库中并没有该字符,比如以下图:
    嵌入式ttf字体裁减说明_第3张图片
    图中“刘军”字体是灰色的,说明该字库中并没有“刘军”两个字符,现在我们开始向该字库中添加这两个字符

4.向ttf中添加所需要的字符。
在添加“刘军”两个字符之前,你必须找到一个包含"刘军"TTF。比如字体裁剪工具集合中的“NotoSansCJKkr-Medium.ttf”中是有这两个字符的,打开“High-Logic FontCreator”,工具。分别打开“NotoSansCJKkr-Medium.ttf”,“NotoSans-CondensedMedium-dst.ttf”。嵌入式ttf字体裁减说明_第4张图片
主要的目的是:从NotoSansCJKkr-Medium.ttf 提取两个字符"刘军"到目标字库集(NotoSans-CondensedMedium-dst.ttf)中。

  1. 打开”NotoSansCJKkr-Medium.ttf“编辑区嵌入式ttf字体裁减说明_第5张图片
  2. 按住”CTRL + F“输入”刘“找到该字符
    嵌入式ttf字体裁减说明_第6张图片
  3. 选中该字符->右击鼠标->点击属性->复制"代码点"里的数值;
    嵌入式ttf字体裁减说明_第7张图片
  4. 切到”NotoSans-CondensedMedium-dst.ttf“编辑区,点击”插入字形“。
    嵌入式ttf字体裁减说明_第8张图片
  5. 在弹出的提示框下面输入代码点
    嵌入式ttf字体裁减说明_第9张图片

6.此时返回到”NotoSansCJKkr-Medium.ttf“编辑区,选中”刘“->右击鼠标->复制。然后返回到NotoSans-CondensedMedium-dst.ttf“编辑区,将该复制的粘贴到刚刚空白的字符上面。如下图:
嵌入式ttf字体裁减说明_第10张图片
此时目标字库已经包含了”刘“这个字符了,”军“也类似。
7. 导出字体,选中保存为”ttf“
嵌入式ttf字体裁减说明_第11张图片
8. 再次使用"Fontmin-v0.2.0:"工具查看,字符“刘”变成的黑体了。
嵌入式ttf字体裁减说明_第12张图片
9. 打开“FontSubsetPack/FontSubsetPack”

嵌入式ttf字体裁减说明_第13张图片
点击proceed按钮后,将会重新生成只包含language.txt中字符集的一个字库文件。

裁剪工具下载

你可能感兴趣的:(c语言,linux,嵌入式硬件)