两个小程序( j- S8 `+ U' U% S, Z- F
首先用scansub.exe对TEXTS_EN.DB来扫描。
$ k( _$ T- V B8 q. k- h( t6 o V4 M- w把可能是英文的文本都扫描到一个文件TEXTS.TXT里面。
: J k( [- Y1 C每行的格式如下,偏移量,字节数,字幕文本! T P5 l: t+ i2 _- N
每行之间空2行。 H* B4 J% d" K5 k9 r8 b
! q9 T* ^0 E! E翻译以后,就变为1行英文,1行中文,1行空行。" a( d. ]/ D$ {, M4 X: j
/ c8 E; R+ m- @4 q
再用一个trans.exe把那行中文回写回去,并自动补上空格,保持字节数相等。 # a7 ]5 S3 z) @
$ O9 q; x& X& N, ?4 B几个注意事项:
9 M( ]9 V. s+ N" E1、TXTS.txt里每行英文前面有几个乱码字符,其实就是偏移量、字节数的ASCII码用UTF-16显示时产生的问题,无伤大雅。
4 E1 }: f. L9 K) r, i# D# ]! T0 I( {2 O5 U" ^& y5 L& i
2、翻译时在英文下一行进行,千万注意译文中不要加回车符,因为我是用回车来判断输入结束的。
2 U4 ^- ], F* S2 u9 O j2 Z
/ N7 q4 W7 M3 s6 v1 _3、最后回写时不在原TEXTS_EN.DB,而是生成一个新文件,TEXTS_CH.DB,现将原文件的数据都复制到新文件里,再进行修改。防止对原文件数据造成破坏。当然放到游戏里的时候还是要把CH改成EN的。 |