Nuclide
Software Development Kit for id Technology
|
Typeface format loader/handler for rendering bitmap/vector based text and icons. More...
Typeface format loader/handler for rendering bitmap/vector based text and icons.
Classes | |
struct | font_s |
Representation of a font. More... | |
Functions | |
void | Font_Load (string strFile, font_s &fntNew) |
Load a desired .font definition into memory. More... | |
void | Font_DrawText (vector vecOrigin, string strText, font_s fnt) |
Draw text on the screen at the desired position with a desired font. More... | |
void | Font_DrawText_A (vector vecOrigin, string strText, float a, font_s fnt) |
Draw alpha-blended text on the screen at the desired position with a desired font. More... | |
void | Font_DrawText_RGB (vector vecOrigin, string strText, vector col, font_s fnt) |
Draw tinted text on the screen at the desired position with a desired font. More... | |
void | Font_DrawText_RGBA (vector vecOrigin, string strText, vector col, float a, font_s fnt) |
Draw tinted and alpha blended text on the screen at the desired position with a desired font. More... | |
void | Font_DrawRText (vector vecOrigin, string strText, font_s fnt) |
Right-aligned variant of Font_DrawText. More... | |
void | Font_DrawRText_A (vector vecOrigin, string strText, float a, font_s fnt) |
Right-aligned variant of Font_DrawText_A. More... | |
void | Font_DrawRText_RGB (vector vecOrigin, string strText, vector col, font_s fnt) |
Right-aligned variant of Font_DrawText_RGB. More... | |
void | Font_DrawRText_RGBA (vector vecOrigin, string strText, vector col, float a, font_s fnt) |
Right-aligned variant of Font_DrawText_RGBA. More... | |
void | Font_DrawField (vector vecOrigin, vector vecSize, string strText, font_s fnt, alignflags_t iAlignFlags) |
Draws a textfield with line wrapping. More... | |
void | Font_DrawFieldAtHeight (vector vecOrigin, vector vecSize, int iTextHeight, string strText, font_s fnt, alignflags_t iAlignFlags) |
Draws a textfield with line wrapping at a custom text height. More... | |
string | Font_RGBtoHex (vector vecColor) |
Converts a normalized RGB color vector to a hex color string. More... | |
int | Font_GetHeight (font_s fnt) |
Returns the height of a specified font in pixels. More... | |
float | Font_StringWidth (string strText, bool hasColor, font_s fnt) |
Returns the width of a series of characters in pixels. More... | |
float | Font_GetID (font_s fnt) |
Get the internal font id. More... | |
Macros | |
#define | AF_NONE 0 |
#define | AF_DEFAULT (AF_TOP | AF_LEFT) |
Enumerations | |
enum | drawflag_t { DRAWFLAG_NORMAL = 0 , DRAWFLAG_ADDITIVE , DRAWFLAG_MODULATE , DRAWFLAG_2XMODULATE , DRAWFLAG_NORMAL = 0 , DRAWFLAG_ADDITIVE , DRAWFLAG_MODULATE , DRAWFLAG_2XMODULATE } |
Flags for 2D drawing operations. More... | |
Variables | |
typedef | enumflags |
Defines the valid alignment flags for text fields. More... | |
void Font_DrawField | ( | vector | vecOrigin, |
vector | vecSize, | ||
string | strText, | ||
font_s | fnt, | ||
alignflags_t | iAlignFlags | ||
) |
Draws a textfield with line wrapping.
vecOrigin | is the absolute starting position. |
vecSize | is the total area in pixels that the field takes up on the screen. |
strText | is the text to be drawn onto the screen. |
fnt | is the font to be used for rendering the text. |
iAlignFlags | sets how the text may be aligned. |
void Font_DrawFieldAtHeight | ( | vector | vecOrigin, |
vector | vecSize, | ||
int | iTextHeight, | ||
string | strText, | ||
font_s | fnt, | ||
alignflags_t | iAlignFlags | ||
) |
Draws a textfield with line wrapping at a custom text height.
vecOrigin | is the absolute starting position. |
vecSize | is the total area in pixels that the field takes up on the screen. |
iTextHeight | is the desired text height in pixels. |
strText | is the text to be drawn onto the screen. |
fnt | is the font to be used for rendering the text. |
iAlignFlags | sets how the text may be aligned. |
void Font_DrawRText | ( | vector | vecOrigin, |
string | strText, | ||
font_s | fnt | ||
) |
Right-aligned variant of Font_DrawText.
void Font_DrawRText_A | ( | vector | vecOrigin, |
string | strText, | ||
float | a, | ||
font_s | fnt | ||
) |
Right-aligned variant of Font_DrawText_A.
void Font_DrawRText_RGB | ( | vector | vecOrigin, |
string | strText, | ||
vector | col, | ||
font_s | fnt | ||
) |
Right-aligned variant of Font_DrawText_RGB.
void Font_DrawRText_RGBA | ( | vector | vecOrigin, |
string | strText, | ||
vector | col, | ||
float | a, | ||
font_s | fnt | ||
) |
Right-aligned variant of Font_DrawText_RGBA.
void Font_DrawText | ( | vector | vecOrigin, |
string | strText, | ||
font_s | fnt | ||
) |
Draw text on the screen at the desired position with a desired font.
vecOrigin | is the absolute starting position. |
strText | is the text to be drawn. |
fnt | is the font to be used. |
void Font_DrawText_A | ( | vector | vecOrigin, |
string | strText, | ||
float | a, | ||
font_s | fnt | ||
) |
Draw alpha-blended text on the screen at the desired position with a desired font.
vecOrigin | is the absolute starting position. |
strText | is the text to be drawn. |
a | is the alpha value to blend with. |
fnt | is the font to be used. |
void Font_DrawText_RGB | ( | vector | vecOrigin, |
string | strText, | ||
vector | col, | ||
font_s | fnt | ||
) |
Draw tinted text on the screen at the desired position with a desired font.
vecOrigin | is the absolute starting position. |
strText | is the text to be drawn. |
col | is the normalized color value to tint the text with. |
fnt | is the font to be used. |
void Font_DrawText_RGBA | ( | vector | vecOrigin, |
string | strText, | ||
vector | col, | ||
float | a, | ||
font_s | fnt | ||
) |
Draw tinted and alpha blended text on the screen at the desired position with a desired font.
vecOrigin | is the absolute starting position. |
strText | is the text to be drawn. |
col | is the normalized color value to tint the text with. |
a | is the alpha value to blend with. |
fnt | is the font to be used. |
int Font_GetHeight | ( | font_s | fnt | ) |
Returns the height of a specified font in pixels.
fnt | is the font to be queried. |
float Font_GetID | ( | font_s | fnt | ) |
Get the internal font id.
The internal font id is only useful for when you want to assign 'drawfont' yourself, or have some other use for it. Those id's are meant to be unique, but may change between vid_reload or other cases where video memory is de-allocated. Overall you should never need to use this, unless you know what you're doing or are porting old code.
fnt | is the font to be queried. |
void Font_Load | ( | string | strFile, |
font_s & | fntNew | ||
) |
Load a desired .font definition into memory.
strFile | is the path to the file in question. |
fntNew | is the location of where the font will be stored. |
string Font_RGBtoHex | ( | vector | vecColor | ) |
Converts a normalized RGB color vector to a hex color string.
vecColor | is the normalized input color. E.g. [1.0f, 0.0f, 0.0f] |
float Font_StringWidth | ( | string | strText, |
bool | hasColor, | ||
font_s | fnt | ||
) |
Returns the width of a series of characters in pixels.
If you have a string with funstring color codes (e.g. ^1 or ^xF00) and want to make sure those are not interpreted as visible characters, set the parameter hasColor to true. Rendering may be more expensive this way, but you should generally cache the result instead of querying it every frame anyway.
The return value is of type float, to be a drop-in replacement for the engine builtin stringwidth().
strText | is the text to get the length of. |
hasColor | hints if funstring color codes are present in the string. |
fnt | is the font used with the text in question. |
#define AF_DEFAULT (AF_TOP | AF_LEFT) |
#define AF_NONE 0 |
enum drawflag_t |
Flags for 2D drawing operations.
typedef enumflags |
Defines the valid alignment flags for text fields.