1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#ifndef FONT_H_
#define FONT_H_
#include <SDL3/SDL.h>
#define FONT_NAME_SIZE 40
#define PARSER_LINE_SIZE 4096
typedef struct {
bool active;
float x, y;
float width, height;
float x_offset, y_offset;
float x_advance;
unsigned char character;
} font_char;
typedef struct {
char name[FONT_NAME_SIZE];
SDL_Texture* spritesheet;
char smallest_character, largest_character;
font_char* characters;
} sprite_font;
bool load_sprite_font(SDL_Renderer* renderer, const char* filename, sprite_font* font);
void free_sprite_font(sprite_font* font);
void draw_text_with_spritefont_extended
(
SDL_Renderer* renderer,
sprite_font* font,
const unsigned char* text,
float x_position, float y_position,
float scale
);
void draw_text_with_spritefont
(
SDL_Renderer* renderer,
sprite_font* font,
const unsigned char* text,
float x_position, float y_position
);
#endif // FONT_H_
|