#pragma once #include #include #include #include #include namespace engine { class Font { std::unique_ptr m_font_info{}; std::unique_ptr> m_font_buffer{}; std::map m_unicode_to_glyph{}; public: explicit Font(const std::string& path); Font(const Font&) = delete; ~Font(); Font& operator=(const Font&) = delete; std::unique_ptr> getTextBitmap(const std::string& text, float height_px, int& width_out, int& height_out); private: int getGlyphIndex(int unicode_codepoint); }; } // namespace engine