本帖最后由 笨蛋狐狸 于 2011-3-25 10:00 编辑 5 H' L3 b3 L0 R* K$ u+ |% y
; ^4 s9 Y3 ~) B0 F8 Z# h
感谢007找到了这个工具,答应写一篇教程还是要说话算话:)这个工具非常简单易用,而且功能还真是强大,实乃居家汉化之必备武器。下面简单介绍一下使用方法,不当之处请大家指出。2 B& k8 m' z: K
, X9 I& k0 t8 Z先放一份工具:
2 l# f7 R$ a8 z H' N+ Z- S! I! b, V/ \' @% ]# ~
一、识别游戏字库是否KanjiFont
; J+ W8 W D! C8 p
4 R! G3 S- H( b3 I, L 俗话说再好的东西也要用对地方,我们如何识别一个游戏的字库是否能够用这个工具生成呢?就是看原游戏字库索引的格式。KanjiFontBuilder支持生成如下两种格式的索引:% Z3 R9 b% |6 z. ]# L
1 T3 h2 M: J# h( E; ]$ l1、xml格式
, P1 o2 i# \& u' u" I8 O1 F 顾名思义,字库索引文件形如*.xml,打开后格式如下- <!--Sexy-Kanji Font AutoGenerated by Kanji Font Builder (JPoag)-->
4 t/ q) o0 {9 k$ k& ? - <KanjiFont name="Arial" style="Regular" size="24" kerning="0" ascent="21" descent="5" height="28" line_spacing="27">8 W( J: U5 _: Q- I# P+ \
- <ImagePlanes count="1">
6 B5 l* P# t. U' D5 h - <Plane id="0" path="Arial24_page0.png" />
: a, S) E! |+ P2 O/ v# C - </ImagePlanes>7 {- Y8 x5 v/ d6 o2 g
- <FontTable>5 S% ~2 y. |& }
- <Char code=" " graphic_id="0" sx1="2" sy1="2" sx2="9.992188" sy2="30" advance="7" x_offset="0" y_offset="0" />2 ^/ S+ B& `4 @& O% j0 {! z
- <Char code="!" graphic_id="0" sx1="11.99219" sy1="2" sx2="18.66016" sy2="30" advance="2" x_offset="0" 8 f. C, b+ R) i1 o/ V2 r
- ...
' J' z* n- J- H1 }3 L% [
复制代码 注意第一行中出现的“Sexy-Kanji Font AutoGenerated by Kanji Font Builder ”是辨识重点;
1 ?4 P) w" s# N- }+ g, g$ _. u2 Z( o" q9 l0 K7 D* j2 C' \
2、kfnt格式
# f+ B/ i6 p4 B a 字库索引文件形如*.kfnt,格式如下:- %ktext 1 3 122
9 Y% N; D! a0 t% ]/ d - 10 2 2 2 85 0 83 0 0 0
9 c* a( l; S' o+ ?9 ~ - 13 4 2 4 85 0 83 0 0 0
: s0 V6 a% Y( ` - 32 6 2 29 85 20 83 0 0 09 P8 U' E c5 \( G L0 p
- 33 31 2 51 85 6 83 0 0 0
复制代码 首行的%kext字样是辨识重点。其他数值从左至右分别代表code,sx1,sy1,sx2,...(参数意义待完善)
6 \, z: n. z9 \7 d4 d1 \$ n(写到这里,阿7师父,你梦寐以求的“中间格式”,可以用这个来生成?)- ?4 ?1 @! l3 K
9 G2 Q3 d6 M5 j5 |, J+ \二、工具的使用, _! I; [5 N3 ?
$ H4 b1 J. g% u) p! |( b
以下按照生成一个中文字库的大致流程简单介绍一下该工具的使用:
8 f; f* U m/ D8 P6 H0 s$ F6 k7 S# S7 w) ^
1、文本导入
( s- m1 i+ s) r7 m2 W! o
+ q# r4 \$ k( v6 @2 V) I+ i! `9 `% U' r% r4 s
如图,在character标签页面选择“Import from file”,在弹出窗口中选择要导入的文本就行了,我试验了txt和xml两种格式可直接导入,word导入是乱码(其它的没试,标准文本格式应该都是可以的)。软件会对文本实现自动去重排序,非重复有序文本显示在左边的窗口,可以继续编辑增删字符;(特别强调一下,对文本去重排序这个功能非常实用,不知道大家有没有用过tt?那个只支持ANSI格式的文本,这个完全实现了tt的功能,支持的格式还很多。)
: y$ U! ~% x2 W* k! f4 H# ~+ v+ p+ ?
# k" j1 {: `! q- Q0 C, ?% D* r) {: y+ W1 f7 b* q) R
软件也同时提供了常用的缺省字符集,单击“CharMap”按钮即可选择;, q# _1 ~" _* \# [: d
+ J& K7 m% Y% M9 N9 S
) l9 w6 o6 g ]+ Q$ j2、字体设置
( {2 M( w0 x; n- e8 D( \: K9 D1 M+ ]
9 L; C. a' Z5 i* E( f% I2 v6 j如图,对字体的定义均在Font标签页,第一排是字体、字形(加粗、倾斜)和大小,一看就明白;Option里面可设置字体颜色、背景颜色(缺省透明),Text Hinting里面是一些抗锯齿等参数,一般不用改,Texture Size里面设置字库图片大小,只有512、256和128共选择(KanjiBuilder生成的图片都是正方形);layout里面的spacing、Kerning和Padding都是字距的设置,具体效果自己试试就知道了。8 |& H, X+ N1 N
1 H% f8 O9 ~$ o0 N) f& \
; S7 ]( T% l- J! ^" Q0 z6 e, R* j( G: \' j1 w6 n" M
每做一个修改右边的窗口都可以实时看到效果,非常方便,一个字库索引最多支持8张图片,就是Page1-8,但是一般来说够用了,1000多个24大小的字最多也就是4张图的样子。
4 N2 B! N x3 z, @* q5 |. l7 O7 m
3、输出设置
- b1 K; l7 z8 ~" e, d7 z7 M9 F- g" q* f9 `8 A( Q) ` u7 \; G
如图,输出设置均在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),还有文件名,全部设置为跟原游戏一样就行。0 g+ w% G3 D8 s4 z
下面Loading Code可以看代码。
$ X3 n$ a+ F! g6 Z) Q
2 M; K$ ?8 B! ^5 y( T# [- x; a3 ?& j$ o1 M! a# P) a& F
最后,点击“Build Font”按钮就可以完成字库的生成了。
/ {- s$ ^3 y* |+ @3 T7 i, A |