Font#

Functions

sfFont *sfFont_createFromFile(const char *filename)#

Create a new font from a file.

Parameters:
  • filename – Path of the font file to load

Returns:

A new sfFont object, or NULL if it failed

sfFont *sfFont_createFromMemory(const void *data, size_t sizeInBytes)#

Create a new image font a file in memory.

Parameters:
  • data – Pointer to the file data in memory

  • sizeInBytes – Size of the data to load, in bytes

Returns:

A new sfFont object, or NULL if it failed

sfFont *sfFont_createFromStream(sfInputStream *stream)#

Create a new image font a custom stream.

Parameters:
  • stream – Source stream to read from

Returns:

A new sfFont object, or NULL if it failed

sfFont *sfFont_copy(const sfFont *font)#

Copy an existing font.

Parameters:
  • font – Font to copy

Returns:

Copied object

void sfFont_destroy(sfFont *font)#

Destroy an existing font.

Parameters:
  • font – Font to delete

sfGlyph sfFont_getGlyph(const sfFont *font, sfUint32 codePoint, unsigned int characterSize, sfBool bold, float outlineThickness)#

Get a glyph in a font.

Parameters:
  • font – Source font

  • codePoint – Unicode code point of the character to get

  • characterSize – Character size, in pixels

  • bold – Retrieve the bold version or the regular one?

  • outlineThickness – Thickness of outline (when != 0 the glyph will not be filled)

Returns:

The corresponding glyph

float sfFont_getKerning(const sfFont *font, sfUint32 first, sfUint32 second, unsigned int characterSize)#

Get the kerning value corresponding to a given pair of characters in a font.

Parameters:
  • font – Source font

  • first – Unicode code point of the first character

  • second – Unicode code point of the second character

  • characterSize – Character size, in pixels

Returns:

Kerning offset, in pixels

float sfFont_getLineSpacing(const sfFont *font, unsigned int characterSize)#

Get the line spacing value.

Parameters:
  • font – Source font

  • characterSize – Character size, in pixels

Returns:

Line spacing, in pixels

float sfFont_getUnderlinePosition(const sfFont *font, unsigned int characterSize)#

Get the position of the underline.

Underline position is the vertical offset to apply between the baseline and the underline.

Parameters:
  • font – Source font

  • characterSize – Reference character size

Returns:

Underline position, in pixels

float sfFont_getUnderlineThickness(const sfFont *font, unsigned int characterSize)#

Get the thickness of the underline.

Underline thickness is the vertical size of the underline.

Parameters:
  • font – Source font

  • characterSize – Reference character size

Returns:

Underline thickness, in pixels

const sfTexture *sfFont_getTexture(sfFont *font, unsigned int characterSize)#

Get the texture containing the glyphs of a given size in a font.

Parameters:
  • font – Source font

  • characterSize – Character size, in pixels

Returns:

Read-only pointer to the texture

sfFontInfo sfFont_getInfo(const sfFont *font)#

Get the font information.

The returned structure will remain valid only if the font is still valid. If the font is invalid an invalid structure is returned.

Parameters:
  • font – Source font

Returns:

A structure that holds the font information