成功将TTF字体从18M裁剪到1.8M

问题:
串口屏中为了美观,需要多用几种字体,而且需要支持中日韩英四种语言。
由于支持中文的字体一定支持英文,主要是考虑对中日韩文的支持。
查了一下,最完美的字体应该是开源的思源宋体和思源黑体了。

但是思源宋体和思源黑体的字库文件较大,
鉴于串口屏中存储空间有限,
需要将这两种字体裁剪到刚好够串口屏使用,以尽可能节省存储空间。

解决办法:
0、原来电脑中已安装思源宋体和思源黑体,新建一个word文档,测试思源宋体和思源黑体是否能支持中日韩文字;如图所示:
成功将TTF字体从18M裁剪到1.8M_第1张图片

但是发现,在Word中同时选好中日韩英四中文字的时候,看到标题栏中字体那里是空白,
成功将TTF字体从18M裁剪到1.8M_第2张图片
思源宋体和思源黑体的7种不同规格都试过,都是同样的结果。
难道思源宋体和思源黑体不能支持中日韩同时显示?

1、网上搜了一下,发现思源黑体和思源宋体号称是泛CJK字体(CJK:Chinese,Japan,Korea);
那为什么我已安装思源宋体和思源黑体,
还是不能将中日韩三种文字同时设定为相同的字体呢?
莫非是这两种字体的早期版本不支持CJK?

于是从网上搜了思源宋体CJK,
从这里重新下载了思源宋体和思源黑体,
http://soft1.3h3.com/3H3siyuansongti.rar
http://soft1.3h3.com/3H3siyuanheiti.rar

下载后,将两种字体中的SC版本的7种规格的字体都安装。
成功将TTF字体从18M裁剪到1.8M_第3张图片
成功将TTF字体从18M裁剪到1.8M_第4张图片
2、在一篇帖子里看到有人介绍用微嵌字体裁剪工具生成了裁剪后的TTF字体,
成功将TTF字体从18M裁剪到1.8M_第5张图片
但我用的时候,不知道是不是因为思源黑体的源文件18M太大,还是别的什么原因,点击“运行”后,在指定的字库文件目录中生成的文件是0字节。
成功将TTF字体从18M裁剪到1.8M_第6张图片
思源黑体的源文件是otf格式的,用FontCreator转换成TTF格式后,
重新转换还是同样的结果。
3、搜了一下,下载了FontSubsetGUI,
成功将TTF字体从18M裁剪到1.8M_第7张图片
点击Proceed后,提示出错。
成功将TTF字体从18M裁剪到1.8M_第8张图片
4、再寻它法。
这一会需要FontPruner登场了。
下载了最新版Python 3.8.2;
安装的时候,将Python添加到系统路径中;
从https://github.com/GameBuildingBlocks/FontPruner
中下载了FontPruner的zip包。
解压后,找到FontPruner.py文件,打开,修改其中的一个错误。
成功将TTF字体从18M裁剪到1.8M_第9张图片
找到第18行,将print后面加上单引号“()”,如上图所示。
0、思源黑体的原来文件是OTF格式,需要转换为TTF格式;
使用High-Logic FontCreator将otf文件转换为TTF格式;

A、为方便起见,将源TTF文件拷贝到与FontPruner.py相同的目录下;
B、将裁剪后保留的字符文字等信息拷贝到src/FontExtract/unChineseOutPut.txt中并保存;
C、Windows键+X,选择以管理员模式打开PowerShell,
成功将TTF字体从18M裁剪到1.8M_第10张图片
转到FontPruner的路径;
D、在CMD的命令行中输入 命令:.\FontPruner.py --inputPath=./ --inputFont=./SourceHanSansSC-Heavy.ttf --tempPath=./
其中TTF的名字需要根据实际情况更改。
会看到弹出一个窗口,看到命令的执行过程,
执行完成后,窗口消失。
在当前目录下,出现了一个output目录,里面就有刚生成的裁剪后的TTF字库文件。
在这里插入图片描述
可以看到,字库从18M减到了只有1.8M。
这样小个头的字库才适合放进存储空间紧张的嵌入式设备中。

问题解决。

你可能感兴趣的:(硬件设计)