Module for font rendering. Unicode is supported, but only left to right.

Filtering constants

type Filter* = enum {
	nearest = 0
	linear = 1
}

interface Font

type Font* = interface {
	// Draw text to the viewport
	draw(text: str, pos: th::Vf2, color: uint32, scale: th::fu = 1.0)
	// Return the dimensions of the text at scale 1
	measure(text: str): th::Vf2
	// Return true if the font is valid
	validate(): bool
}

A generic interface for fonts. Fonts can be loaded from file using font::load, or a built in canvas can be used from canvas::pixelFont.

fn load

fn load*(path: str, size: th::fu, filter: Filter = Filter.linear): (Font, std::Err) {

Loads a font from a path and returns it.