本帖最后由 笨蛋狐狸 于 2011-3-25 10:00 编辑
8 N5 ?, \/ ^) q" _5 u1 c
{: V% N6 ?: j3 s 感谢007找到了这个工具,答应写一篇教程还是要说话算话:)这个工具非常简单易用,而且功能还真是强大,实乃居家汉化之必备武器。下面简单介绍一下使用方法,不当之处请大家指出。
# I- [4 E0 n/ B8 {3 z j& K
5 o/ ?: T4 P8 T$ U先放一份工具:; f! F+ n3 z8 s. z5 ^: S
$ A: ~% W) b7 u; R9 s
一、识别游戏字库是否KanjiFont( [. [% U$ E. c% c4 {. p* J
4 c/ o `5 x6 A; Z 俗话说再好的东西也要用对地方,我们如何识别一个游戏的字库是否能够用这个工具生成呢?就是看原游戏字库索引的格式。KanjiFontBuilder支持生成如下两种格式的索引:, I* C( l; a Z$ k7 O8 |6 Q
' b7 D7 C/ z1 K- H% }! J4 R
1、xml格式- g% P+ d8 f+ C1 i2 a, L1 r
顾名思义,字库索引文件形如*.xml,打开后格式如下- <!--Sexy-Kanji Font AutoGenerated by Kanji Font Builder (JPoag)-->6 Z+ T' ~0 j; k
- <KanjiFont name="Arial" style="Regular" size="24" kerning="0" ascent="21" descent="5" height="28" line_spacing="27">3 Z9 X9 S8 L/ P2 K8 {7 l+ I: Z
- <ImagePlanes count="1">
0 e* y. `/ k( g5 c1 T: A - <Plane id="0" path="Arial24_page0.png" />/ i6 A6 p8 d# w' l* `3 H
- </ImagePlanes>
& P N$ v! |, L) n8 Z( _* b. K - <FontTable>
0 H2 p# ]% q6 K - <Char code=" " graphic_id="0" sx1="2" sy1="2" sx2="9.992188" sy2="30" advance="7" x_offset="0" y_offset="0" />; g. b4 P) g7 h: H+ \( e; I6 e4 J
- <Char code="!" graphic_id="0" sx1="11.99219" sy1="2" sx2="18.66016" sy2="30" advance="2" x_offset="0"
5 f/ |' J0 e& W: D+ w - ...
/ r& f! p. s8 P. }( n& r6 q
复制代码 注意第一行中出现的“Sexy-Kanji Font AutoGenerated by Kanji Font Builder ”是辨识重点;
* W' Y, L; P0 h/ `1 Q0 P* v: g- k
2、kfnt格式
( K Q/ x: B) o: @ d: N5 d 字库索引文件形如*.kfnt,格式如下:- %ktext 1 3 1228 @5 N! F, S) r
- 10 2 2 2 85 0 83 0 0 0- P: k- {6 _& g; Z( k
- 13 4 2 4 85 0 83 0 0 0
6 k. A' Z. E9 R' Q - 32 6 2 29 85 20 83 0 0 0
' Q- F# M& Y$ s% j% E" y - 33 31 2 51 85 6 83 0 0 0
复制代码 首行的%kext字样是辨识重点。其他数值从左至右分别代表code,sx1,sy1,sx2,...(参数意义待完善)
0 L1 l& w+ j% l! }2 y# _" K- F) v(写到这里,阿7师父,你梦寐以求的“中间格式”,可以用这个来生成?) _* ^$ P8 K. e2 g8 P
# v4 I! `, M+ [. U5 t二、工具的使用
7 y2 @* ]; e; i: Q! S9 O
9 c& A/ j( x; } 以下按照生成一个中文字库的大致流程简单介绍一下该工具的使用:* ]# H" G' w* t; h* `- D7 k" R
& Q" U; C5 C; ?" Q9 o s1、文本导入6 q, e4 ]9 s; B* R$ G
+ u/ B/ @4 ^$ S* K+ X- J; [' H7 O) b/ p
如图,在character标签页面选择“Import from file”,在弹出窗口中选择要导入的文本就行了,我试验了txt和xml两种格式可直接导入,word导入是乱码(其它的没试,标准文本格式应该都是可以的)。软件会对文本实现自动去重排序,非重复有序文本显示在左边的窗口,可以继续编辑增删字符;(特别强调一下,对文本去重排序这个功能非常实用,不知道大家有没有用过tt?那个只支持ANSI格式的文本,这个完全实现了tt的功能,支持的格式还很多。)& E9 y1 U M3 l
2 u/ p+ \' s# }# v
8 G! ]' U- o- \$ Y/ L3 O% p H9 l软件也同时提供了常用的缺省字符集,单击“CharMap”按钮即可选择;
6 O& m# C. {0 b D- U) S5 W+ r" h: b! v8 G
# r f4 C, j0 a, A2、字体设置9 `2 R7 B. N: V+ D
3 G! G6 P9 O" ?1 g/ S& w0 y' M4 `如图,对字体的定义均在Font标签页,第一排是字体、字形(加粗、倾斜)和大小,一看就明白;Option里面可设置字体颜色、背景颜色(缺省透明),Text Hinting里面是一些抗锯齿等参数,一般不用改,Texture Size里面设置字库图片大小,只有512、256和128共选择(KanjiBuilder生成的图片都是正方形);layout里面的spacing、Kerning和Padding都是字距的设置,具体效果自己试试就知道了。
+ F/ {$ O$ w4 Y7 D; m v0 u: e
% H; a0 J- r+ f7 j& K) K5 l& n% `$ E# |% J! X7 b+ K {4 z6 [# ?
8 K6 F1 Y* ]. L3 S" f3 m& B每做一个修改右边的窗口都可以实时看到效果,非常方便,一个字库索引最多支持8张图片,就是Page1-8,但是一般来说够用了,1000多个24大小的字最多也就是4张图的样子。
; @) m/ j. L. M. {
1 P3 Q/ z% |2 G2 b% T+ k3 W3、输出设置
, B+ q9 I) o0 @
$ b# D2 k# J8 S/ q2 w0 K" H0 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),还有文件名,全部设置为跟原游戏一样就行。% X; I; a2 _: t
下面Loading Code可以看代码。
/ `4 T9 M! G* f Q$ P2 o* B3 @2 _! k9 x% n) _
8 R' V7 t! m) s) D! c- h- b7 B
最后,点击“Build Font”按钮就可以完成字库的生成了。+ O6 |6 @1 N! a, n/ v& n8 T' n
|