我正在尝试使用Fontforge脚本将.otf字体转换为.ttf字体(附带Postscript大纲)。
默认选项转换为具有Truetype轮廓的.ttf。
如果有人能给我指路,我会很感激的。
发布于 2015-09-26 19:33:35
关于OpenType工作原理的快速教训:OpenType有两种口味:OpenType Data和OpenType-大纲
这两个大纲模型是相互排斥的,因此您可以选择您喜欢的哪一个,但不能同时选择两者。
现在,按照惯例,CFF2(和CFF2)字体使用.otf扩展,TTF-OT (和SVG)使用.ttf扩展,但它们都只是OpenType字体,只是在CFF/TFF(/CFF 2/SVG)数据块中有所不同。因此,当我们谈论otf字体时,我们实际上指的是"Postscript opentype字体“(这是一个错误的名称,因为CFF使用的是Type2语言,而不是PostScript语言),当我们谈论ttf字体时,我们实际上是指"TrueType opentype字体”。但是,需要认识到的一件重要的事情是,扩展绝不是定义字体的方式;只有它的内容才定义。我们可以将字体重命名为具有.gif扩展名,并且它仍然是内容指定的字体类型。因此,对于字体引擎来说,扩展一点也不重要,就像图像预览器会很高兴地打开一个.jpg文件一样,即使它有.png扩展名。
询问如何将otf (按照惯例是"postscript“字体)转换为ttf (但也不完全是Type2字体),按照惯例,它是一种”真实类型“字体,因此不能包含"postscript”(但仍然是真正的Type2),并添加了ttf应该包含"postscript大纲“的请求,这是没有任何意义的:这就像询问如何将软铅铅笔转换为硬铅笔笔,但使用软铅笔:您已经完成了,您在询问如何创建您开始使用的东西。
带有"postscript“轮廓的Opentype字体是一个otf。
当然,您可以将CFF字体转换为TrueType字体,但这是一种有损转换:在数学上不可能完美地将三次Bezier曲线(在Type2中使用)转换为二次Bezier曲线(在TrueType中使用),因此您将得到一个近似于原始字体的字体。
所以我的建议是:不用麻烦。任何支持OpenType字体的引擎都支持CFF和TrueType,而将字体转换为.ttf并不会有任何意义,同时可以放大字体大小(进行明显的完美转换),或者由于有损轮廓转换而使字体与原始字体不正确。
https://stackoverflow.com/questions/32796220
复制相似问题