我希望使用字形名称作为键,将Type 1字体的字形指标存储在字典(Python)中,因为每个字形都有一个名称,而且它是唯一的(AFAIK)。但是,Adobe字体度量规范声明单个字符度量的规范不需要包括字形名称(它是可选的)。因此,有些AFM文件可能不指定字形名称,因此某些符号只知道字符代码。这意味着,在没有指定字形名称的情况下,我还需要解析PFB文件来查找字形名称(在编码表中查找它)。这似乎违背了AFM文件的目的。
但是,我已经检查了几个AFM文件,而且还没有找到在度量规范中省略字形名称的文件。我能安全地假定字形名称将永远存在吗?是否有一个不成文的规则,即名称毕竟是必需的?
编辑I测试了Adobe站点上可用的2447个AFM文件,在所有这些文件中,为每个字符度量行指定了字形名称。因此,至少对于Adobe字体,我想我可以假设字形名称是存在的。
发布于 2011-10-19 12:18:37
查询编码只适用于默认编码中编码的那些符号,这通常是可用字形总数的一个小子集。显然,您可以重新编码字体,以访问通常无法访问的字形。
没有编码的符号在AFM文件中的字符代码为-1,所以您不能在编码中查找这些字符。这意味着度量标准是无用的,因为您不知道它们适用于哪个字形!
虽然这个名称在AFM中是可选的,但如果您发现许多AFM文件没有提供它,我会感到惊讶。
请注意,我通常与AFM文件没有任何关系,因为它们根本不被PostScript使用。
类型1字体CharStrings字典中的字形名称是唯一的,这是正确的。
https://stackoverflow.com/questions/7814479
复制相似问题