QQ登录

只需一步,快速开始

查看: 26832|回复: 35
打印 上一主题 下一主题

FlightGear 本地化工程

[复制链接]

主题

好友

618

积分

航院研究生

跳转到指定楼层
#
发表于 2012-6-11 00:57:49 |只看该作者 |正序浏览
为了将FlightGear用上本地系统,我们小组对其进行汉化处理
1.菜单界面等汉化:FG的菜单使用plib库实现,plib使用了自己的txf字体,该字体对西方字库有优势,在菜单上使用了点阵字库,仿照该技术,我们使用了汉字点阵字库,考虑到界面大小,使用16位点阵字库HZK16,该字库及使用方法网上很多。具体工作是对plib的text输出部分修改,使之可以读出双字节内容。但经过试验,发现不能使用MultiByte方式,因为FG在传送字符串时,如果不是英文或数字的话,会采用UTF8方式传送,这会导致靠前区的汉字无法显示,因此,需要把菜单的xml文件改成UTF编码,注意使用无BOM的UTF8方式,可以使用Editplus软件来修改成UTF8方式。然后修改plib的字体显示函数,对utf8汉字编码进行译码,具体就是先对UTF8转成Unicode,在用系统函数把Unicode转成GB码,根据GB码到HZK中定位,后面读出点阵信息。显示部分就不用管了,plib自己做了。
2.txf字体,FG中的splash screen及部分显示部分使用了txf字体,网上有ttf2txf软件,并有部分代码,我们现在是做了一个微软雅黑的txf字库,替换掉了系统的默认字库,实现了汉字支持。
3.服务器, FGMS目前只有Linux系统,为了能在Windows下运行,需要对其进行移植,好在很多代码都是支持双系统的,主要对其Linux特有的函数进行替换,然后对main.cxx函数进行分析,移植核心代码到windows中,我做了一个对话框的MFC程序,启动服务用的servant.loop函数,为防止程序锁死,需要新建一个线程来执行loop,然后就OK了。
4.下一步目标:扩展服务器功能,目前服务器只实现了信息转发功能,需要对其进行扩展,加上客户控制,信息发送,综合显示等功能,再就是开发自己的飞机及场景,适应中国区的使用。
分享到: QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
分享分享0 收藏收藏1

主题

好友

55

积分

航院新生

35#
发表于 2018-3-17 15:35:43 |只看该作者
你们的思路很好,不知道是否已经实现。
回复

使用道具 举报

主题

好友

16

积分

报考学院待录取

34#
发表于 2017-8-3 18:23:15 |只看该作者
我也想加入qq群,要加哪个啊。
回复

使用道具 举报

主题

好友

5

积分

报考学院待录取

33#
发表于 2017-6-8 12:46:46 |只看该作者
初来,学习中。。。。。。
回复

使用道具 举报

主题

好友

7

积分

报考学院待录取

32#
发表于 2016-10-27 22:04:09 |只看该作者
辛苦啦,希望能早日看到相关的书籍
回复

使用道具 举报

主题

好友

27

积分

报考学院待录取

31#
发表于 2016-7-31 00:19:56 |只看该作者
好久远的帖子,不知下文如何了?
回复

使用道具 举报

主题

好友

42

积分

报考学院待录取

30#
发表于 2016-5-15 10:38:47 |只看该作者
四年过去了,书出来了么,求书若渴啊
回复

使用道具 举报

主题

好友

86

积分

航院新生

29#
发表于 2016-4-3 23:18:12 |只看该作者
非常感谢!!!!:):):)
回复

使用道具 举报

主题

好友

12

积分

报考学院待录取

28#
发表于 2015-3-31 20:06:58 |只看该作者
努力学习之!!!!   
回复

使用道具 举报

主题

好友

23

积分

报考学院待录取

27#
发表于 2014-6-12 09:14:12 |只看该作者
两年过去了,书出来了么,求书若渴啊
回复

使用道具 举报

主题

好友

30

积分

报考学院待录取

26#
发表于 2014-3-9 22:49:32 |只看该作者
正在研究FG,多谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入FG

本版积分规则

手机版|联系我们| FlightGear ( 吉ICP备19002044号-7 )

GMT+8, 2024-5-5 21:48

Powered by Discuz! X3.2

© 2001-2013 FlightGear Inc.

返回顶部