最近在研究Buratillo这个游戏时,看了一下SDL_ttf这个开源库的相关资料。) Y* r: L1 w$ N- s- a/ _3 x5 s% a
发现很多字符串输出函数,如下所列。
1 g2 z2 f! x2 [, B2 l2 B; P9 X3 e" E! M, I6 Z/ Q
Solid 5 F2 l! V# V8 C. ^2 v
TTF_RenderText_Solid - Draw LATIN1 text in solid mode - N- E- J- }- j7 x* g& P: s
TTF_RenderUTF8_Solid - Draw UTF8 text in solid mode
5 r7 T; I8 t# w! @7 eTTF_RenderUNICODE_Solid - Draw UNICODE text in solid mode + M, h0 R4 c) n$ M
TTF_RenderGlyph_Solid - Draw a UNICODE glyph in solid mode 5 ~9 K& b) d4 a! G
2 X! }) H5 D( _8 f3 n# P# f
Shaded
9 T! T$ n/ ^) A4 O5 J, z# l+ h1 mTTF_RenderText_Shaded - Draw LATIN1 text in shaded mode
/ f9 K# x. |0 B7 e! lTTF_RenderUTF8_Shaded - Draw UTF8 text in shaded mode % |. ?" f9 m0 R9 x \3 V3 D6 Q% ?
TTF_RenderUNICODE_Shaded - Draw UNICODE text in shaded mode
: B6 [6 R V" E6 B: Y. l8 p* J! X% C0 {TTF_RenderGlyph_Shaded - Draw a UNICODE glyph in shaded mode
" `" V( ?6 v% _+ f& P( W2 K0 d" p5 s$ l6 v& P* _
Blended 8 }1 T y$ V( n
TTF_RenderText_Blended - Draw LATIN1 text in blended mode & a# ` Z3 |0 p4 I9 E
TTF_RenderUTF8_Blended - Draw UTF8 text in blended mode 9 T4 m1 p7 T6 F8 i0 v
TTF_RenderUNICODE_Blended - Draw UNICODE text in blended mode
6 @/ S3 R- O* x- ^; p! F3 t- n8 yTTF_RenderGlyph_Blended - Draw a UNICODE glyph in blended mode
! A7 B* w( }" w: a4 F/ O
Y2 g( O& Q! J具体资料可以参考这里4 i) W* x6 k; {, v/ |7 T; R
http://sdl.beuc.net/sdl.wiki/SDL_ttf_Functions_Render
2 N7 u a3 ?' O: O6 T4 D2 C! l, Q8 z# o4 ?+ W
这些函数的参数基本都是相同的,都会传入一个字符串。2 s- Y% G, T. S9 |, L9 z Y
比如这个
0 L z% B6 c- {* ?* h3 SSDL_Surface *TTF_RenderUNICODE_Solid(TTF_Font *font, const Uint16 *text, SDL_Color fg);
* E$ N+ l, Z9 {, u& M. x6 N1 n0 M) V. l% A( h9 z# g: m
由于这个库是开源的,我们只要找到相同版本的库,修改游戏所使用的那个函数的代码,2 m# B1 d3 L V" m! S. T# R
把英文字符串替换为中文的,应该就可以实现汉化了。 |