NightFox’s Lib
|
Use the follow functions to use text with 8x16 pixel fonts. More...
Macros | |
#define | NF_TEXT_FONT_CHARS_16 127 |
Number of characters available in a font. | |
#define | NF_TEXT_FONT_LAST_VALID_CHAR_16 113 |
Last valid character in a font. | |
Functions | |
void | NF_LoadTextFont16 (const char *file, const char *name, u32 width, u32 height, u32 rotation) |
Load 8x16 font and palette files from the filesystem to RAM. More... | |
void | NF_CreateTextLayer16 (int screen, u32 layer, u32 rotation, const char *name) |
Create a special tiled background to write text on it with a 8x16 font. More... | |
void | NF_WriteText16 (int screen, u32 layer, u32 x, u32 y, const char *text) |
Write text in a layer with a 8x16 font at the specified coordinates. More... | |
void | NF_ClearTextLayer16 (int screen, u32 layer) |
Clears the contents of a text layer with a 8x16 font filling it with zeroes. More... | |
Use the follow functions to use text with 8x16 pixel fonts.
The normal text fuctions still compatible with this mode.
void NF_ClearTextLayer16 | ( | int | screen, |
u32 | layer | ||
) |
Clears the contents of a text layer with a 8x16 font filling it with zeroes.
Example:
screen | Screen (0 - 1) |
layer | Background layer (0 - 3) |
void NF_CreateTextLayer16 | ( | int | screen, |
u32 | layer, | ||
u32 | rotation, | ||
const char * | name | ||
) |
Create a special tiled background to write text on it with a 8x16 font.
You must select the screen and layer where the background will be created, the orientation of the text and the font you want to use.
Example:
screen | Screen (0 - 1) |
layer | Background layer (0 - 3) |
rotation | Rotation (0 - 2) |
name | Font name |
void NF_LoadTextFont16 | ( | const char * | file, |
const char * | name, | ||
u32 | width, | ||
u32 | height, | ||
u32 | rotation | ||
) |
Load 8x16 font and palette files from the filesystem to RAM.
You must specify the filename without extension and the name you want to give to the font and the size of the text layer you want to create, in pixels.
If the font includes the characters for rotated text, the values are:
The font uses two files, the tileset with extension ".fnt" and the palette with extension ".pal".
You must load the font for every text layer you want to create. Every font loaded uses a slot of tiled backgrounds of RAM.
There are many examples with custom fonts in the examples folder.
Example:
file | File name |
name | Font name |
width | Map width (in pixels) |
height | Map height (in pixels) |
rotation | Rotation (0 - 2) |
void NF_WriteText16 | ( | int | screen, |
u32 | layer, | ||
u32 | x, | ||
u32 | y, | ||
const char * | text | ||
) |
Write text in a layer with a 8x16 font at the specified coordinates.
You must specify the screen and layer where you want to write the text. The text is not writen directly on the screen. It's stored in a temporary buffer and it's transferred to the screen when the function NF_UpdateTextLayers() is called. This is done to minimize the number of times VRAM is updated.
If you want to write variables or formated text, use snprintf().
Example 1:
Example 2:
screen | Screen (0 - 1) |
layer | Background layer (0 - 3) |
x | X coordinate |
y | Y coordinate |
text | String to write to the screen |