OpenGL显示中文
来源:互联网 发布:淘宝详情页模板设计 编辑:程序博客网 时间:2024/05/08 08:51
OpenGL显示中文函数
void glDrawString(unsigned char *str)
...{
GLYPHMETRICSFLOAT pgmf[1];
HDC hDC=wglGetCurrentDC();
HFONT hFont;
LOGFONT lf ;
memset(&lf,0,sizeof(LOGFONT));
lf.lfHeight = 1 ;
lf.lfWidth = 0 ;
lf.lfEscapement = 0 ;
lf.lfOrientation = 0 ;
lf.lfWeight = FW_NORMAL ;
lf.lfItalic = FALSE ;
lf.lfUnderline = FALSE ;
lf.lfStrikeOut = FALSE ;
lf.lfCharSet = GB2312_CHARSET ;
lf.lfOutPrecision = OUT_TT_PRECIS ;
lf.lfClipPrecision= CLIP_DEFAULT_PRECIS ;
lf.lfQuality = PROOF_QUALITY ;
lf.lfPitchAndFamily = VARIABLE_PITCH | TMPF_TRUETYPE | FF_MODERN ;
lstrcpy (lf.lfFaceName, "宋体") ;
hFont = CreateFontIndirect(&lf);
//设置当前字体
SelectObject(wglGetCurrentDC(),hFont);
DWORD dwChar;
int ListNum;
for(size_t i=0;i<strlen((char *)str);i++)
...{
if(IsDBCSLeadByte(str[i]))
...{
dwChar=(DWORD)((str[i]<<8)|str[i+1]);
i++;
}
else
dwChar=str[i];
ListNum=glGenLists(1);
wglUseFontOutlines(hDC,dwChar,1,ListNum,0.0,0.1f,WGL_FONT_POLYGONS,pgmf);
glCallList(ListNum);
glDeleteLists(ListNum,1);
}
}
...{
GLYPHMETRICSFLOAT pgmf[1];
HDC hDC=wglGetCurrentDC();
HFONT hFont;
LOGFONT lf ;
memset(&lf,0,sizeof(LOGFONT));
lf.lfHeight = 1 ;
lf.lfWidth = 0 ;
lf.lfEscapement = 0 ;
lf.lfOrientation = 0 ;
lf.lfWeight = FW_NORMAL ;
lf.lfItalic = FALSE ;
lf.lfUnderline = FALSE ;
lf.lfStrikeOut = FALSE ;
lf.lfCharSet = GB2312_CHARSET ;
lf.lfOutPrecision = OUT_TT_PRECIS ;
lf.lfClipPrecision= CLIP_DEFAULT_PRECIS ;
lf.lfQuality = PROOF_QUALITY ;
lf.lfPitchAndFamily = VARIABLE_PITCH | TMPF_TRUETYPE | FF_MODERN ;
lstrcpy (lf.lfFaceName, "宋体") ;
hFont = CreateFontIndirect(&lf);
//设置当前字体
SelectObject(wglGetCurrentDC(),hFont);
DWORD dwChar;
int ListNum;
for(size_t i=0;i<strlen((char *)str);i++)
...{
if(IsDBCSLeadByte(str[i]))
...{
dwChar=(DWORD)((str[i]<<8)|str[i+1]);
i++;
}
else
dwChar=str[i];
ListNum=glGenLists(1);
wglUseFontOutlines(hDC,dwChar,1,ListNum,0.0,0.1f,WGL_FONT_POLYGONS,pgmf);
glCallList(ListNum);
glDeleteLists(ListNum,1);
}
}
使用
byte cstr[]=...{"中文测试"};
glDrawString(cstr);
glDrawString(cstr);
- OpenGL显示中文
- OpenGL显示中文类
- OpenGL显示中文类
- OpenGL显示中文
- OpenGL中文本的显示
- 在OPENGL中显示中文
- OpenGL中文本的显示
- OpenGL中文本的显示
- OpenGL中文本的显示
- OpenGL显示中文-Unicode版本
- 使用OPENGL显示中文的类
- opengl学习笔记(二)---中文显示
- OpenGL显示中文和旋转立方体贴图
- FTGL在OpenGL下显示中文
- opengl显示
- OpenGL: OpenGL实现立体显示
- opengl中文网站
- OpenGL 中文 API
- 使用XDoclet生成代码
- BOM问题
- 做个清新自信的男人
- c#自定义二分查找法
- 循环一次,找出数组中存在的所有重复数
- OpenGL显示中文
- struts+hibernate项目debug总结
- 权限系统设计
- 编程之道
- 关于list-(5) 单向list反转
- 史上最强的跟帖
- 右键菜单的创建
- Intel Core: A Next-Generation Microarchitecture (原英文版本来自于INTEL)
- 常见的内存错误【一】