疾速天龙是一个可以用scummvm模拟器模拟的游戏. Z2 w5 t* ^) c8 \# N- H# w
但是在导入文本的时候,我们发现一些特定的文字无法被导入到文本中。
+ X# r- |' K% k, n- P2 t6 Y5 U$ f1 X2 c, q
我们采用修改字体文件中字形的方法,当我们需要输出文字A的时候,我们在文本中导入的是文字B,但是我们把文字B的样子修改为A。这样我们就能输出A了。
: f" a+ E; n! p
5 ^8 k7 F d' [" H) @字体文件在以下的帖子中,文件名是chinese_gb16x12.rar 7 S2 r# s* @) s+ g j/ P* }
https://www.chinaavg.com/read.php?tid=16790( Y, f% Y4 q( w' b% b
$ S* {' _ k+ }8 F' H2 ?
字体是16X12,所以每个字模占24个字节。# \, q7 H/ c3 t
GB索引代码如下; e5 x! K4 a! o, _
idx为GB232编码. z9 R/ W1 ]6 u4 l, k& ^, x1 v/ R
idx = ((idx % 256) - 0xa1)* 94 + ((idx / 256) - 0xa1);
9 P- `. D3 R. ~7 Z0 M) t$ `6 m/ @3 {, W1 Z4 B
另外有一个要转换的文字的文件, T: H/ }5 @$ l8 x% l3 f
每行2个字,就是把前一个字的字模样子转换为后一个字的字模样子的意思。
. c& \; ~1 f3 ^# x4 `# m有若干行,循环即可。 |