$search
00001 00002 00003 #include <blort/TomGine/tgFont.h> 00004 #include <blort/TomGine/headers.h> 00005 #include <stdexcept> 00006 #include <stdio.h> 00007 00008 using namespace TomGine; 00009 00010 tgFont::tgFont(){ 00011 #ifdef USE_FTGL_FONT 00012 m_font = new FTPixmapFont(TTF_FONT); 00013 if(m_font->Error()){ 00014 char err[64]; 00015 sprintf(err, "[tgFont::tgFont()] Errof cannot create font '%s'", TTF_FONT); 00016 throw std::runtime_error(err); 00017 } 00018 #else 00019 printf("[tgFont::tgFont] Warning: ftgl fonts disabled. USE_FTGL_FONT not defined\n"); 00020 #endif 00021 } 00022 00023 tgFont::~tgFont(){ 00024 #ifdef USE_FTGL_FONT 00025 if(m_font) 00026 delete(m_font); 00027 #endif 00028 } 00029 00030 void tgFont::Print(const char* text, int size, int pos_x, int pos_y) const{ 00031 #ifdef USE_FTGL_FONT 00032 glEnable(GL_BLEND); 00033 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 00034 m_font->FaceSize(size); 00035 //m_font->CharMap(ft_encoding_unicode); 00036 m_font->Render(text, -1, FTPoint(pos_x,pos_y)); 00037 glDisable(GL_BLEND); 00038 #endif 00039 } 00040 00041 void tgFont::Print(const char* text, int size, int pos_x, int pos_y, float x, float y, float z, float a) const{ 00042 #ifdef USE_FTGL_FONT 00043 glColor4f(x,y,z,a); 00044 glEnable(GL_BLEND); 00045 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); 00046 m_font->FaceSize(size); 00047 //m_font->CharMap(ft_encoding_unicode); 00048 m_font->Render(text, -1, FTPoint(pos_x,pos_y)); 00049 glDisable(GL_BLEND); 00050 #endif 00051 }