求推荐在CFF表顶层字典指定编码的真实字体(TTFunk测试用)
关于CFF顶层字典自定义编码字体的问题
这确实是个挺棘手的问题——我之前在处理CFF表相关测试工作时,也碰到过几乎一模一样的困境。
结论先给你:这类字体确实存在,但极其罕见
预定义编码("standard"或"expert")已经能覆盖绝大多数西文字体的需求,自定义编码的实际应用场景少之又少,所以市面上流通的这类字体凤毛麟角。
怎么获取可用的测试用例?
与其继续大海捞针找真实字体,不如自己生成一个,这反而更高效可控:
- 用FontForge手动创建:新建一个非CID类型的PostScript字体,进入字体编码设置界面,手动调整字符映射(比如给一些字形分配非预定义的编码值),最后导出为OTF格式(OTF会包含CFF表)。这样你就能得到一个完全符合需求的测试样本,还能精准控制编码结构来测试边界情况。
- 挖掘老Type 1字体:一些早期的PostScript Type 1字体(非OTF)可能会使用自定义编码,这类字体可以在一些字体归档资源里找到。找到后可以用FontForge或其他工具转成OTF格式,注意保留原有的编码设置。
为什么这类字体这么少见?
- 预定义编码已经覆盖了绝大多数常用字符,字体开发者没必要额外维护自定义编码,成本高且收益低。
- 很多排版软件对CFF自定义编码的支持不如预定义编码完善,使用自定义编码可能会带来兼容性问题,所以开发者更倾向于使用标准方案。
- 这个特性更多是CFF规范里的预留设计,用来应对极端特殊的字符映射需求,但实际中几乎没人用到。
内容的提问来源于stack exchange,提问作者Cameron
相关产品推荐
相关产品推荐

