本帖最后由 笨蛋狐狸 于 2011-3-25 10:00 编辑
8 c5 G: {; T. Q% ?1 A! v" E/ L- Q8 Q8 v# ]+ o; H9 I
感谢007找到了这个工具,答应写一篇教程还是要说话算话:)这个工具非常简单易用,而且功能还真是强大,实乃居家汉化之必备武器。下面简单介绍一下使用方法,不当之处请大家指出。
8 Y- K1 q# a- d5 u3 L k1 @
) U. q+ f5 ~* v% m# H先放一份工具:
b9 X5 c6 E/ q; x- x. d7 K3 s) \. h1 E( G" ]9 O. U: R) b
一、识别游戏字库是否KanjiFont
! h9 Y9 {" S) H0 n2 f5 f
# d8 w3 `1 _# c" f1 B 俗话说再好的东西也要用对地方,我们如何识别一个游戏的字库是否能够用这个工具生成呢?就是看原游戏字库索引的格式。KanjiFontBuilder支持生成如下两种格式的索引:& L- P* y4 M7 b6 y# o" Y
; T$ [1 m. V8 L# |
1、xml格式5 k5 m$ u u' e' ?, m- g- \* A
顾名思义,字库索引文件形如*.xml,打开后格式如下- <!--Sexy-Kanji Font AutoGenerated by Kanji Font Builder (JPoag)-->8 K$ _+ u$ r4 g' S# u
- <KanjiFont name="Arial" style="Regular" size="24" kerning="0" ascent="21" descent="5" height="28" line_spacing="27">% A3 i$ G# V' _+ R; J7 n* K
- <ImagePlanes count="1">
* D+ x* G; J; N% j, j$ ^" W! l - <Plane id="0" path="Arial24_page0.png" />2 g* p' N2 C4 b# l1 ~4 r
- </ImagePlanes># D2 R2 I0 x! t) x8 u& n* P
- <FontTable>
8 F9 _% A+ J; C - <Char code=" " graphic_id="0" sx1="2" sy1="2" sx2="9.992188" sy2="30" advance="7" x_offset="0" y_offset="0" />0 u- t2 g( B) q% f' q3 \
- <Char code="!" graphic_id="0" sx1="11.99219" sy1="2" sx2="18.66016" sy2="30" advance="2" x_offset="0"
: u3 q9 ~( }" m; O7 |* I0 V5 i - ...+ {1 x4 ]' o8 U+ g7 o
复制代码 注意第一行中出现的“Sexy-Kanji Font AutoGenerated by Kanji Font Builder ”是辨识重点;
' _# \; z, M+ T
- _; B- m' i5 F8 r1 Q( _' A9 o2、kfnt格式7 }; J- I d8 S4 f1 A
字库索引文件形如*.kfnt,格式如下:- %ktext 1 3 122
7 R5 x. b3 P/ V% V5 } - 10 2 2 2 85 0 83 0 0 0
( @. z, e5 S5 Q5 a* l6 s - 13 4 2 4 85 0 83 0 0 0+ f, ~9 j, F# m/ `0 v/ U5 X
- 32 6 2 29 85 20 83 0 0 0. Z3 w( b8 V, }% W' \6 z% S ^) X
- 33 31 2 51 85 6 83 0 0 0
复制代码 首行的%kext字样是辨识重点。其他数值从左至右分别代表code,sx1,sy1,sx2,...(参数意义待完善)! E' N) c0 O+ \, x' l; L
(写到这里,阿7师父,你梦寐以求的“中间格式”,可以用这个来生成?)
& \* N; s) h+ R% Q8 E: `% [
0 ] t q/ D; E$ n! C( A二、工具的使用
c3 x- z2 A0 M/ M
6 }3 Y$ I# Y; ~/ {# h8 P Y 以下按照生成一个中文字库的大致流程简单介绍一下该工具的使用:0 Z, {: Z' ~& c6 j0 T @/ z
& X4 Z: a0 S. h) @: l4 x8 n+ O; V1、文本导入
4 u9 y1 ], D8 `& [* k' Q( ?# p- S& m5 N) \8 J) i, J$ \0 V6 }
, l1 g# w/ i8 K# |* h
如图,在character标签页面选择“Import from file”,在弹出窗口中选择要导入的文本就行了,我试验了txt和xml两种格式可直接导入,word导入是乱码(其它的没试,标准文本格式应该都是可以的)。软件会对文本实现自动去重排序,非重复有序文本显示在左边的窗口,可以继续编辑增删字符;(特别强调一下,对文本去重排序这个功能非常实用,不知道大家有没有用过tt?那个只支持ANSI格式的文本,这个完全实现了tt的功能,支持的格式还很多。)
" G1 l; |( w+ G; B, U) |. c! r8 y) e- [+ ]
7 L5 e4 k* F% j$ g f$ t' q0 ^
软件也同时提供了常用的缺省字符集,单击“CharMap”按钮即可选择;* {! K% d9 d0 X8 M6 h7 H: g
2 x; G4 N7 `' O( D3 i+ q9 k- Z9 b8 R: p! P9 J/ v# j+ Q
2、字体设置
$ p- t9 s5 l: U7 z+ r! R1 Z+ N& l/ R
如图,对字体的定义均在Font标签页,第一排是字体、字形(加粗、倾斜)和大小,一看就明白;Option里面可设置字体颜色、背景颜色(缺省透明),Text Hinting里面是一些抗锯齿等参数,一般不用改,Texture Size里面设置字库图片大小,只有512、256和128共选择(KanjiBuilder生成的图片都是正方形);layout里面的spacing、Kerning和Padding都是字距的设置,具体效果自己试试就知道了。: _0 D l, P# e, r8 q% t
1 u3 C$ I+ a$ h" u; t4 ]
7 v8 M% n7 u+ @ \4 u6 d
" m( V9 z1 {( t每做一个修改右边的窗口都可以实时看到效果,非常方便,一个字库索引最多支持8张图片,就是Page1-8,但是一般来说够用了,1000多个24大小的字最多也就是4张图的样子。: |9 U% U* P5 F
/ b4 s7 F. j+ r# s, u4 z! o6 F
3、输出设置6 T0 o* w& L$ @ x- T. C( E
5 w8 N/ J& x. t. m, E2 F. S( L# w. O; T
如图,输出设置均在Output标签页。因为在Font页面对字体的任何修改(包括大小)都会使Output所有参数回到缺省,所以建议字形设置好后最后再设置输出。输出路径不说了,Image选中表示生成字库图片,Format格式、File Name(s)文件名均参照游戏原有字库图片修改,支持PNG、BMP、JPEG、TIFF和GIF格式输出;Descriptor选中表示生成字库描述,或者说定义,支持两种格式(xml和kfnt),5种编码(ANSI/utf-8/utf-16/utf-16_LE/utf-16_BE),还有文件名,全部设置为跟原游戏一样就行。
/ e1 _( }: Y9 i4 X8 S( S/ S' M下面Loading Code可以看代码。5 M6 a$ q0 O& s3 W7 K" [
0 I4 J) g6 g5 B2 p# w4 y8 g$ |& f" ^' Z+ ]& E8 N
最后,点击“Build Font”按钮就可以完成字库的生成了。
" J, F! V( H$ b |