本帖最后由 笨蛋狐狸 于 2011-3-25 10:00 编辑
$ ^3 |# C1 E2 U
" O2 }5 ~6 o4 E+ `% L 感谢007找到了这个工具,答应写一篇教程还是要说话算话:)这个工具非常简单易用,而且功能还真是强大,实乃居家汉化之必备武器。下面简单介绍一下使用方法,不当之处请大家指出。
& |( |8 p* x: d: `2 c/ ~! q6 T0 v6 ?8 V$ }8 T" ~6 U; q
先放一份工具:
7 a2 l% _! h! }6 K( n( o9 w% f7 l" S/ {' }7 H2 [
一、识别游戏字库是否KanjiFont
5 _& q4 [1 ~+ d0 |3 y1 n
1 v) e$ v( ^' M4 a: a" \5 ` 俗话说再好的东西也要用对地方,我们如何识别一个游戏的字库是否能够用这个工具生成呢?就是看原游戏字库索引的格式。KanjiFontBuilder支持生成如下两种格式的索引:9 h9 G# f: L4 \! d0 _! {
: F. J1 I' H7 |7 D( w
1、xml格式
5 t ]0 J' R, ^2 j) A! @9 g( ~ 顾名思义,字库索引文件形如*.xml,打开后格式如下- <!--Sexy-Kanji Font AutoGenerated by Kanji Font Builder (JPoag)-->
/ Y) ]6 v7 g8 Z9 t% g( U - <KanjiFont name="Arial" style="Regular" size="24" kerning="0" ascent="21" descent="5" height="28" line_spacing="27">
) L6 Z3 q, O; G9 n* \" E0 v! V) v - <ImagePlanes count="1">
+ e% P* K8 k9 ^. D8 j# Q% M" S - <Plane id="0" path="Arial24_page0.png" />1 {( y. |7 I0 L1 R% q. R
- </ImagePlanes>
% A. M# p7 V$ G) ? - <FontTable>6 V: u6 N4 `) I1 |9 q+ f
- <Char code=" " graphic_id="0" sx1="2" sy1="2" sx2="9.992188" sy2="30" advance="7" x_offset="0" y_offset="0" />
4 x( T3 F" |+ H* x; `% |( Y - <Char code="!" graphic_id="0" sx1="11.99219" sy1="2" sx2="18.66016" sy2="30" advance="2" x_offset="0"
) t% y- C- V: K( @& ?* P, t - ...6 _7 a+ z. p( L# i5 k
复制代码 注意第一行中出现的“Sexy-Kanji Font AutoGenerated by Kanji Font Builder ”是辨识重点;
( z2 b) e1 h: t& T5 ^1 }1 G0 E2 L$ r
# a2 `$ P7 x- n5 i+ v, l2、kfnt格式- ^$ e/ H5 H7 a k+ X
字库索引文件形如*.kfnt,格式如下:- %ktext 1 3 1228 S# F% P7 b b* I, k* q& l
- 10 2 2 2 85 0 83 0 0 0- l3 K: G0 n2 R9 G/ u) r
- 13 4 2 4 85 0 83 0 0 0
s9 s( R. }/ \/ E, | - 32 6 2 29 85 20 83 0 0 0; [# l; H( t: T. r4 y s
- 33 31 2 51 85 6 83 0 0 0
复制代码 首行的%kext字样是辨识重点。其他数值从左至右分别代表code,sx1,sy1,sx2,...(参数意义待完善)# j8 n& Z! g3 k5 M! L3 ~0 _! [
(写到这里,阿7师父,你梦寐以求的“中间格式”,可以用这个来生成?)
3 O* X3 o2 u+ a& J2 d: J* y6 g8 M- N$ g4 w
二、工具的使用5 b( H6 B- `/ T/ Z2 [
8 P. r6 s; O. @* C9 t3 s 以下按照生成一个中文字库的大致流程简单介绍一下该工具的使用:8 K9 I4 R# }0 e- G( I, h1 ~
! u% @# i- U( u* } o
1、文本导入2 o. n; n" `9 p& Y
9 h5 A$ @) C3 o2 x2 T$ e& @ _: C g( I) Q
如图,在character标签页面选择“Import from file”,在弹出窗口中选择要导入的文本就行了,我试验了txt和xml两种格式可直接导入,word导入是乱码(其它的没试,标准文本格式应该都是可以的)。软件会对文本实现自动去重排序,非重复有序文本显示在左边的窗口,可以继续编辑增删字符;(特别强调一下,对文本去重排序这个功能非常实用,不知道大家有没有用过tt?那个只支持ANSI格式的文本,这个完全实现了tt的功能,支持的格式还很多。)) ` J( x: R& J; u7 Q
_8 v8 S. {% f
& P! w, J4 `2 m% A软件也同时提供了常用的缺省字符集,单击“CharMap”按钮即可选择;) o- V0 p' ?$ E6 s
2 d$ c! |; D6 r/ y$ K, D4 g
' E+ g0 I1 J7 N1 }' ]1 ]1 b2、字体设置
& {+ |6 w' g6 U6 Q2 _8 x s; I
$ A8 G& O' D2 P; l& @如图,对字体的定义均在Font标签页,第一排是字体、字形(加粗、倾斜)和大小,一看就明白;Option里面可设置字体颜色、背景颜色(缺省透明),Text Hinting里面是一些抗锯齿等参数,一般不用改,Texture Size里面设置字库图片大小,只有512、256和128共选择(KanjiBuilder生成的图片都是正方形);layout里面的spacing、Kerning和Padding都是字距的设置,具体效果自己试试就知道了。
8 d C7 ?) U3 N+ o# M' m( M+ _$ l9 r9 R: c
5 S" n+ T- F4 P8 l# E% l+ m8 d# l) t. I7 n' ]1 T0 f7 I! m. }
每做一个修改右边的窗口都可以实时看到效果,非常方便,一个字库索引最多支持8张图片,就是Page1-8,但是一般来说够用了,1000多个24大小的字最多也就是4张图的样子。
2 U& H' F! l H7 A3 i+ y3 w
! p+ ~( f N! ]! x9 i& N# v3 D3、输出设置. J/ T3 _3 |0 a) T) M
0 L: `3 a' L; c. \. r7 s 如图,输出设置均在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),还有文件名,全部设置为跟原游戏一样就行。
% O8 ^' l& Z5 t/ e5 W下面Loading Code可以看代码。0 k/ X$ T( M3 V& ^ Q5 S
" y2 K6 {, I/ Q! g. j; F
b& ]$ \9 s2 u# ]' A& s最后,点击“Build Font”按钮就可以完成字库的生成了。8 K" j5 m/ L* y* ~4 c. M3 S3 [
|