我正在寻找一个基于 java 的开源库,它可以将 postscript 字体转换为 opentype 和/或 truetype 字体。我用谷歌做了很多搜索,但还没有找到解决方案。
请帮忙。
你可以看看 sfntly ( http://code.google.com/p/sfntly/ ):
来自该站点:sfntly 是一个 Java 和 C++ 库,用于使用、编辑和创建基于 sfnt 容器的字体(例如 OpenType、TrueType)。[...] sfntly 的基本功能是读取、编辑和写入 sfnt 容器字体。使用 sfnt 容器的字体包括 OpenType、TrueType、AAT/GX 和 Graphite。
sfntly(现在在https://github.com/googlei18n/sfntly)不会将 Postscript 格式的字体文件转换为 TrueType/OpenType 格式的字体。(可以使用内部 Postscript CFF 曲线处理一些 OpenType 字体 - 但这些字体已经是 OpenType 文件格式......)
FontForge 是一个开源字体编辑器,可以加载 PostScript Type-1 或 CFF 字体文件,并将编写 TrueType 或 OpenType 格式的字体文件。定义每个字形的曲线可以(或多或少)从 Postscript 格式(三次贝塞尔曲线)转换为 TrueType 格式(二次贝塞尔曲线)。
然而,用于以中小磅值渲染字体的“提示”数据则完全不同。True/OpenType 和 PostScript 字形格式使用完全不同的提示数据系统,并且 (AFAIK) 没有在格式之间转换提示数据的好方法。因此,典型的 PS -> TTF 字体转换将转换曲线,然后运行自动提示生成过程(我相信,这是 FontForge 中的一个功能)为 TTF 字形创建新提示。