blob: 259a6cdd6c8dc9595e7050e20f66cfcf7678d86a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#include "font.h"
#include "../api/Config.h"
using namespace std;
using namespace crepe;
void Font::load(unique_ptr<Asset> res){
const char* font_path = res->get_path();
int font_size = Config::get_instance().font.font_size;
this->font = std::unique_ptr<TTF_Font, decltype(&TTF_CloseFont)>(
TTF_OpenFont(font_path, font_size), &TTF_CloseFont);
if (!font) {
throw std::runtime_error("Failed to load font: " + std::string(TTF_GetError()));
}
}
Font::Font(const char* src){
this->load(make_unique<Asset>(src));
}
Font::Font(std::unique_ptr<Asset> res){
this->load(std::move(res));
}
|