需要对OpenType表固定版本号进行一些解释

时间:2014-06-06 22:34:07

标签: opentype

这是从版本号

下的The Open Type Font File中提取的
  

大多数表都有版本号,以及版本号   整个字体包含在表目录中。请注意有   两种不同的表版本号类型,每种都有自己的编号   方案。 USHORT版本号始终从零(0)开始。 修正版   数字从一个(1.0或0x00010000)开始,除非注明(EBDT,   EBLC和EBSC表)。阅读表的实现必须包括   代码检查版本号,以便格式和时   因此版本号会发生变化,旧的实现会更改   如果更改不兼容,则优雅地拒绝较新版本。   当固定数字用作版本时,高16位包含a   主要版本号,低16位是次要版本。 表格   非零次要版本号始终指定的字面值   版本号,因为固定数字的正常表示不是   必须遵循。例如,'maxp'表的版本号   版本0.5是0x00005000,而'vhea'表版本1.1的版本是   0x00011000。如果实现了解主要版本号,   然后它可以安全地继续阅读表格。次要版本号   表示无法检测到的格式扩展名   不支持它们的实现。

希望对上面突出显示的句子(强调我的)有一些澄清。

1 个答案:

答案 0 :(得分:1)

有什么不清楚的?它是一个16位+ 16位固定长度的数字,代表一个major.minor版本号。主要版本部分使用“普通”编码:

v1.0 = 0001.0000
v5.0 = 0005.0000
v12.0 = 000C.0000

次要版本是“字面意思”而不是十六进制:

v1.5 = 0001.5000
v7.16 = 0007.1600
v20.314 = 0014.3140