#pragma once #include #include "DrawingBase.h" namespace Drawing { // Represents a font used for text rendering class Font { public: Font() = default; Font(HWND Handle, const HFONT hFont); Font(HWND Handle, const Gdiplus::Font& FontObject); virtual ~Font(); // Gets a handle to the native font HFONT GetFontHandle(); // Returns a GDI+ font std::unique_ptr GetFont(); private: // Internal handle HWND _Handle; // Internal native handle HFONT _NativeFont; // Internal cached state bool _OwnsFont; }; }