blob: b600b017cf7f4dfb39baae99a3acb1f1e50d313e (
plain)
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
|
#include "../api/Config.h"
#include "font.h"
using namespace std;
using namespace crepe;
void Font::load(unique_ptr<Asset> res){
const char* font_path = res->get_path();
this->font = std::unique_ptr<TTF_Font, decltype(&TTF_CloseFont)>(
TTF_OpenFont(font_path, this->default_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));
}
const TTF_Font& Font::get_font() const{
return this->font;
}
|