1

我正在使用 Javascript 开发 TrueType 字体解析/渲染引擎。来源可以在这里找到。

我的问题是space字形在表格中几乎总是loca作为零宽度索引,这意味着当我在loca偏移量中查找字形时,我会得到字形的偏移量exclam。位置表的规范说:

如果字体不包含缺失字符的轮廓,则第一个和第二个偏移量应该具有相同的值。这也适用于没有轮廓的任何其他字符,例如空格字符。如果字形没有轮廓,则其长度应为零。

所以,看起来空格字符没有轮廓,但我不想绘制.notdef字形。如果没有设置字形轮廓,我如何决定绘制什么(或至少水平偏移)?

4

2 回答 2

1

字符的这个宽度在hmtx表格中设置,字形必须以该宽度呈现,无论是否为它定义了轮廓。

于 2012-09-25T22:35:05.777 回答
1

字形不是零宽度 - 它由零字节定义。你没有为它画任何东西。提前宽度在其他表中定义,通常是 hmtx。与其他字形一样,高级排版控件可能会修改此高级宽度。

于 2013-07-07T19:07:31.453 回答