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

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

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

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

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

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

CEGUI是一个开放源码的开发游戏界面的库,如果你在游戏里发现CEGUIBase_d.dll之类以CEGUI开头的DLL的话,这个游戏的界面就是CEGUI做的,游戏字幕的输出自然也是用它。
7 |' S. L4 v9 L7 V% c" g' R
4 _2 p* p" L, U, GCEGUI有0.4.1,0.5.X,0.6.X等几个版本,从0.5.X开始就对中文完美支持了。
/ U: a; ~3 @2 w1 D8 s! [问题是0.4.1这个版本,对中文的支持不太完美,说是不能换页之类的。
/ h% G5 t1 F; z2 b3 r现阶段,不少AVG游戏中还是用CEGUI0.4.1这个版本,比如安徒生童话这个AVG游戏. 8 |7 w: a4 o) H3 B
因为FONT字体定义文件的格式不同,所以可以判断出是0.4.1这个版本 ) x, S: A/ I& I5 A/ M' V

( u" a' k7 U0 r7 s解决方法
+ G7 N, B( Y; V) t/ v( |
关于解决方法,我查了不少资料,大致有2个
4 l. O* r8 J# O; U0 ^/ i5 A3 ]3 w1。改造0.4.1的DLL文件,参照0.5.X的代码,把关键地方进行修改。
( O* M. W. J( z' ~# Z  这个方法较难,暂不讨论。 ' e* x' g% U" Z3 r8 F' R

: \5 `1 d: ^4 g$ t2 M6 M2。0.4.1的字体定义文件还是为中文留了一条路的。 + @4 |% c5 R: _; A( |* s5 u
  可以用GlyphSet这个属性只生成要用到的字体的图片。 , ~& o5 v0 _! Q- K3 A
  中文汉字有6000多个,但是在一个AVG里用到的中文可能只有1000多个。 & t' \! a: F, F0 Q3 T% U
  把这些中文汉字定义到GlyphSet这个属性,也许就能正常显示了。 7 u% _3 B& s8 M8 X1 D$ S
  这个方法尚未做实际测试,效果未知。 ! V9 o* a7 E9 g9 n

- e9 b: E, A3 X% j" s0 J; N6 C; p1 a相关资料 ( K8 S2 w% u0 F/ A( L1 C
8 T2 @4 Q+ A9 r$ G8 g2 M2 S# J
CEGUI0.4.1字体定义文件说明 / @, m* ?9 @- T$ I/ q7 T& Q! z" y' R
http://www.cegui.org.uk/wiki/index.php/Font_files
% `, K0 D" e$ s& [" J
* l, x7 w" s: W- ~3 @CEGUI0.5.X关于字体定义文件的变更点
& i# C1 _" x( A: z" F; z
原文 6 D6 x% E3 B3 P5 W' S- J
http://www.cegui.org.uk/wiki/index.php/Release_Notes_0.5.X

% E0 U7 i# K* m2 l2 w/ p3 _9 ^+ ?
1 ?1 O- w1 D) }- y/ D. S8 m  XA FontDemo sample which shows several properties of the new Font class.
! S  [( y" }* G3 AThe above changes resulted in some slight changes to the format of the XML .font files:
: p6 ~* X2 a% l2 u# W4 I6 N: A% P- Z$ N+ \9 F- L
GlyphSet, GlyphRange, Glyph sections of the Font are gone ( j3 a) x0 W- l% A5 g4 ]
The possible values of the Type attribute are now:
7 O8 t/ c! q) d4 GFreeType (instead of Dynamic) & m( q" c2 ^* S6 g
Pixmap (instead of Static) 7 L1 [6 G% Q! @5 u
The FirstCodepoint and LastCodepoint attributes of the Font section were removed
+ A: b; Q$ G7 {. UAfter you change your .font files as mentioned above, they should work without problems.
) W2 k8 t2 @  j4 L
- b/ e7 s% |4 l& l7 W下面这篇文章应该是针对CEGUI0.4.1这个版本来说的。 : W  X7 R! q" ?
# Q; C8 B  @; f' Q
如何让CEGUI显示出中文 ( j$ i* K4 q0 A( S7 Z
原文
" a* P  i* A9 t$ u* thttp://blog.csdn.net/khzide/archive/2005/09/07/473765.aspx
8 s# ]5 {3 w2 i7 F* y  x9 c7 j; C0 E( o7 Y+ t7 g3 b1 G7 G0 A5 Z& Y2 o  Y
CEGUI(Crazy Eddie's GUI System ) 是一个免费并开放源码的图形(GUI API库),写于C++, 并且面向对象。你可以用它来创建游戏中的GUI部分,而不用再自已动手去实现。 5 F4 i0 m( b9 l2 D1 k' u

) o: z5 X2 y3 a管方网站:http://www.cegui.org.uk/ 上面有很多有用的信息,如果你要详细了解它的话,可以常去这上面逛逛。 ! `, k! I& D, I' r/ e
2 S$ @  w4 N. V$ q" y' G
发现有好多战友与我一样,一开始用它的时候不知道如何显示出中文,只是听说很easy,但却自已试不出来。我走了一些弯路,希望别人不要再跟我一样了。其实它实现起来真是是很easy. CEGUI是基于utf8格式的,所以可以显示出中文,但需要注意的是这里面烦是设及到汉字的地方都要保存成(utf8)格式,或者在程序中动态转换成utf8字符串也行。至于如何保存在utf8格式,有很多哟,可以用EditPlus, uedit32, 更酷的一个就是vs.net了。哈哈,可惜它太大了,携带起来不方便。 " e0 n$ E& Z5 \" _& K  S5 q

" F8 o! }3 B, @4 ]; r1 D1.你要指定一种中文字体文件(*.ttf) 例如我选用的simhei.ttf, 这可以在window目录中的font文件夹中找到一些。 这就是CEGUI中我们要用到的中文字体来源。 : g, C/ _( `& O' [# q

7 Q3 a. [! n" t( G  R. x, m1 O2. 需要定义一个 (.font)文件, 这个文件其实是CEGUI用于生成字符映射图片的一个索引文件(xml格式),在<Font> 节下面定义一个子项<GlyphSet> 并指定其属生 Glyphs="所有需要用到的中文字符集" CEGUI会根据它而生成最终字符映射图片,如果你这里没有将用到的汉字全部列出,没关系,大不了就是CEGUI不会显示出你的字符或者显示成乱码^-^,系统不会崩的。 6 n" o* f7 Q/ C6 c4 [* z, Q

' L) A- D# y& o7 ]3.字个(.font)文件一定要保存成(utf8)格式,这是很重要的哟。 8 O, J4 V( j7 W3 s$ G$ F2 X

: e: b. t3 Z0 n* y( ~4.如果你的程序中用到了汉字,那么这个文件最好也要保存成(utf8)格式,当然你也可以去进行ascii<->utf8的转换,都一样的。 5 b9 O% ~7 g  V+ n
* W( O4 V1 I7 w

  ^$ X& B$ X: Q* ^- c- v这就完事了,怎么样,很简单吧。至于如何去载入字体文件,如何使用CEGUI,就不关吾的事了。相信你即然看了这遍文件,那些也一定会了吧。 ! L* `' f  K; o9 m3 T- X3 {
2 p, t+ d# [7 Q2 C3 M+ u( _
   ( b! P5 R" x  c: M3 v5 y- F

6 U0 P# L+ i1 A' E; `
0 A: b) j5 ^+ p
5 s+ t6 X; p0 A' R
  i7 D' n: s3 T1 W; \3 ~
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

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

本版积分规则

冒险解谜游戏中文网 ChinaAVG

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

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

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

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