0

我通过以统一字体对象 3格式编写 XML 文件来创建字体。

有点不清楚如何在格式中创建组合字符,所以我希望有人可以通过一个简单的例子为我指出正确的方向?

就我而言,我使用的是 Unicode 的私人使用区域(U+E000-U+F8FF)。例如,如果一个接一个地键入,我想U+E000U+E001显示在彼此之上。

4

1 回答 1

0

这听起来有点混乱。unicode 组合字符是定义明确的东西,具有精确的含义,与 PUA 代码点(基本上是“不受监管,但代码点可寻址的字形”)无关。最好避免现代字体中的 PUA,而是依靠 GSUB 规则来解决人类- 可键入的代码序列到内部字形 id,然后具有基于(成对)内部 id 执行必要重新定位的 GPOS 规则。

因此,这听起来有点像您试图弄清楚如何定义 OpenType 字体中的规则是 GPOS 数据,以便自定义定位代码对。如果是这样,那是您在功能定义中定义的内容,其中(对于这种特殊情况)您设置GPOS 规则以实现您需要的重新定位。

不幸的是,这里没有“快速”的例子:GSUB/GPOS 功能不是快速和简单的,而且你通常不会手动编写它们(FontForge、Fontlab、FontCreator 等都带有用于自动化部件的 UI或全部编写 OpenType 脚本/功能/查找定义)。如果您绝对需要,您可能需要多次阅读功能文档以了解准确的语法以及您需要使用的 GPOS 查找类型。

于 2018-04-30T20:21:17.527 回答