设为首页收藏本站官方微博

【汉化资料】关于CEGUI研究的阶段性成果

[复制链接]
查看: 2434|回复: 0
打印 上一主题 下一主题

【汉化资料】关于CEGUI研究的阶段性成果

跳转到指定楼层
楼主
发表于 2008-11-17 12:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

【汉化资料】关于CEGUI研究的阶段性成果

CEGUI是一个开放源码的开发游戏界面的库,如果你在游戏里发现CEGUIBase_d.dll之类以CEGUI开头的DLL的话,这个游戏的界面就是CEGUI做的,游戏字幕的输出自然也是用它。 2 `5 Q6 {5 m: m5 w, @3 s, P

( N; R- R: l1 h3 ]( ICEGUI有0.4.1,0.5.X,0.6.X等几个版本,从0.5.X开始就对中文完美支持了。
" ~. c4 Y! }  U3 L) s7 u- t  _问题是0.4.1这个版本,对中文的支持不太完美,说是不能换页之类的。 & n* X! D6 `3 G
现阶段,不少AVG游戏中还是用CEGUI0.4.1这个版本,比如安徒生童话这个AVG游戏.
$ q2 ]% s. z3 C2 A5 r* V1 }) d因为FONT字体定义文件的格式不同,所以可以判断出是0.4.1这个版本
: ]7 J6 e7 o1 f; v3 D4 X$ K9 j( ]

, A7 J$ k& |; [) T0 i& Z解决方法
% |; L% p5 y$ j0 {0 @9 J& d
关于解决方法,我查了不少资料,大致有2个 : m% ~6 {; w, b/ H7 Q5 @5 V2 C3 C
1。改造0.4.1的DLL文件,参照0.5.X的代码,把关键地方进行修改。
3 r* d8 n$ T! B. p) I) a) C  这个方法较难,暂不讨论。 2 p$ }5 N, n; u2 D6 H2 q5 v8 [
; K7 {1 I$ [# P
2。0.4.1的字体定义文件还是为中文留了一条路的。
4 c0 ?0 l, n& i4 i9 @  可以用GlyphSet这个属性只生成要用到的字体的图片。
2 h6 l2 e, G( f  中文汉字有6000多个,但是在一个AVG里用到的中文可能只有1000多个。
) c$ l0 I8 `* o# ]9 G: l  把这些中文汉字定义到GlyphSet这个属性,也许就能正常显示了。 ) K5 B( {1 y" y
  这个方法尚未做实际测试,效果未知。
3 z7 l1 T5 D9 Z) a+ x( y+ j8 |  y7 Z( Z  S- n. x$ Y; p
相关资料
1 w& {6 H% `! }& q
: ]+ J. l1 |- u/ j8 ?CEGUI0.4.1字体定义文件说明
1 G+ i! B* Q( Y) r0 c. y5 s2 E  Lhttp://www.cegui.org.uk/wiki/index.php/Font_files
5 K* o  U2 L$ B! J6 j, t  P& j0 U. _" h# S3 _8 Z- b' a- w$ L
CEGUI0.5.X关于字体定义文件的变更点
9 j; r; ]+ }" y" m5 D+ H# M6 d+ H
原文
( o. h$ k% y( B/ b, e; ^: R  Rhttp://www.cegui.org.uk/wiki/index.php/Release_Notes_0.5.X

: T2 p0 @& q; r! g6 K) Q
# `  S4 w7 O. ^$ y7 VA FontDemo sample which shows several properties of the new Font class. 6 u, _! f0 f5 e1 v' `
The above changes resulted in some slight changes to the format of the XML .font files:
3 B6 {- `8 k7 B  D% {+ S5 R
; a/ L6 T- n8 o& ^2 H! G: gGlyphSet, GlyphRange, Glyph sections of the Font are gone * f7 n3 A) W6 Z
The possible values of the Type attribute are now: 6 Y' T" r; Z" q5 Z
FreeType (instead of Dynamic) 7 [( u8 f! [8 r" U. e' v* @% |
Pixmap (instead of Static) 5 x  B' D: c4 t
The FirstCodepoint and LastCodepoint attributes of the Font section were removed / p- T9 ]" e$ m: {( a4 Q
After you change your .font files as mentioned above, they should work without problems. / n& h. C* `6 k+ s2 k3 y6 V

* E1 u0 H) \; g下面这篇文章应该是针对CEGUI0.4.1这个版本来说的。 ' R& h  g8 a9 z
! o8 G0 r" ~: Z% r
如何让CEGUI显示出中文 - I" O% @+ c! {
原文 * I( }8 `) W. x/ v/ D
http://blog.csdn.net/khzide/archive/2005/09/07/473765.aspx
" u% y' T! J1 S! k) ~7 t
" q2 w3 ^; ^+ r3 r! i/ sCEGUI(Crazy Eddie's GUI System ) 是一个免费并开放源码的图形(GUI API库),写于C++, 并且面向对象。你可以用它来创建游戏中的GUI部分,而不用再自已动手去实现。 ! c1 l; L! P0 {  {, e. G  p
& e, E2 O& I  d: z: H+ z" [6 K& M
管方网站:http://www.cegui.org.uk/ 上面有很多有用的信息,如果你要详细了解它的话,可以常去这上面逛逛。
  f6 v: M* w6 S) `( X" z7 l8 y$ Q, B& V4 Z  q, s
发现有好多战友与我一样,一开始用它的时候不知道如何显示出中文,只是听说很easy,但却自已试不出来。我走了一些弯路,希望别人不要再跟我一样了。其实它实现起来真是是很easy. CEGUI是基于utf8格式的,所以可以显示出中文,但需要注意的是这里面烦是设及到汉字的地方都要保存成(utf8)格式,或者在程序中动态转换成utf8字符串也行。至于如何保存在utf8格式,有很多哟,可以用EditPlus, uedit32, 更酷的一个就是vs.net了。哈哈,可惜它太大了,携带起来不方便。
! v9 ]7 t4 [# y5 t8 H
1 F& r; R; r# z. I8 i: W6 h0 {3 W1.你要指定一种中文字体文件(*.ttf) 例如我选用的simhei.ttf, 这可以在window目录中的font文件夹中找到一些。 这就是CEGUI中我们要用到的中文字体来源。
6 E$ I5 r. c& ~% {
8 N+ g7 t0 v( V. ~9 G# x2. 需要定义一个 (.font)文件, 这个文件其实是CEGUI用于生成字符映射图片的一个索引文件(xml格式),在<Font> 节下面定义一个子项<GlyphSet> 并指定其属生 Glyphs="所有需要用到的中文字符集" CEGUI会根据它而生成最终字符映射图片,如果你这里没有将用到的汉字全部列出,没关系,大不了就是CEGUI不会显示出你的字符或者显示成乱码^-^,系统不会崩的。 , L7 t. m4 {# h. F
4 ]3 x) P% K! M; ^4 ?, C% o
3.字个(.font)文件一定要保存成(utf8)格式,这是很重要的哟。
4 N  K( D! Y7 D; \( k1 Z
5 Y8 h. ]- D! [. m! F* F& Q4.如果你的程序中用到了汉字,那么这个文件最好也要保存成(utf8)格式,当然你也可以去进行ascii<->utf8的转换,都一样的。
  v/ ], D9 P% R/ f
" `" k* L9 P' L. w6 V( q
1 J# A  m3 c* [/ B; V2 D这就完事了,怎么样,很简单吧。至于如何去载入字体文件,如何使用CEGUI,就不关吾的事了。相信你即然看了这遍文件,那些也一定会了吧。
* w4 a6 j5 h. Q" p% P7 [9 m- P6 j/ d, {0 R  \. @, i
   9 Y5 w9 R$ b' l/ z: f" p

! f8 K" I% Z9 s1 r3 u4 K: w8 O
; m$ Z$ q$ @7 j" \& O, J, x: g' I  a8 ~0 p# o

! Y$ Q* T+ p! `9 e; u* q: \
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

快速回复 返回顶部 返回列表