FreeType2的文档说明使用的默认字符映射是Unicode映射...但是,当我尝试检索Unicode“T”的字符代码时,它使用以下内容为我提供Unicode'Z':
glyph_index = FT_Get_Char_Index(face, text[n]);
我真正需要的是一种方法,可以找出字体中有多少个字形以及它们的Unicode值映射到每个字形。有没有办法做到这一点。我几乎尝试了所有FreeType函数,但无法获得好的结果。
由于
答案 0 :(得分:1)
我知道这已经老了但是......
你问的是不可能的。有些字形与任何Unicode代码点都不匹配,并且有一些Unicode代码点可映射到多个字形,具体取决于相邻的字形。例如,许多字体中的“ff”是一个特殊的字形,可以使排版工作更好。 Unicode中没有“ff”代码点。您的布局系统决定是否使用“ff”字形。
但是,如果你要求'T'字符并获得'Z'字形索引,那么你的字体可能会出现问题。