本帖最后由 zxh17175 于 2014-3-25 01:27 编辑 + O$ L9 Z# z4 P0 \: e
2 e0 G- E( P: Z0 m3 s E; X% s默默撸过,既然鱼总发帖了,我就不敢献丑了。6 j( X2 S! M! x% ^
说说改字库就好了,修改TTF fontforge非常强大,不过好像windows下面有点不太稳定2 I5 J# x( c7 K! }4 a L _
用fontforge打开字体之后有个脚本功能,
7 P) u, X h% l- `打开一个脚本文件,内容如下- Select(0u4e00)
; E7 v9 T L: E0 z8 Q - Copy()
2 x( ]1 W" c/ h; n) b* |1 n - Select(0u53b7)9 g* i, v; t; `! N
- Paste() c2 c' M+ a( G; W$ X* |
% K* h7 u# \; n; [! l# r0 C- Select(0u5200); K% f: [5 {+ `8 f7 ^6 M
- Copy()
/ W6 o3 I% q( x- } - Select(0u53b8)5 I* \9 ^- f+ K) |
- Paste()# n, H9 J4 N8 j/ Z, K
/ ~$ v* w/ k) z3 t5 o7 r; N7 Z- Generate($filename + "_2.ttf")
复制代码 0u4e00就是低位为00的Unicode编码,0u53b7随便找的ttf里面的偏僻字,并且游戏文本也没有出现过的字符
- _3 O3 O4 ~' I9 e7 X3 V, Z T" ^6 F$ u执行这段脚本之后0u53b7实际显示就是0u4e00的字形,我这里就示范了两个。- @+ Z- N* R; u% a) n/ K% I( z
然后生成一个字体文件名_2.ttf的文件8 S$ g! V1 c/ ^$ F6 U. J
批量处理TTF字库还算方便, S- Y; ?& z G! }2 D
如果系统已经存在游戏的TTF字库,游戏默认会优先调用系统字库。所以还需要把修改好的TTF文件的内部名称(也就是字符脚本调用的FACE)改得尽量复杂和唯一。) W. \# k0 s$ O
最后把游戏的文本替换成相应的字符就好。
* |- d3 H. w( C' d |