法律风险提示:虽然很无奈,但事实上绝大多数字体的使用协议不支持对字体进行任何修改,包括为了使字体正常使用而进行的格式转换。设计、电商等商业字体用户需尤为注意。

方法

在线转换(适用于小于100MB的文件)

transfonter.org 点击前往

本地转换(适用于在线转换无法解决的情况)

需要的软件:

1.ttsdk 前往官网 点击下载

2.dosbox 前往官网

(对于官网还能正常访问的网站只提供官网下载地址,如果官网挂了请在评论区联系我,我会提供备用下载方式)

方法:

1.安装dosbox。

2.创建一个文件夹用于挂载到dosbox。示例:在C盘根目录创建一个名称为“a”的文件夹。

3.解压ttsdk.zip。如果是将TTC解包成TTF,那么将解压出的TTC文件夹里的BREAKTTC.EXE复制到刚才创建的文件夹中。如果是将TTF打包成TTC,那么将MAKETTC.EXE复制到刚才创建的文件夹中。

4.将需要打包/解包的字体文件复制到刚才创建的文件夹中。

5.运行dosbox。

6.将刚才创建的文件夹挂载为dosbox的C盘。输入mount C 刚才创建的文件夹的地址。示例:mount C C:\a

7.输入C:\切换到C盘。

8.如果是将TTC解包成TTF,那么输入BREAKTTC.EXE TTC文件的名称。示例:BREAKTTC.EXE a.ttc如果是将TTF打包成TTC,那么输入MAKETTC.EXE 所有TTF文件的名称 示例:MAKETTC.EXE a.ttf b.ttf c.ttf

9.前往刚才创建的文件夹查看成果。

转换结果

发现过程

事件起源于一个很离谱的事情:哔哩哔哩直播姬只支持TTF格式的字体,而我需要的那款字体只提供了TTC格式和OTF格式的下载。

我开始在搜索引擎上寻找转换的方法,大部分结果推荐上文的在线转换网站,但我的文件过大,无法使用在线转换工具。而少部分关于本地转换工具的结果一致地提供了ttctools这款软件,但按照页面提供的方法无法运行。

随后我找到了ttctools中包含的可执行文件的源头,也就是上文提到的ttsdk。一开始我以为ttctools包含的BREAKTTC.EXE的修改日期是显示错误,而找到ttsdk的介绍页面后,我发现它真的是一个诞生于1997年的可执行文件,这让我意识到它可能是一个DOS程序。不出意料,它成功地在dosbox中运行了。

总结一下我找到的解决方案有:

1.使用在线转换工具(文件过大的话无法使用)。

2.一些大佬写的程序,多是练手作品,我找到的那几位大佬只提供了源代码,需要自己编译,考虑到大部分人电脑里是没有相关程序的,所以没有介绍。

3.ttctools,但这么多结果中没有人提示它是一个DOS程序。

虽然字体格式转换确实是一个比较小众的需求(而且因为法律风险,我不推荐你这么做),但鉴于因为国内外几乎没有网站提供合适的解决方案,因此决定将其记录下来,希望对你有用。

最后修改:2023 年 02 月 10 日
感谢阅读。
能够结识读友即是对我最大的支持。
如果您坚持要打赏我的话,
请确保同意赞赏规则