Lephone Loczlize Plus(PE字串替换工具)是一个本地化工具,主要用于非资源格式的本地化工作,支持的种类包括非资源格式的 C 编译的程序中的 ASCII 字符串和 UniCode 字符串、非资源格式的 Delphi(C++ Builder)编译的程序的字符串、VB 编译的程序的字符串、文本格式的字符串等的提取及替换。同时它还拥有方便的版本升级功能、字典处理功能,使您在翻译新版本时事半功倍。本软件提供英文、简体中文和繁体中文三种语言选择,并且您也可以很方便的添加对其它语言的支持。Win98/Me/2000/XP/Vista 可以直接运行本软件,Win95/NT4 需要安装 VB6 运行库。你可以在微软的站点下载它。
本软件主要用于非资源格式的本地化工作,对于资源格式的本地化工作,虽然也可以使用本工具处理,但因为无法做到大于源字串的替换,所以推荐使用其它一些工具(如 Visual C++、ResHacker 等)处理。
本软件的每一个界面上都有一段说明,在使用其功能之前,请先阅读这些说明。
对于所有的功能,其中所说的“对照文件”和“字典文件”都忽略空行,所以可以随意添加空行,不过只有空格的行不被视为空行,而“对照文件”中的其它行以如下格式重复:
偏移量:源字串
修改后的字串
“偏移量”用十进制表示,一般应由程序自行填写,用户不要再做修改;“源字串”也一样由程序自行填写,用户也不要再做修改。
而“字典文件”中的其它行以如下格式重复:
源字串
修改后的字串
同样的,“源字串”也由程序自行填写,用户不要再做修改。
另外,所有对可执行文件进行的替换工作,都不能进行长于源字串的替换,如果修改后的字串长于源字串,本程序将自动剪裁以便和源字串长度相同。如果短于源字串,将会以十六进制数“00”或空格(在“替换字串”界面上选择“多余补空格”)填充空余。
对于 VB 和 Delphi 编译的程序,因为有字串长度计数器,所以使用其专用功能不仅能提高查找的准确性,而且替换后的程序的兼容性也会更好,故推荐对于它们使用其专用的查找和替换功能。
本工具约定,VB 格式的 UniCode 的对照文件的扩展名是“.txt”,Delphi 格式的 ASCII 对照文件的扩展名是“.d.txt”, UniCode 格式的对照文件的扩展名是“.u.txt”,而 ASCII 格式的对照文件的扩展名是“.a.txt”。这四种对照文件的格式完全相同。程序会根据所选文件名判断它的类型,虽然用户仍然可以更改类型,不过还是建议使用约定的扩展名。
因为本程序在替换的时候做源字串的检测,所以选错类型一般不会造成不可挽回的后果,不过还是慎重为好。
对于 UniCode 和 ASCII 的查找,并没有前缀作为判断标志,所以如果一个字串的实际长度大于所选的最大长度,则采取右截取的方式。比如实际字串“Text”,而最大长度选择“3”,则提取此字串为“ext”。 对于内含回车换行的字串,使用替换方式进行处理,如下:
对于内含回车换行的字串,使用替换方式进行处理,如下:
回车 替换成
换行 替换成
替换成 \
” 替换成 ”
Tab 替换成
“翻译新版本”时,既可以使用“字典文件”,也可以使用“对照文件”。而“对照文件”可以使用“偏移量方式”的“分割对照文件”功能得到“字典文件”。
本程序查找时没有进度条指示进度,不过用户可以预估查找时间。在 P200 上的测试数据如下:查找 UniCode (包括 VB)的速度是 1MB/s ,而查找 ASCII (包括 Delhpi)的速度是 0.5MB/s 。
对于“清除预定义项”,用户可以自行修改其同目录下的“PDef.dat”文件。而对于它,可以使用“翻译项方式”的分割方式分割对照文件,把得到的“.2”文件中想添加的项加入“PDef.dat”即可。不过就我的测试而言,“清除预定义项”的功能对于不特定软件的效果并不是很显著,当然了,对于特定的软件(把不需要的项加入了“PDef.dat”的)效果还是不错的。
对于 INI 文件需要注意的是,程序只把第一个字符是“;”的行作为注释,如果有如“属性=值;注释”这样的行,将把“值;注释”当作“值”处理。
繁简用语替换时,如果用户的使用界面是简体中文,则使用 GBK 内码,如果用户的使用界面是繁体中文,则使用 BIG5 内码,分别对应不同的字典文件,如果本软件提供的词汇量不够的话,可以自行添加。此功能不进行内码转换,所以如果需要转换内码的话,请配合使用其它软件。在字典中请尽量使用长的词汇,这样可以增加准确性。我测得的替换速度约为 50KB/s (字典文件过大时也会对速度造成影响)。
使用 VA 方式查找可以增加查找的准确率,使查找到的垃圾字串大为减少,另外,“VA非控制符”、“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“VA非保留区”、“VA非限制查找”可以用于其它语系(如中文、日文等)的程序的查找,可以用于简体中文和繁体中文程序的互相转换,也可以用于对已汉化的程序进行进一步的修改。其中“VA非控制符”表示查找不是控制符的字符串,不过也查找回车换行和 Tab。“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“VA非保留区”也同样查找“英文和符号”。(控制符指 ASCII 值小于 32 的符号;保留区是 UniCode 指保留的部分用于扩充的区域。)
使用 VA 方式查找时有时有重叠项的现象,在替换前需要删除这些项,不过您可以在查找时使用“排除重叠项”让软件自行排除这些项。
对于所有的“VA中文(GBK)”、“VA中文(BIG5)”、“VA完全中文”、“非保留区”、“非控制符”“非限制查找”方式得到的对照文件,需要用户自行删除非法项,否则在替换时将会出现错误。
“快捷键转换”方式的“文本替换”对应“英转中”时的快捷键设置,将“&File”转换成“File(&F)”。
“能否完成替换”方式的分割合并功能使用两种新的扩展名:“.ok”和“.not”,分别对应可以完成替换的字串和将会被截断的字串。请保持这两个文件的原始排列顺序,只有这样才能顺利完成合并。
1.06 版重新编译以支持在 windows xp sp3 上运行。修改 PosConv 的热键代码。用 TextExchange 替换 TextCodeView