【问题标题】:PostScript AFM file and glyph namesPostScript AFM 文件和字形名称
【发布时间】:2011-12-10 11:57:31
【问题描述】:

我想使用字形名称作为键将 Type 1 字体的字形指标存储在字典 (Python) 中,因为每个字形都有一个名称并且它是唯一的 (AFAIK)。但是,Adobe Font Metric specification 声明单个字符度量的规范必须包含字形名称(它是可选的)。因此,有可能某些 AFM 文件没有指定字形名称,因此某些字形只知道字符代码。这意味着,在没有指定字形名称的情况下,我还需要解析 PFB 文件以找出字形名称(在编码表中查找)。这似乎违背了 AFM 文件的目的。

但是,我检查了一些 AFM 文件,但我还没有找到在指标规范中省略字形名称的文件。我可以安全地假设字形名称将始终存在吗?有没有一个不成文的规定,毕竟名字是必须的?

编辑我已经测试了Adobe FTP site 上提供的 2447 个 AFM 文件,并且在所有文件中都为每个字符度量行指定了字形名称。所以,至少对于 Adob​​e 字体,我想我可以假设字形名称存在。

【问题讨论】:

    标签: fonts postscript


    【解决方案1】:

    编码查找仅适用于在默认编码中编码的那些字形,这通常是可用字形总数的一小部分。显然,您可以重新编码字体以访问通常无法访问的字形。

    未编码的字形在 AFM 文件中的字符代码为 -1,因此您无法在编码中查找这些字形。这意味着这些指标是无用的,因为您不知道它们适用于哪个字形!

    虽然名称在 AFM 中是可选的,但如果您发现许多 AFM 文件不提供该名称,我会感到惊讶。

    请注意,我通常与 AFM 文件无关,因为 PostScript 根本不使用它们。

    你说得对,type 1 字体 CharStrings 字典中的字形名称是唯一的。

    【讨论】:

    • 确实,未编码字形名称的字形肯定需要指定。毫无疑问,即使 AFM 规范也没有提到这一点。由于省略字形名称是没有意义的,即使对于编码字形也是如此,而且我测试过的所有 AFM 似乎都同意这一事实,所以我决定暂时依赖它们。
    猜你喜欢
    • 2014-04-25
    • 2018-12-11
    • 1970-01-01
    • 2012-01-18
    • 1970-01-01
    • 1970-01-01
    • 2010-12-05
    • 1970-01-01
    • 2012-12-13
    相关资源
    最近更新 更多