Describes font.

You can find more information in comments below. Overrided methods can be found in corresponding base interface.

class IFont :public virtual IFontProperties, public virtual IFeedbackEx
    void *EventParam; // Custom parameter passed to events
    void(*OnChangeFontName)(IFont *font, void *param); // Called when font name has been changed
    void(*OnChangeHeight)(IFont *font, void *param); // Called when height has been changed
    void(*OnChangeWeight)(IFont *font, void *param); // Called when weight has been changed
    void(*OnChangeOrientation)(IFont *font, void *param); // Called when orientation has been changed
    void(*OnChangeColor)(IFont *font, void *param); // Called when color has been changed
    void(*OnChangeDistance)(IFont *font, void *param); // Called when distance has been changed
    void(*OnChangeShadowShift)(IFont *font, void *param); // Called when shadow shift has been changed
    void(*OnChangeShadowRadius)(IFont *font, void *param); // Called when shadow blur radius has been changed
    void(*OnChangeShadowColor)(IFont *font, void *param); // Called when shadow color has been changed
    void(*OnChangeItalic)(IFont *font, void *param); // Called when italic state has been changed
    void(*OnChangeUnderline)(IFont *font, void *param); // Called when underlined state has been changed
    void(*OnChangeStrikeOut)(IFont *font, void *param); // Called when striked out state has been changed
    void(*OnChangeMonospace)(IFont *font, void *param); // Called when monospace state has been changed

    virtual IPlatformFont *getPlatformFont(IRenderer *renderer) = 0; // Return platform font. Try to create if not created yet. If failed to create, old one will remain

    virtual bool setFontName(const String &value) = 0; // Set font name
    virtual bool setHeight(const int value) = 0; // Set height
    virtual bool setWeight(const FontWeight value) = 0; // Set weight
    virtual bool setDistance(const float value) = 0; // Set distance between characters
    virtual bool setColor(const nitisa::Color &value) = 0; // Set color
    virtual bool setShadowShift(const PointF &value) = 0; // Set shadow shift
    virtual bool setShadowRadius(const int value) = 0; // Set shadow blur radius
    virtual bool setShadowColor(const nitisa::Color &value) = 0; // Set shadow color
    virtual bool setItalic(const bool value) = 0; // Set italic state
    virtual bool setUnderline(const bool value) = 0; // Set underlined state
    virtual bool setStrikeOut(const bool value) = 0; // Set striked out state
    virtual bool setMonospace(const bool value) = 0; // Set monospace state

    virtual void Release() = 0; // Destroy instance

    virtual void NotifyOnFreeResources() = 0; // Free platform font if assigned
Namespace: nitisa
Include: Nitisa/Interfaces/IFont.h