ttfOpenFont function

Pointer<TtfFont> ttfOpenFont(
  1. String? file,
  2. int ptsize
)

Create a font from a file, using a specified point size.

Some .fon fonts will have several sizes embedded in the file, so the point size becomes the index of choosing which size. If the value is too high, the last indexed size will be the default.

When done with the returned TTF_Font, use TTF_CloseFont() to dispose of it.

\param file path to font file. \param ptsize point size to use for the newly-opened font. \returns a valid TTF_Font, or NULL on error.

\since This function is available since SDL_ttf 2.0.12.

\sa TTF_CloseFont

extern DECLSPEC TTF_Font * SDLCALL TTF_OpenFont(const char *file, int ptsize)

Implementation

Pointer<TtfFont> ttfOpenFont(String? file, int ptsize) {
  final ttfOpenFontLookupFunction = libSdl2Ttf.lookupFunction<
      Pointer<TtfFont> Function(Pointer<Utf8> file, Int32 ptsize),
      Pointer<TtfFont> Function(
          Pointer<Utf8> file, int ptsize)>('TTF_OpenFont');
  final filePointer = file != null ? file.toNativeUtf8() : nullptr;
  final result = ttfOpenFontLookupFunction(filePointer, ptsize);
  calloc.free(filePointer);
  return result;
}