#ifndef ENGINE_INCLUDE_RESOURCES_FONT_H_ #define ENGINE_INCLUDE_RESOURCES_FONT_H_ #include #include #include #include #include namespace engine { namespace resources { class Font { public: Font(const std::string& path); ~Font(); Font(const Font&) = delete; Font& operator=(const Font&) = delete; std::unique_ptr> GetTextBitmap(const std::string& text, float height_px, int& width_out, int& height_out); private: std::unique_ptr font_info_{}; std::unique_ptr> font_buffer_{}; std::map unicode_to_glyph_{}; int GetGlyphIndex(int unicode_codepoint); }; } // namespace resources } // namespace engine #endif