OpenGL顯示中文 Unicode版本

2021-06-20 15:14:23 字數 883 閱讀 4756

void glfont::print3dtextw(wchar_t *string, float z)

glenable(gl_lighting); 

glpopmatrix();

::selectobject(hdc,holdfont);

}其實ansi版本的處理比unicode的要複雜,因為需要考慮中文的多個位元組,如下所示:

for(int i = 0; i < strlen(string); i++)

else 

dwchar = pchar[i]; 

nlistnum = glgenlists(1); 

wglusefontoutlines( hdc, 

dwchar, 

1, nlistnum, 

0.0f,

z, wgl_font_polygons,

pgmf 

); glcalllist(nlistnum); 

gldeletelists(nlistnum, 1); } 

其實ansi版本的處理反而更複雜一些,因為需要考慮中文的多位元組問題,如下所示:

for(int i = 0; i < strlen(string); i++)

else 

dwchar = pchar[i]; 

nlistnum = glgenlists(1); 

wglusefontoutlines( hdc, 

dwchar, 

1, nlistnum, 

0.0f,

z, wgl_font_polygons,

pgmf 

); glcalllist(nlistnum); 

gldeletelists(nlistnum, 1); } 

Opengl 顯示中文改進版

opengl 顯示中文改進版 2010年07月09日 由於對這方面不是特別了解,基本上結合別人的 再加些自己認為更好點的改進。define max char 255 define text center 0 define text left 1 define text right 2 hfont c...

opengl顯示文字

wglusefontbitmaps 函式顯示文字 使用wglusefontbitmaps 將ascii字元裝入顯示列表,然後使用glcalllists 函式利用顯示列表序列顯示文字。wglusefontbitmaps有四個引數,分別是當前使用的dc 從第幾個ascii字元起始裝入列表 裝入列表的as...

OpenGL 顯示列表

原 文 lesson 12 display lists 譯 者 marhoo 這次我將教你如何使用顯示列表,顯示列表將加快程式的速度,而且可以減少 的長度。當你在製作遊戲裡的小行星場景時,每一層上至少需要兩個行星,你可以用opengl中的多邊形來構造每乙個行星。聰明點的做法是做乙個迴圈,每個迴圈畫出...