·汉化新世纪 ·汉化新世纪论坛 ·百家争鸣 ·论坛集萃 ·汉化问答 ·软件介绍
文章首页 >> 汉化教学 >> 特殊汉化 >> 如何汉化ASCII码软件(S60)    Creative Commons License,创作共用协议(中文版)  署名 非商业性使用 禁止演绎

如何汉化ASCII码软件(S60)

作者: cuckoo_1984◎WBO 来源:塞班智能手机网 时间:2006-05-09 点击:14490

一、在前面要说的


现在对于S60软件汉化有兴趣的人越来越多了,这对于我们中国人来说是个非常好的现象,如今的软件绝大多数是英文的,虽然用起来也不是很费力(那证明咱们有一定的英文知识水平:)但是英文水平再高也没有看着咱们自己的母语舒服啊,所以说汉化是一项必然要做的工作。

在这里讲的是难度相对较高的ASCII码软件的汉化,Unicode码的在此就不多说了。




二、关于ASCII  


现在软件中的字符串大致分为两种:Unicode码&ASCII码,在Unicode码中一个符号、一个英文字母和一个汉字都是占用2个字节,而在ASCII编码中一个符号和一个英文字母只占用1个字节,而一个汉字仍然要占用2个字节,正由于这一点的不同,现在使用ASCII码的英文软件渐渐多起来,因为ASCII码能让软件的体积更小开发起来更方便。



三、汉化ASCII码的原理
 

先用Unmakesis工具把.sis软件解压,我们要汉化的资源基本都在解压后的.rsc&.app这两种文件中,也有可能在其他文件当中,那要视软件而定,而ASCII编码的基本存在于.rsc文件中。

用16进制编辑工具Hex WorkShop打开.rsc的文件,如图一所示则为ASCII编码的,如图二所示则为unicode编码的,相信大家能有所区别



下面说一下汉化的原理:
如图所示:“setting”的ASCII字符串为



08 08 53 65 74 74 69 6E 67 73
其中第一个08表示此字符串一共有8个字符
其中第二个08表示此字符串一共有8个字节
其中第三个53在ASCII码中表示英文字母“s”
其中第三个65在ASCII码中表示英文字母“e”
其中第三个74在ASCII码中表示英文字母“t”
...


那么如图把“setting”汉化成中文“设置”的ASCII码是:




03 08 0F 8B BE 7F 6E 00 20 E0
其中第一个04表示此字符串一共有3个字符(“设置”+“一个空格”一共是3个字符)
其中第二个08表示此字符串一共有8个字节
其中第三个0F表示在此之后为Unicode字符串
其中第四、五个8B BE在Unicode码中表示汉字“设”
其中第六、七个7F 6E在Unicode码中表示汉字“置”
其中第八、九个00 20在Unicode码中表示为“空格”
最后一个E0代表在此之后为ASCII码,如果字符串到此为止,那么这个E0也可以写成00


ASCII码汉化的大致原理就是这样,当然例外的情况还有很多,那要视情况而定。
如“Help”的ASCII码字符串为:
04 04 48 65 6C 70
其分析方法如上,如果汉化成“帮助”的ASCII编码为:
02 05 0F 5E 2E 52 A9
这时你会发现汉化后的字符串比原来的多出一个字节,如果这样汉化后会导致程序错误,那么该如何解决呢?这里有一个最常用也是最简便的一个方法:那就是把其它字符串没有用到的多出来的字节剪切到缺少字节的地方
刚才那个“setting”汉化后的字符串:
08 0F 8B BE 7F 6E 00 20 00
这里的结尾出多出个空格00 20和一个没用的空字节00,等于一共多出3个,哈哈,那就不客气了,拿来一个字节00用先!把00剪切到“Help”的字符串后面就成为:
04 48 65 6C 70 00

这样回过头来再汉化成“帮助”:
05 0F 5E 2E 52 A9
字符串就一样长了哦:)

你从人家“setting”那里剪切了一个字节,那么千万别忘了把它的字节数改正过来!!!否则会导致程序错误,改过后“设置”的ASCII字符串应为
03 07 0F 8B BE 7F 6E 00 20


注意这种互借字节的方法只能用在软件选项中的同级目录中,如图中的“帮助”可以从“设置”中借字节,也可以从“控制”中借,不能从子目录“选择时间”中借!!总之在同一目录下有多余字节的地方借就可以了





四、汉化的具体操作


用Hex WorkShop打开要汉化的文件,然后就可以直接修改里面的字体编码,至于到哪里去得到汉字、符号、字母的Unicode代码,这有很多方法,可以用Hex WorkShop的替换功能,也可以用小狗狗ResEditor随便打开一个文件,然后用小狗的替换功能就可以了,方法多种就看你喜欢哪种方式了,我比较喜欢用小狗狗ResEditor&Hex WorkShop相结合着用,效率还可以,如图



需要注意的是不管我们用那种方法查到的汉字、符号、字母的Unicode代码都是与我们要输入的代码是相反的,如我们查到汉字“设”的Unicode代码为“BE 8B”们在修改时要倒过来输入为“8B BE”,这样在软件里才能正常显示“设”

汉化是一项需要耐心的工作,不能烦不能躁,更要细心,避免一些不必要的小错误,还有就是在汉化的过程中要注意随时做好备份工作&测试,不然哪里出现一些细小的错误或是家里突然停电(我家就常是,哭都没地方。。)而造成汉化半途而废,如果说真的遇见汉化错误而又不知是哪里错了,那么我推荐你用Hex WorkShop的比较功能来把你有错误的文件与没有错误的文件对比一下,也许你能找到原因,如图:






五、最后要说的


这个教程只是一个汉化ASCII码软件的入门教程,都是最基本的,也可以说是我自己总结的一些汉化经验拿出来与大家分享,希望对于那些刚开始学习汉化的朋友有些帮助。

汉化新世纪 责任编辑: 乾 .:|:. 标签(Tag): S60 手机 ASCII

·上一篇: 用Setup Factory 7.0制作安装程序(问答篇) ·下一篇: 在网上发现一个涉嫌抄袭的汉化组织

· 版权申明: 本文引自《塞班智能手机网》,如有版权疑问请及时联系本站,以便本站处理。

· 转载申明: 本文引自《塞班智能手机网》[ 作者: cuckoo_1984◎WBO],如需转载请直接联系原始作者,并请注明原始出处。

相关文章                                                                                发表评论 打印此文 关闭窗口

| 设为首页 | 加入收藏 | 联系我们 | 友情链接
Creative Commons License,创作共用协议(中文版)  署名 非商业性使用 禁止演绎
本站内容,除转载或版权特别申明的内容外,皆遵守 创造共用协议中文版之“署名-非商业性使用-禁止演绎 2.5 中国大陆”条款
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 China License.
本网站内容源自汉化新世纪论坛的摘录和汉化新世纪成员的原创文章。
凡汉化新世纪论坛的文字皆默认为汉化新世纪与原作者共同拥有并授权发布。
如对本站发布文章有所异议请来信告知,我们将及时删除。
凡商业摘录本站文字请先与我们联系,本站将保留非授权商业发布的追究权利。
凡非商业摘录本站文字请明显注明出处和原作者,并不得改动,凡改动必先征求原作者同意。
苏ICP备05002283号