本帖最后由 笨蛋狐狸 于 2011-3-25 10:00 编辑
0 `6 M! i9 a7 ?: T; N3 c( t. a" I$ v8 s- | |1 n- p8 J
感谢007找到了这个工具,答应写一篇教程还是要说话算话:)这个工具非常简单易用,而且功能还真是强大,实乃居家汉化之必备武器。下面简单介绍一下使用方法,不当之处请大家指出。4 _, ^( y; D& {# h r* d
5 P" m! _1 r5 L1 ?
先放一份工具:
; ^8 D9 g5 ?: n3 r" g
6 E j8 } n/ q6 L! u! z! V一、识别游戏字库是否KanjiFont* R) Y, D- |) j
% P6 C; g' @' I, k
俗话说再好的东西也要用对地方,我们如何识别一个游戏的字库是否能够用这个工具生成呢?就是看原游戏字库索引的格式。KanjiFontBuilder支持生成如下两种格式的索引:
. s0 n) _; Y6 i$ Q- U% {6 b: \' I; a% ~% k1 Y% S/ C
1、xml格式; g# m: D" x6 R r2 c" m/ S; m( U# f
顾名思义,字库索引文件形如*.xml,打开后格式如下- <!--Sexy-Kanji Font AutoGenerated by Kanji Font Builder (JPoag)-->* |, A. p! N1 ^" Z5 R
- <KanjiFont name="Arial" style="Regular" size="24" kerning="0" ascent="21" descent="5" height="28" line_spacing="27">
* V1 Z2 a- O- c$ m# A$ d - <ImagePlanes count="1">
' d/ b5 j. S1 f: A, i, g; k - <Plane id="0" path="Arial24_page0.png" />
) r7 G8 O3 l% ?, }2 j, k - </ImagePlanes>% P; V3 F* f! j+ g; P- w4 b8 a
- <FontTable>
. p! x( X" N7 G - <Char code=" " graphic_id="0" sx1="2" sy1="2" sx2="9.992188" sy2="30" advance="7" x_offset="0" y_offset="0" />
8 E& V2 ]. [: R( q" I - <Char code="!" graphic_id="0" sx1="11.99219" sy1="2" sx2="18.66016" sy2="30" advance="2" x_offset="0"
5 S4 u5 P6 o' A4 p9 V0 P - ...
# |; q: b, U+ W5 ~4 D7 I3 C% ?
复制代码 注意第一行中出现的“Sexy-Kanji Font AutoGenerated by Kanji Font Builder ”是辨识重点;
! }+ j! M; s8 y! H; I3 B. \0 ?# t% G" {
2、kfnt格式2 ^1 Q) |3 _1 M! f5 J0 s# N
字库索引文件形如*.kfnt,格式如下:- %ktext 1 3 122+ Y3 v! W1 j C7 u2 E
- 10 2 2 2 85 0 83 0 0 0
% Z' y8 `9 y: N( t* p S, v9 } - 13 4 2 4 85 0 83 0 0 06 Q. J. q+ Y+ E3 b/ E* K
- 32 6 2 29 85 20 83 0 0 0
; D' v+ A; x& D8 W$ L - 33 31 2 51 85 6 83 0 0 0
复制代码 首行的%kext字样是辨识重点。其他数值从左至右分别代表code,sx1,sy1,sx2,...(参数意义待完善)$ Z& m/ G0 @8 T( Z" @2 D* L
(写到这里,阿7师父,你梦寐以求的“中间格式”,可以用这个来生成?)0 k# r3 U- {8 x# ]2 }
% b2 ]) h' R/ {8 i1 d. ^
二、工具的使用
- Y" U+ L5 ~ v0 } o
7 U% d: |+ {8 ^7 @- n 以下按照生成一个中文字库的大致流程简单介绍一下该工具的使用:
! x8 [( ?1 Z0 R& q' F# O' e# C9 T0 P$ ]( F: B; X* X
1、文本导入
$ M2 t# o4 E; `2 Z1 F4 b
- `4 y \/ n, R+ ~: j8 b& {" i! I9 W* @! Q4 k$ z$ M- J
如图,在character标签页面选择“Import from file”,在弹出窗口中选择要导入的文本就行了,我试验了txt和xml两种格式可直接导入,word导入是乱码(其它的没试,标准文本格式应该都是可以的)。软件会对文本实现自动去重排序,非重复有序文本显示在左边的窗口,可以继续编辑增删字符;(特别强调一下,对文本去重排序这个功能非常实用,不知道大家有没有用过tt?那个只支持ANSI格式的文本,这个完全实现了tt的功能,支持的格式还很多。)
9 ~: l" G5 p# p& @* m5 t2 D$ d( G2 r) z8 m6 A3 h
2 S* o& O. }7 M软件也同时提供了常用的缺省字符集,单击“CharMap”按钮即可选择;
, X; U! V) m3 Y6 s4 l) l) k6 Z, T' D O
! f8 I% Q1 e6 s5 F3 s9 _2、字体设置
/ {" t2 q7 U2 v- N( ?. q9 g, q# Z1 ]0 |3 n. S
如图,对字体的定义均在Font标签页,第一排是字体、字形(加粗、倾斜)和大小,一看就明白;Option里面可设置字体颜色、背景颜色(缺省透明),Text Hinting里面是一些抗锯齿等参数,一般不用改,Texture Size里面设置字库图片大小,只有512、256和128共选择(KanjiBuilder生成的图片都是正方形);layout里面的spacing、Kerning和Padding都是字距的设置,具体效果自己试试就知道了。
* ~9 K0 V0 ]4 U d- x1 |4 O ^1 H; @1 }# I! _8 d7 m4 t' v
e' L$ N# Y4 F! J+ O; v' t# V) k1 f- `
每做一个修改右边的窗口都可以实时看到效果,非常方便,一个字库索引最多支持8张图片,就是Page1-8,但是一般来说够用了,1000多个24大小的字最多也就是4张图的样子。1 [+ g2 R+ b, X) R3 g# ^
9 A; T/ D( c) v, W% b
3、输出设置+ N, a4 R& c" t2 g1 r) j% m
/ u4 x) ~6 f; H$ {' _ 如图,输出设置均在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 Y; ]0 e7 b6 `+ l7 k下面Loading Code可以看代码。" d. ~/ r; m" [1 G
7 l7 r! A) ?3 P4 K
. V2 F. H4 w8 V% z. P0 g
最后,点击“Build Font”按钮就可以完成字库的生成了。* L8 ~ W' n% V6 c3 X8 ^5 ~
|