在图片字库上添加完中文字符以后,我们就要在文件的末尾添加图片字库定义分析 。 ; \% d; o3 |& @, N6 U! {; m" H! j
由于添加的中文字符较多,所以需要增加一个新的节。 " @/ F7 s1 D- O1 V1 O
/ m( w ^/ m, s* d2 B2 b' A
zhang336970 的原话是这样的 1 `) P) ]! v7 w$ }8 Z$ n. G9 C
编码表在执行文件中。在原来的节中没有多余位置,只好添加了一个新节,把新编码表放在这个新节中,并修改了相应的偏移地址。
( l6 n& O8 j# n" U# l& V: x+ c( V
+ \( W* d, Z; }/ c对执行文件添加新节的方法,大家可以到看雪学院去学习一下,在网上google一下也可以找到不少资料。
/ G# ~0 C% \- y! U* U* H; L3 R& F; m! ?2 v: Y, q
以下是修改前文件末尾的样子,大家可以看到文件到00867FFE这个虚拟地址就结束了。
- b# |, X# ]0 ]" ~* w
, F9 f" v* G3 ~以下是修改后文件末尾的样子,在00867FFE后面加了一个新的节。 2 q7 E1 t2 r! E+ W0 M
* x5 l% P' O% P9 j+ {9 h其中每个中文字符用20个字节来定义。 ! }- X& ]$ k4 ^7 N
例如: 对“%”(25H)这个字符的解释就用了20字节的空间。其中25 00 00 00 是编码,紧随后面的16字节是%字符在图片1中的坐标。也就是说要显示%,就要取图片上从起点(22H,0H)到终点(33H,14H)(像素点)的矩形区域送去显示。6 ~* W% P/ S& m0 a5 K! w
, \3 T# ]5 w1 t/ _以下问题请zhang336970朋友指教,谢谢!; U$ t# h; \' o- q
8 \& Y1 a3 ]' z3 E) f+ w. r
问题1
$ R0 j: `" [& C3 W" |+ e2 o原来的游戏应该有英文字符和符号等的定义。这些定义在哪,如何寻找呢?3 l ^& Q; ~. b7 x! E, Q6 F
问题2 Z# G \: L! S7 f/ F
游戏读取这些定义的地方在哪,如何寻找呢?
: C$ y5 u! p) g5 }) f6 ^9 W5 e" R请谈谈通用的思路。 |