#include "text.h" #include "utils.h" enum font_context_error_e wayc_font_context_init(struct font_context_s* ctx) { wayc_notnull(ctx); FT_Error err = FT_Init_FreeType(&ctx->library); if (err) return FONT_CONTEXT_ERROR_LIBRARY; return FONT_CONTEXT_ERROR_NONE; } void wayc_font_context_deinit(struct font_context_s* ctx) { wayc_notnull(ctx); FT_Done_FreeType(ctx->library); } enum font_error_e wayc_font_init(struct font_s* font, struct font_context_s* ctx, const char* path) { wayc_notnull(font); wayc_notnull(ctx); wayc_notnull(path); FT_Error err = FT_New_Face(ctx->library, path, 0, &font->face); if (err) return FONT_ERROR_LOAD; return FONT_ERROR_NONE; } void wayc_font_deinit(struct font_s* font) { wayc_notnull(font); FT_Done_Face(font->face); }