最近在研究Buratillo这个游戏时,看了一下SDL_ttf这个开源库的相关资料。
# W" f0 f$ F( N9 T9 D6 t$ z发现很多字符串输出函数,如下所列。9 J! A$ f3 W, j6 ?! [9 j+ W# g3 f
: A. U) N0 |; ?7 f- ^0 f4 w; SSolid ' F* M8 m' E' P: z& q6 \% ]) w
TTF_RenderText_Solid - Draw LATIN1 text in solid mode
& n! l/ Y- }( X. JTTF_RenderUTF8_Solid - Draw UTF8 text in solid mode 8 Y& u: n7 ^: q& B2 Q
TTF_RenderUNICODE_Solid - Draw UNICODE text in solid mode / Y7 u) [7 I* X+ c/ q% b+ v
TTF_RenderGlyph_Solid - Draw a UNICODE glyph in solid mode 2 ^" D& w* p1 r# u$ p5 R6 M
- m5 D# b5 p/ L
Shaded
4 ]: [$ r* {8 C$ Y3 VTTF_RenderText_Shaded - Draw LATIN1 text in shaded mode 2 \- f2 D( [$ Y3 }" {/ O
TTF_RenderUTF8_Shaded - Draw UTF8 text in shaded mode " Z7 g; U2 H: J# j' z2 b
TTF_RenderUNICODE_Shaded - Draw UNICODE text in shaded mode " F% t0 H0 e1 _/ p1 }' U1 Q7 A
TTF_RenderGlyph_Shaded - Draw a UNICODE glyph in shaded mode 1 {4 H# D- A# H8 ]6 q% l3 ~
9 h" E0 h: E+ P# P/ P- S5 ?Blended
7 \+ j; j1 q2 j8 p" z; F( K6 _# {TTF_RenderText_Blended - Draw LATIN1 text in blended mode
% D3 I# ]1 `3 wTTF_RenderUTF8_Blended - Draw UTF8 text in blended mode " G* J O# H$ b
TTF_RenderUNICODE_Blended - Draw UNICODE text in blended mode
# M, h4 A s+ H' x( \TTF_RenderGlyph_Blended - Draw a UNICODE glyph in blended mode 7 T" b3 d% R; O6 n- s+ p6 n
9 e; F3 |+ Y9 R) {& z
具体资料可以参考这里
% t6 E; _0 z4 H. M+ l9 r, ?http://sdl.beuc.net/sdl.wiki/SDL_ttf_Functions_Render1 I8 z3 |3 X9 g8 {" J9 \+ j) ]% U/ z
8 U9 R# W+ U/ K
这些函数的参数基本都是相同的,都会传入一个字符串。
7 J2 V3 u3 j8 a) j0 h/ ~6 M比如这个
6 ~, E S) [+ l% H1 `, DSDL_Surface *TTF_RenderUNICODE_Solid(TTF_Font *font, const Uint16 *text, SDL_Color fg);
* Q9 I4 e+ I Y% V( E% {# H5 W p! \1 O/ ^
由于这个库是开源的,我们只要找到相同版本的库,修改游戏所使用的那个函数的代码,
- ^$ u& [2 M" o/ a/ y/ k% |4 G把英文字符串替换为中文的,应该就可以实现汉化了。 |