I found that FreeType can not get the correct glyph index from the font “Simsun-extb” corroding the Unicode of the character.
In the TTF, the cmap table use the format 12, and I always get 0, from the function FT_Get_Char_Index(), I think it maybe a bug to deal with the cmap which is format 12. We can see that the Unicode is no in the range seg 2(00020000 - 0002A6D6), so there must be some error in the function tt_cmap12_char_map_binary() in “src\sfnt\ttcmap.c”. This is a segment of the cmap in the font: Subtable 3. Platform ID: 3 Specific ID: 10 'cmap' Offset: 0x00000142 ->Format: 12 : Segmented coverage (32 bit) Length: 40 Version: 0 Seg 1 : startCharCode = 00000020, endCharCode = 0000007F, startGlyphCode = 2 Seg 2 : startCharCode = 00020000, endCharCode = 0002A6D6, startGlyphCode = 98 Which Means: 1. Char 00000020 -> Index 2 Char 00000021 -> Index 3 Char 00000022 -> Index 4 …………………………………… ……………………………… Thanks. Regards, 2007-09-24
_______________________________________________ Freetype-devel mailing list Freetype-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/freetype-devel