在Freetype2中,我们使用以下公式计算给定大小的字体高度。 height =(int)((point_size / face-> units_per_EM)*(face-> ascender - face-> descender)); 其中point_size是用户提供的数据。
但是对于某些字体,它会提供错误的数据。任何人都可以帮助找到正确的公式,找到给定点的正确字体高度? (不适用于单个字形)。
答案 0 :(得分:0)
以下是cocos2d-x中使用的方法:
_lineHeight = static_cast((face-> size-> metrics.ascender-face-> size-> metrics.descender)>> 6);
大多数字体都可以。对于不正常的情况,我在获取GlyphBitmap的高度后校准该值,然后使用较大的作为最大线高。