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

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

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

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

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

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

CEGUI是一个开放源码的开发游戏界面的库,如果你在游戏里发现CEGUIBase_d.dll之类以CEGUI开头的DLL的话,这个游戏的界面就是CEGUI做的,游戏字幕的输出自然也是用它。
2 R5 _# B- _  `; S8 }) Q
, n- @+ P$ r0 Y) UCEGUI有0.4.1,0.5.X,0.6.X等几个版本,从0.5.X开始就对中文完美支持了。
7 g5 [$ F9 {- t/ @; c问题是0.4.1这个版本,对中文的支持不太完美,说是不能换页之类的。
6 ~$ O' t' R3 W- @  ~+ e现阶段,不少AVG游戏中还是用CEGUI0.4.1这个版本,比如安徒生童话这个AVG游戏.
' Y" a) h: Z5 T+ B7 a8 d因为FONT字体定义文件的格式不同,所以可以判断出是0.4.1这个版本
1 ?  n, {: ?3 z$ g' G

  g" }% p1 w0 y/ i. Z# @2 l' y解决方法 ) ~" p$ g3 j- {; `0 H5 j
关于解决方法,我查了不少资料,大致有2个
2 E+ h1 O" e3 Y1 u1。改造0.4.1的DLL文件,参照0.5.X的代码,把关键地方进行修改。
( I2 J' }2 G8 c  这个方法较难,暂不讨论。
; r1 M# D, Y9 P/ H9 v$ y5 z& L5 y8 \0 Z" h, ~: q# Q8 }
2。0.4.1的字体定义文件还是为中文留了一条路的。
, G+ R& L- n( K; k; f4 d  可以用GlyphSet这个属性只生成要用到的字体的图片。 $ t) {6 Z/ A9 d" k6 s
  中文汉字有6000多个,但是在一个AVG里用到的中文可能只有1000多个。
" n1 d9 M3 t7 ?7 g' z  把这些中文汉字定义到GlyphSet这个属性,也许就能正常显示了。
# v! q$ X4 C# m7 `7 h" [  这个方法尚未做实际测试,效果未知。   d* ?- X' \* O$ Z7 w
/ t1 s7 _' T- p& S* Q/ i9 n9 ~3 M( R
相关资料
4 B1 K( V5 z# C4 [5 h0 _+ G& |& E* w3 R4 V
CEGUI0.4.1字体定义文件说明 - a) C1 o# M1 y! o; M& P
http://www.cegui.org.uk/wiki/index.php/Font_files
( S& k7 z; t. o: T
4 r" p; e+ D# q  ?0 {2 r, JCEGUI0.5.X关于字体定义文件的变更点

. o% ^! e9 u& [6 ~' u- N, U- b. f原文
- q* a, }1 w2 \" r- g% ihttp://www.cegui.org.uk/wiki/index.php/Release_Notes_0.5.X

8 W9 `* i3 o8 W, q$ C$ y
/ Z% ]8 b" e$ f9 a( KA FontDemo sample which shows several properties of the new Font class.
9 \2 F! w2 ~8 S3 fThe above changes resulted in some slight changes to the format of the XML .font files:
# q6 B+ R0 T. S8 q3 Z: y. k
+ g3 ]& W' |& Q0 f1 _9 BGlyphSet, GlyphRange, Glyph sections of the Font are gone ' ?9 @- h9 B5 [8 h* X0 t
The possible values of the Type attribute are now: : J9 C# P" B% t+ S
FreeType (instead of Dynamic) ! ^8 c- ?: Y; z% W. v
Pixmap (instead of Static)
% G# w+ w) C/ g) XThe FirstCodepoint and LastCodepoint attributes of the Font section were removed
" |& p* l# X6 E# f( }/ D8 }After you change your .font files as mentioned above, they should work without problems.
3 b2 `9 h2 @0 n# {9 O& o . {: m9 B7 N$ C. V
下面这篇文章应该是针对CEGUI0.4.1这个版本来说的。
- {& w9 p/ K, C2 I
2 q2 p2 V; I5 I( j如何让CEGUI显示出中文
/ P, B+ `3 J2 i4 |* A
原文 ) h/ z3 _, g4 Q2 A6 T9 m0 R
http://blog.csdn.net/khzide/archive/2005/09/07/473765.aspx / k$ Q  D2 r% y4 ?/ T! [# c! r

. M* e2 `4 p0 g! ^$ G) }+ {! fCEGUI(Crazy Eddie's GUI System ) 是一个免费并开放源码的图形(GUI API库),写于C++, 并且面向对象。你可以用它来创建游戏中的GUI部分,而不用再自已动手去实现。
6 u& }" s% d- ^, n" h' G
1 a9 n  N# r& `& @: B% p管方网站:http://www.cegui.org.uk/ 上面有很多有用的信息,如果你要详细了解它的话,可以常去这上面逛逛。
8 J; N) y: I& @8 {7 e- }  B& ~! u7 i' p' Q: C, f2 t2 M7 L
发现有好多战友与我一样,一开始用它的时候不知道如何显示出中文,只是听说很easy,但却自已试不出来。我走了一些弯路,希望别人不要再跟我一样了。其实它实现起来真是是很easy. CEGUI是基于utf8格式的,所以可以显示出中文,但需要注意的是这里面烦是设及到汉字的地方都要保存成(utf8)格式,或者在程序中动态转换成utf8字符串也行。至于如何保存在utf8格式,有很多哟,可以用EditPlus, uedit32, 更酷的一个就是vs.net了。哈哈,可惜它太大了,携带起来不方便。 ! }' M% I( N  O! `
8 s! u5 g( k% L# {/ K0 ?- f) K
1.你要指定一种中文字体文件(*.ttf) 例如我选用的simhei.ttf, 这可以在window目录中的font文件夹中找到一些。 这就是CEGUI中我们要用到的中文字体来源。
2 l" D% N% i& i# ^
2 H" M) [% C$ D2. 需要定义一个 (.font)文件, 这个文件其实是CEGUI用于生成字符映射图片的一个索引文件(xml格式),在<Font> 节下面定义一个子项<GlyphSet> 并指定其属生 Glyphs="所有需要用到的中文字符集" CEGUI会根据它而生成最终字符映射图片,如果你这里没有将用到的汉字全部列出,没关系,大不了就是CEGUI不会显示出你的字符或者显示成乱码^-^,系统不会崩的。
7 q9 k" }2 O# Y( A, I& r0 N
5 Z# |' d( j; g4 N3.字个(.font)文件一定要保存成(utf8)格式,这是很重要的哟。
3 F3 K" b  v6 I2 T5 o4 g  N# m: w, p) W' }6 I6 T, L
4.如果你的程序中用到了汉字,那么这个文件最好也要保存成(utf8)格式,当然你也可以去进行ascii<->utf8的转换,都一样的。
6 L  @' G7 J" H! i: ?$ E5 w' j' ?1 [2 z: S" J+ C! I! G* s

3 r0 a  E1 ]/ s; F2 D* X这就完事了,怎么样,很简单吧。至于如何去载入字体文件,如何使用CEGUI,就不关吾的事了。相信你即然看了这遍文件,那些也一定会了吧。 9 f$ N: g0 m! I" X* l
" G. v9 H# n) G  c6 l1 O" F, {' }7 A
  
& ]* q% Y; M+ D8 W' `, |6 U0 M$ @  m, q: X1 Y
; F% ?; I* a5 z& D1 F

. A- ]* m( s4 ]$ l# e2 B* O' l+ P$ N8 N2 \6 T! e0 y9 i
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

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

本版积分规则

冒险解谜游戏中文网 ChinaAVG

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

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

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

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