The display of chinese and english characters based on opengl es in symbian operation system

L. Jinping,L. Zhengjun,Huang Ying
2010-01-01
Abstract:This article is about the method of the display of Chinese and English Characaters in the programming environment of Carbide.c++. Development of this method is based on Symbian Series 60 platform and OpenGL ES. Both Chinese characters and English characters can be displayed in 3D scene. The methodology and arithmetic are presented in the article. This method has been successfully applied to the 3D navigation system of cellphone on Series 60 platform such as Nokia N95. Most city names and typical ground objects can be displayed in our developing system. Moreover, all the names can be displayed either in Chinese or English characters. OpenGL ES application programming interface doesn’t provide the ready methods of drawing or editing text. FreeType 2 application programming interface provides us the methods of drawing the character’s glyph outline according to the character’s glyph index in some coding methods. In this paper, the characters can be displayed by converting the coding method of Symbian characters to Unicode coding method and also the methods of obtaining bitmaps of characters provided by FreeType 2 application programming interface is realizable. ANSI (American National Standards Institute) coding method is the default coding method of the compiler in Symbian operating system. The ANSI coding method of Chinese characters in the Symbian operating compiler is actual GBK coding method. All the characters will be converted to Unicode characters before being converted to glyph index in the FreeType 2 application programming interface. The characters with coding methods are ANSI or GBK which are stored in characters buffer, then the whole character string in character buffer is converted to Unicode string on Series 60 platform. No FreeType 2 application programming interface in Symbian Series 60 SDK. C programming language is transplanted to the Symbian operating system which is developed in C++ programming language. At the meanwhile, FreeType 2 application programming interface is transplanted to Series 60 platform. Then we use the methods provided by the static library of FreeType 2 to acquire these characters’ glyph index and glyph images in the 3D navigation application. Finally, we apply these glyph images as textures of the model to truly realize the 3D display of these Chinese and English characters. The method of drawing or editing text in OpenGL ES has strong transplanted while it is a convenient method for drawing text in OpenGL ES. We can adopt this method to draw many kinds of text in various applications based on OpenGL ES or OpenGL. The character font and color can be changed in the actual programming environment.
What problem does this paper attempt to address?