论坛风格切换切换到宽版
  • 10325阅读
  • 11回复

[转帖]苹果软件汉化简单教学-另一篇 [复制链接]

上一主题 下一主题
离线daivi
 

发帖
16
金钱
0
威望
0
只看楼主 倒序阅读 0 发表于: 2005-10-14
拖了很久了。网站基本上完成转换。就抽空把这件事给了结了吧。个人水平有限,所以难免有不太对的地方,希望大家可以指正一下。

另外可能需要的时间比较长。所以大家请暂时不要回复。

因为OS 9已经被苹果给终结了,也就不再讨论OS 9的程序的汉化。仅以OS X的Cocoa程序汉化为例。

如果想要进行苹果软件的汉化,那么我们首先需要以下几个工具:

1、PowerGlot:最主要的特点是可以使用词库来进行翻译,节省了大量的工作时间,在翻译完成后还可以自动生成本地化文件。
汉化版本见:http://bbs.ihotmac.com/showthread.php?t=1573

2、Resorcerer 2.4.1 :历史悠久的苹果资源编辑软件,可以对目前大多数的苹果软件的资源进行编辑,因此它并不仅仅只是一个汉化工具,同时还可以进行其它工具,例如程序的修改。

3、Mac OS X Development Tools:苹果免费开发程序工具包,你需要登录后方可下载。它包括了开发程序所需要的很多工具。例如可编辑.nib/.string文件的工具。

4、HexEdit:免费的苹果16进制编辑器。

我们先来了解一下什么是Cocoa程序?
Cocoa 是一个面向对象的应用程序环境,专门为 Mac OS X 本地应用程序开发而设计。这些专业术语对我们来说可能比较难懂。这并没有什么关系。我们只要知道该程序是不是Cocoa程序就行了。

那么如果判断程序是否是Cocoa程序?
判断的方法比较简单:
1、直接查看软件主程序的信息。如果软件的简介-语言中有English存在。说明该软件是Cocoa程序。如果显示为“Classic应用程序“,说明该程序是Classic程序。也就是无法直接在OS X中运行而需要Classic的程序。

2、按住“control“然后点击应用程序,如果在下拉菜单中有“显示包内容“菜单,那么我们也可以认为它是一个Cocoa程序。

3、直接双击该软件如果可以直接在OS X中运行,我们也可以认为它是Cocoa或者Carbon程序。比较特殊的例子是还有Java程序,如LumaQQ、Azureus。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 1 发表于: 2005-10-14
在确认需要汉化的软件是Cocoa程序以后,下一步,我们还要判断软件是否可以汉化。这里我以“File Buddy“软件为例来进行演示。

首先,右点(或者"Control+点击")File Buddy软件主程序。在弹出菜单中选择“显示包内容“。这时会弹出一个新的窗口显示软件包的内容。

打开目录:File Buddy.app/Contents/Resources/。我们可以发现其中有个目录叫English.lproj。

选中该目录,然后按“苹果+D“原位制作一份拷贝“English.lproj拷贝“。把“English.lproj拷贝“更名为 “zh_CN.lproj“。注意zh_CN.lproj是简体中文语言包的指定名称,同时区分大小写。如果你想制作繁体语言包可以改为: zh_TW.lproj

双击运行主程序,看是否可以正常使用。(当然这时候你看到的仍然是英文界面,因为我们并未进行汉化工作。)

注意:某些程序如:Skype在添加了任何语言包以后都无法正常启动,这种程序比较少见,但不可不防,不要在你完成汉化工作以后发现无法使用,那可郁闷了 :em13: :em13:

在上面我们添加了"zh_CN.lproj"文件包后。FileBuddy运行没有问题,说明我们可以汉化。现在我们就要确定需要汉化的内容。


在FileBuddy中,除了我们刚才复制过来的zh_CN.lproj需要汉化以外,我们会发现与zh_CN.jproj在同一目录中的 Droplet.、File Buddy CM.plugin以及FileBuddyRelauncher也是文件包,打开文件包后,我们会发现它们也都有English.jproj目录。同样的,依上一贴中的操作,分别复制并更名为zh_CN.lproj。

总结:即使是只有主程序的文件,在文件包内也可能不只有一个English.jproj,你需要仔细查找,尽可能完整的找到需要的所有文件。

同时并不是所有软件都只有一个主程序的。象一些大型的软件,如Wangyu汉化的网页三剑客、以其一些工具类软件,都有可能在库、应用程序支持以及其它目录中安装一些文件。

因此如果需要,你同样要对这些文件进行汉化。但具体是哪些文件就需要你自己进行研究了。[attachmentid=17288]
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 2 发表于: 2005-10-14
前面说了一堆,主要就是确定是否能正确进行汉化工作。下面我们就开始着手进行汉化了。

一般包含在语言包中的文件有以下几种类型:
1。.strings:字符串文件,一般存储了一些动态的文本字符。比如某个下拉菜单中的菜单条目。或者出现在对话框中的一句话。等等

如果你安装了苹果的开发工具包。你可以直接双击.string文件,系统会自动以Xcode程序打开.打开以后我们可以发现都是一些字符。主要有以下几类:
1>绿色的以"/* */"包含的文本:这些文本都是程序开发者的一些注释,说明下面的文本出现的位置或者作用。这些都不是程序中会出现的文本。因此你可以不必汉化,当然,如果你想翻译过来方便别人理解,你也可以翻译,但一定要在"/* */"符号中间。

2>红色字符类似于"2006" = "Access"。这些都是应用程序调用的文本内容。其中等号前面部分为程序的引用,这是不可以汉化或者更改的。等号后面的为显示的实际文本。所以我们就要翻译等号后面的内容,也就是翻译成"2006" = "访问";

另外如果在文本中出现类似于 “^0” 的字符,请完整保留,这些都是程序变量。也是不允许更改的。

一个比较简单的标准就是:你不明白的特殊字符就不先不要去更改。

注意:在汉化过程中,只能翻译等号后面引号中的内容。不要随便更改格式。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 3 发表于: 2005-10-14
2。.nib文件:实际上主要就是程序的窗口或者界面,内容复杂。

双击.nib文件,以Interface Builder程序打开。在这个窗口中有一些各种图标,具体是什么内容你可以从名字中看出来,例如"MainMenu"意思是应用程序的主要菜单。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 4 发表于: 2005-10-14
双击"MainMenu"后就可以看到它的实际内容了。出现的是程序的主菜单,点击某个菜单就会弹出菜单内容,双击其中一个菜单内容,输入翻译文本就完成了。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 5 发表于: 2005-10-14
或者你可以按“苹果+1"调出所选项目的属性来进行更改,这里除了可以直接翻译文本,同时还可以修改如快捷键、状态信息。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 6 发表于: 2005-10-14
我们再打开一个窗口,同样的你可以在双击文本后进行编辑。同时你还可以根据编辑后的文本长度对版面进行适当修改。

在按“苹果+1“调出属性菜单后,你可以对选择的项目进行其它编辑,如对齐方式、选项属性是单选还是复选,等等。当然这些你都可以不必更改。

但需要提醒的是最好按“苹果+6“调出提示菜单。这是当你的鼠标悬停在某个菜单或者按钮、文本后出现的提示信息。这个无法在窗口中直接编辑。

照上面这样基本上就能完成.nib的汉化。在汉化后可以一下,程序会自动备份原来的文件。因此在全部完成以后注意删除备份。或者你可以在出现错误后使用备份来恢复。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 7 发表于: 2005-10-14
3。图标文件
如PrefsCleaningLabels.png、AboutBox.jpg、autoreg.icns。这些文件没有必要,请不要去修改。

4、文本文件
如.txt/.html之类的版权声明、帮助文件。这个视情况直接编辑。

5、资源文件
如Localized.rsrc之类的程序资源文件。这个比较特殊,稍后再说。

基本上经过这些文件的编辑我们就可以完成软件的汉化了。当然这个办法比较麻烦,因为你需要一个个打开文件,而且需要重复工作。

下面我再来说一个更为简便的办法-利用PowerGlot来汉化。

首先打开PowerGlot软件。把需要汉化的软件拖进窗口中。PowerGlot会对软件的资源进行分析,并提取文本。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 8 发表于: 2005-10-14
选择菜单:数据库-管理工作文件

设置每个工作文件的目标到对应的zh_CN.lproj目录中。
离线daivi

发帖
16
金钱
0
威望
0
只看该作者 9 发表于: 2005-10-14
在完成所有翻译以后,我们可以选择菜单:数据库-生成本地化文件-复盖目标文件。

然后我们打开汉化的软件就能看到中文界面了。

另外PowerGlot强大的地方也就在家它可以使用词库进行翻译,你可以由你汉化过程吕的文件来生成词库,或者自己手工添加,或者从别人那借一个来用用 : 有关词库的具体使用方法大家可以自己琢磨。

使用词库可以大大提高效率,比如软件更新了,你就不必再一个个打开文件自己动手,用词库翻译能解决大部分工作量。

写得有些乱了。汉化工作是一个比较辛苦的事情。需要耗费大量时间和精力。所以请大家能尊重一下汉化工作者们的劳动。

有关苹果汉化的内容到此就结束了。在此祝国内的汉化事业能真真日上,为粉丝们提供更便利的好东东