ttfGlyphMetrics function

int ttfGlyphMetrics(
  1. Pointer<TtfFont> font,
  2. int ch,
  3. Pointer<Int32> minx,
  4. Pointer<Int32> maxx,
  5. Pointer<Int32> miny,
  6. Pointer<Int32> maxy,
  7. Pointer<Int32> advance,
)

Query the metrics (dimensions) of a font's 16-bit glyph.

To understand what these metrics mean, here is a useful link:

https://freetype.sourceforge.net/freetype2/docs/tutorial/step2.html

Note that this version of the function takes a 16-bit character code, which covers the Basic Multilingual Plane, but is insufficient to cover the entire set of possible Unicode values, including emoji glyphs. You should use TTF_GlyphMetrics32() instead, which offers the same functionality but takes a 32-bit codepoint instead.

The only reason to use this function is that it was available since the beginning of time, more or less.

\param font the font to query. \param ch the character code to check.

\since This function is available since SDL_ttf 2.0.12.

\sa TTF_GlyphMetrics32

extern DECLSPEC int SDLCALL TTF_GlyphMetrics(TTF_Font *font, Uint16 ch, int *minx, int *maxx, int *miny, int *maxy, int *advance)

Implementation

int ttfGlyphMetrics(
    Pointer<TtfFont> font,
    int ch,
    Pointer<Int32> minx,
    Pointer<Int32> maxx,
    Pointer<Int32> miny,
    Pointer<Int32> maxy,
    Pointer<Int32> advance) {
  final ttfGlyphMetricsLookupFunction = libSdl2Ttf.lookupFunction<
      Int32 Function(
          Pointer<TtfFont> font,
          Uint16 ch,
          Pointer<Int32> minx,
          Pointer<Int32> maxx,
          Pointer<Int32> miny,
          Pointer<Int32> maxy,
          Pointer<Int32> advance),
      int Function(
          Pointer<TtfFont> font,
          int ch,
          Pointer<Int32> minx,
          Pointer<Int32> maxx,
          Pointer<Int32> miny,
          Pointer<Int32> maxy,
          Pointer<Int32> advance)>('TTF_GlyphMetrics');
  return ttfGlyphMetricsLookupFunction(
      font, ch, minx, maxx, miny, maxy, advance);
}