WoopsiGfx 1.4
Nintendo DS 2D Graphics Library
|
00001 #ifndef _FONT_BASE_H_ 00002 #define _FONT_BASE_H_ 00003 00004 #include <nds.h> 00005 00006 const s32 GLYPH_MAP_SIZE = 32; 00007 00008 namespace WoopsiGfx { 00009 00010 class MutableBitmapBase; 00011 class WoopsiString; 00012 00018 class FontBase { 00019 00020 public: 00021 00025 virtual inline ~FontBase() { }; 00026 00033 virtual const bool isCharBlank(const u32 letter) const = 0; 00034 00048 virtual s16 drawChar(MutableBitmapBase* bitmap, u32 letter, u16 colour, s16 x, s16 y, u16 clipX1, u16 clipY1, u16 clipX2, u16 clipY2) = 0; 00049 00063 virtual s16 drawBaselineChar(MutableBitmapBase* bitmap, u32 letter, u16 colour, s16 x, s16 y, u16 clipX1, u16 clipY1, u16 clipX2, u16 clipY2) = 0; 00064 00070 virtual u16 getStringWidth(const WoopsiString& text) const = 0; 00071 00080 virtual u16 getStringWidth(const WoopsiString& text, s32 startIndex, s32 length) const = 0; 00081 00087 virtual u8 getCharWidth(u32 letter) const = 0; 00088 00094 virtual u8 getCharHeight(u32 letter) const = 0; 00095 00101 virtual s8 getCharTop(u32 letter) const = 0; 00102 00107 virtual const u8 getHeight() const = 0; 00108 }; 00109 } 00110 00111 #endif