00001 #ifndef _BITMAPFONT_H_ 00002 #define _BITMAPFONT_H_ 00003 00004 namespace glttf { 00005 00007 00021 class BitmapGlyph : public Glyph 00022 { 00023 public: 00025 typedef unsigned char Parameter; 00027 static const Parameter DEFAULT_PARAMETER = 0; 00028 00030 00034 BitmapGlyph(FT_GlyphSlot glyph, Parameter param); 00035 ~BitmapGlyph(); 00036 00038 00044 static bool NPOTSupported(); 00045 00047 00051 static void setupState(); 00052 00054 00059 static void cleanupState(); 00060 00061 private: 00062 GLuint texture; 00063 00064 void createTextureNPOT(const FT_GlyphSlot glyph, float &umax, float &vmax); 00065 void createTexturePOT(const FT_GlyphSlot glyph, float &umax, float &vmax); 00066 00067 static int npotSupported; 00068 }; 00069 00071 typedef BasicFont<BitmapGlyph> BitmapFont; 00072 00073 } 00074 00075 #endif