本帖最后由 笨蛋狐狸 于 2011-3-25 10:00 编辑 " E, j4 {0 \# I2 C- F# t# j; [
8 n3 [6 S A, K8 K
感谢007找到了这个工具,答应写一篇教程还是要说话算话:)这个工具非常简单易用,而且功能还真是强大,实乃居家汉化之必备武器。下面简单介绍一下使用方法,不当之处请大家指出。
5 b% d. ]% \2 Q$ _, f; \/ e
( r _' f1 G& y Y, Z$ B: Z- C7 G先放一份工具:- Y! b! P; Q/ g
; r$ C" F$ |* A* \. m6 x一、识别游戏字库是否KanjiFont
# C. c0 A; E# i/ S+ \% \8 B& I3 e& Y7 I8 l3 q- t7 l" {
俗话说再好的东西也要用对地方,我们如何识别一个游戏的字库是否能够用这个工具生成呢?就是看原游戏字库索引的格式。KanjiFontBuilder支持生成如下两种格式的索引:! a* ^, W% f \8 ]
9 T, U8 w I1 l' T! |0 b! Z8 e
1、xml格式& a$ |5 Q* J; H& D( f- _' O6 z9 {4 @+ E
顾名思义,字库索引文件形如*.xml,打开后格式如下- <!--Sexy-Kanji Font AutoGenerated by Kanji Font Builder (JPoag)-->/ |8 s. p0 [5 K; g0 L+ y8 Q. s& F
- <KanjiFont name="Arial" style="Regular" size="24" kerning="0" ascent="21" descent="5" height="28" line_spacing="27">: k' M X% y) E7 o$ ]" x& D
- <ImagePlanes count="1">
2 K( |4 f, |! Z* \ | - <Plane id="0" path="Arial24_page0.png" />
( ]8 s5 ]8 o8 ^ - </ImagePlanes>
3 s% u s) L/ a$ _ - <FontTable>7 k) l& W. ]: i0 v! l1 t
- <Char code=" " graphic_id="0" sx1="2" sy1="2" sx2="9.992188" sy2="30" advance="7" x_offset="0" y_offset="0" />- M j1 Q2 O; a# o* ?" D
- <Char code="!" graphic_id="0" sx1="11.99219" sy1="2" sx2="18.66016" sy2="30" advance="2" x_offset="0" 4 Q" f6 g/ s1 k5 _) i/ q9 h. w
- ...3 I- i3 t5 R: H+ [
复制代码 注意第一行中出现的“Sexy-Kanji Font AutoGenerated by Kanji Font Builder ”是辨识重点;* ~% `7 ]- O _& O
5 G+ I0 l5 D! w8 |! X0 O3 ~. s1 b) |
2、kfnt格式' v! {4 S J% D) h! u/ q. L' k
字库索引文件形如*.kfnt,格式如下:- %ktext 1 3 122
1 `& |3 D, h6 C8 V: W1 E7 ~ - 10 2 2 2 85 0 83 0 0 0
7 t' n) Z* G" b7 p, N: | - 13 4 2 4 85 0 83 0 0 0
4 @2 D8 ~) `9 } - 32 6 2 29 85 20 83 0 0 0
: Q' r% Y9 @; J; q/ w - 33 31 2 51 85 6 83 0 0 0
复制代码 首行的%kext字样是辨识重点。其他数值从左至右分别代表code,sx1,sy1,sx2,...(参数意义待完善) W# ]. b D1 T8 {/ N/ s" f3 u6 e
(写到这里,阿7师父,你梦寐以求的“中间格式”,可以用这个来生成?)
8 w* q- o9 l. ?' u- U v( r- T4 l
$ M( o6 d4 y8 V% c0 C: u二、工具的使用' t' t, f) i* t. ^$ n, h
! i* s; h2 |. C, t- A, O 以下按照生成一个中文字库的大致流程简单介绍一下该工具的使用:
7 g3 ^: \$ O% i" Q# j: \
, g2 ?' p& t1 u; ]& h( C" @- K5 O2 M4 I1、文本导入: I+ v: {' r0 E$ w
' }! o- ~7 T" A# `7 k5 n& Y7 C
. s8 U3 P [2 g0 F" i# Q 如图,在character标签页面选择“Import from file”,在弹出窗口中选择要导入的文本就行了,我试验了txt和xml两种格式可直接导入,word导入是乱码(其它的没试,标准文本格式应该都是可以的)。软件会对文本实现自动去重排序,非重复有序文本显示在左边的窗口,可以继续编辑增删字符;(特别强调一下,对文本去重排序这个功能非常实用,不知道大家有没有用过tt?那个只支持ANSI格式的文本,这个完全实现了tt的功能,支持的格式还很多。)! x' `' m( N0 R7 h) Z& ^
1 E: I8 S0 W6 `$ r( z3 F3 Z# v: k
7 S. L% z/ a& _
软件也同时提供了常用的缺省字符集,单击“CharMap”按钮即可选择;) K( ?7 L& p3 g5 a) v" e
/ r" c9 `. p4 T! G/ K$ V
0 ^/ }8 x0 s9 `2、字体设置- W- j0 a' ~# P; f x' c
2 ?1 `/ y* D: t- h. M) j: m& }
如图,对字体的定义均在Font标签页,第一排是字体、字形(加粗、倾斜)和大小,一看就明白;Option里面可设置字体颜色、背景颜色(缺省透明),Text Hinting里面是一些抗锯齿等参数,一般不用改,Texture Size里面设置字库图片大小,只有512、256和128共选择(KanjiBuilder生成的图片都是正方形);layout里面的spacing、Kerning和Padding都是字距的设置,具体效果自己试试就知道了。$ g9 e% A; n7 Q* \8 f
% v* ~1 Q4 K; Z' k( Q7 z/ v
% @7 F8 l6 Z% ]5 B4 i. i
: s; b X& |! j每做一个修改右边的窗口都可以实时看到效果,非常方便,一个字库索引最多支持8张图片,就是Page1-8,但是一般来说够用了,1000多个24大小的字最多也就是4张图的样子。
; D8 m4 H* g: Z! i8 D/ D( o; T, r3 }/ h' h* r) f& {
3、输出设置
% L7 y; m6 C* j0 C& o7 d/ _& \* d% ?
如图,输出设置均在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),还有文件名,全部设置为跟原游戏一样就行。+ W* \) K z1 S8 l2 w
下面Loading Code可以看代码。
: y5 X7 ~, ^8 d' v8 {: b9 V1 R4 V- r9 m( B
8 K- n) f0 h2 j& J" d最后,点击“Build Font”按钮就可以完成字库的生成了。
& d9 P9 K/ \, W' v' J |