最近在研究Buratillo这个游戏时,看了一下SDL_ttf这个开源库的相关资料。
8 d' h9 ?8 w# b7 I发现很多字符串输出函数,如下所列。
7 |4 o6 M" H, U( H2 |& x" M
9 }* r- F9 ^, ^Solid 8 C& a% w; h) w/ G% ]
TTF_RenderText_Solid - Draw LATIN1 text in solid mode
2 S: R4 }0 M8 f9 y( A" r. N( @TTF_RenderUTF8_Solid - Draw UTF8 text in solid mode # Q: O' n. x& R! e: N
TTF_RenderUNICODE_Solid - Draw UNICODE text in solid mode : g# C7 a4 k. ^1 o; Q5 E& V* e
TTF_RenderGlyph_Solid - Draw a UNICODE glyph in solid mode % A% b/ ^0 ~$ N. }! A
, F* }0 _2 w$ o; r; t
Shaded
8 T- ^' D+ X' UTTF_RenderText_Shaded - Draw LATIN1 text in shaded mode
- k+ L1 [$ _8 R# [TTF_RenderUTF8_Shaded - Draw UTF8 text in shaded mode ! c4 A7 k" z1 p$ v w
TTF_RenderUNICODE_Shaded - Draw UNICODE text in shaded mode
7 G# J m6 a: V, f& i% STTF_RenderGlyph_Shaded - Draw a UNICODE glyph in shaded mode
3 S3 V4 e& l2 A* J' H) f! A
- m+ p* g9 Q' R' GBlended
/ y/ {. S% Z$ F( m7 ?3 ~TTF_RenderText_Blended - Draw LATIN1 text in blended mode
+ G: r, J: p3 O3 P6 p- Q& a I& PTTF_RenderUTF8_Blended - Draw UTF8 text in blended mode 8 w+ i* k5 z% K6 q' M
TTF_RenderUNICODE_Blended - Draw UNICODE text in blended mode 5 o& r9 l% y+ ^0 f: V# b
TTF_RenderGlyph_Blended - Draw a UNICODE glyph in blended mode 5 v; } j3 ~! I. l2 U4 C
; w B0 w: Z. t+ G& w! y! d7 J: u具体资料可以参考这里
3 f5 N& i" X" g) N, chttp://sdl.beuc.net/sdl.wiki/SDL_ttf_Functions_Render
& y3 H! t. @0 n5 n* F/ ]8 s
3 ^# ~6 w2 N8 B8 M这些函数的参数基本都是相同的,都会传入一个字符串。* ~% o. i: r0 U: i* `8 `
比如这个
2 w8 x! L% `. i2 O4 S1 C2 gSDL_Surface *TTF_RenderUNICODE_Solid(TTF_Font *font, const Uint16 *text, SDL_Color fg);
5 }: E$ a2 P/ [% R6 m! c: y
. O# W; O% b9 v$ S5 v由于这个库是开源的,我们只要找到相同版本的库,修改游戏所使用的那个函数的代码,
$ w- o( ?+ s0 f把英文字符串替换为中文的,应该就可以实现汉化了。 |