Freetype2 returns 大小值比预期的大

Freetype2 returns bigger size value than expected

我想获得特定大小的 char 位图,所以使用 FT_Set_Pixel_Sizes() 如下所示。

 error = FT_Set_Pixel_Sizes( ftFace, 0, 28 ); // want to get 28px size

但是从freetype2获取Metrics时,ascender和descender之和为29.(24-(-5))。

float FROM_266 = 1.0f/64.0f;
FT_Size_Metrics& ftMetrics = ftFace->size->metrics;
printf("%f %f\n",  static_cast< float >( ftMetrics.ascender  ) * FROM_266, static_cast< float >( ftMetrics.descender ) * FROM_266);
// result : 24 -5

我认为应该是28,因为我设置了想要的大小为28px。

ascender 和 descender 的总和可以大于所需的大小吗?

Can sum of ascender and descender bigger than desired size?

Yes.