diff --git a/3rdparty/fonts/fnt.cxx b/3rdparty/fonts/fnt.cxx index 9aca71e..cd4a1de 100644 --- a/3rdparty/fonts/fnt.cxx +++ b/3rdparty/fonts/fnt.cxx @@ -291,6 +291,20 @@ void fntTexFont::puts ( sgVec3 curpos, float pointsize, float italic, const char } else + if ( (cc & 0XE0) == 0XE0) { + int x = (cc & 0X0F) << 4; + //SG_LOG(SG_GUI,SG_ALERT, "UTF8 cc<<4 " << x); + cc = (unsigned char) *(s++) ; + //SG_LOG(SG_GUI,SG_ALERT, "UTF81 cc=" << cc); + x= x + ((cc & 0x3C) >>2 ) ; + int y = (cc & 0x03) << 6 ; + cc = (unsigned char) *(s++) ; + //SG_LOG(SG_GUI,SG_ALERT, "UTF82 cc=" << cc); + y= y + (cc & 0x3F); + //SG_LOG(SG_GUI,SG_ALERT, "x=" << x << ",y=" << y); + cc = x * 256 + y; + //SG_LOG(SG_GUI,SG_ALERT, "UTF8 cc=" << cc); + } SG_LOG(SG_GUI,SG_ALERT, "lputs->ow_putch " << cc);