首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用.otf脚本将.ttf转换为.ttf(附带Postscript大纲)?

如何使用.otf脚本将.ttf转换为.ttf(附带Postscript大纲)?
EN

Stack Overflow用户
提问于 2015-09-26 10:34:45
回答 1查看 8.8K关注 0票数 2

我正在尝试使用Fontforge脚本将.otf字体转换为.ttf字体(附带Postscript大纲)。

默认选项转换为具有Truetype轮廓的.ttf。

如果有人能给我指路,我会很感激的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-26 19:33:35

关于OpenType工作原理的快速教训:OpenType有两种口味:OpenType Data和OpenType-大纲

  1. 带有CFF块的OpenType字体使用Type2 "charstring“大纲定义,这允许三次曲线建模。它们类似于Postscript,但在技术上不是Postscript。因为历史原因,人们一直这么称呼它。
  2. 带有OpenType表的TrueType字体使用TrueType大纲定义,这只允许二次曲线建模。 (2018编辑:现在还有两种类型: OpenType -with- SVG - outline,它与“SVG字体”的不一致;OpenType-with 2-大纲,这是对CFF的一种改进,专门用于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并不会有任何意义,同时可以放大字体大小(进行明显的完美转换),或者由于有损轮廓转换而使字体与原始字体不正确。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32796220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档