以下工具是从游侠论坛找到的,也许能派上用处。
. K7 A/ n! S4 R# ~9 h; ^2 H7 ^0 d; S) e2 g
功能:可调整行距,间距,和图片每行字符数。 + r! y+ J- y6 [% Z. A) Q
可调整字符高度,宽度和字重。 + s, o" C/ J9 V* c, a8 x$ _
可调整字符输出品质。 1 \9 P; b* ^; q" z* K- R6 f
( e$ K, B" J$ A$ @7 v+ T. f- ?& H
生成的文件:
. [- h3 d$ j) I) d: U6 K/ ]font.bmp 字库文件,需用ps打开设置alpha通道。
# S2 Z$ p1 T3 w0 _3 c# Zfont.bin 字库信息文件结构如下: 3 s$ |9 M8 {# R( I# p' c M
9 r- m/ B5 ]* {$ D
//文件头信息
) U1 q( u8 r9 Etypedef struct tagBINHEADER
) x5 c1 @/ j" r. c3 y, R' h+ _; s{ ) D& k8 m6 u$ c: k* W1 v8 X+ }
DWORD dBmpHeight; //图像高 9 r* o4 L1 d" {9 c
DWORD dBmpWidth; //图像宽 ) W8 T7 X' M! f
DWORD dChNum; //字符数 : ?. K% G3 l' ~# P2 P
DWORD dJJ; //字间距 $ J& W! `( z) h+ Q$ o
DWORD dHJ; //行间距
( \7 s0 u8 W3 Y& A) }) n8 V DWORD chWidth; //字宽 ) y/ b( B2 f" }$ B+ R( x+ Q
DWORD chHeight; //字高 ! D3 T( m/ M) C$ ?
0 G# T0 R) K: j% N# g. I t7 F
}BINHEADER,*PBINHEADER;
( r# P8 O7 E; e2 _6 ]6 Y0 x; A2 o* g0 C) d) h5 B: C* l9 G5 i
//字符信息结构 ; l* B5 j! N" P9 H
typedef struct tagBININFO ' ^0 W& H8 C! Y6 {
{
$ d" r- N8 I# z1 _. K2 E DWORD chCODE; //字编码
8 U8 A0 u& H/ B, K& o* h DWORD chX; //x坐标
, d; ~7 P7 f4 d- ] DWORD chY; //y坐标
E# y, X4 G+ y}BININFO,*PBININFO;
. f! Q7 H8 X4 n' l& E7 ^( [) ^
8 g( r1 n+ d. D' J2 v. l: T) Z" e1.默认生成Gb2312全编码字 + ASCII共7519字符。
* S- f. ~! d: J$ {3 Z2.可只生成指定文本文件中的字符,减小字库尺寸。 7 ]0 {6 j0 s& I1 W
2 E% y2 k1 N) l
( z& S) X$ x# d. ]8 `1 r4 e1 n# \% s0 g-------------------------------------------------------------------------- 3 V2 U& n: F: X
用于生成图形字库。虽然现在很多游戏都能用系统字体了,但使用位图当字体的游戏还很多。
0 @8 ^" j- u8 q+ L' N3 I我这个软件虽然功能不算多,但通用性比较强。 : n) g9 \/ S, R3 E" h6 ?7 V4 M
用法很简单,设置程序里的字表文件(本人提供了一个GB2312&EN.txt)。然后设置好字体、质量等等参数,点“生成并保存”。会生成和字表名称相同的两个文件,一个是包含字体的位图bmp文件,另一个是包含字符具体信息的bin文件。bin文件的结构说明也在附件里,他用来配合你写的程序生成适合具体游戏的字库。
/ V0 t1 w8 `7 d6 M5 o另外,字表是生成字库时所包含文字的unicode代码,编写形式参考我提供的文件。 5 e( b4 [, z) n
0 M8 _& V! Y, O4 M5 l更新:
4 V% e, B9 D; g4 Q增加对非代码字表的支持,即纯文本字表(支持读取系统编码或unicode编码的格式)。
$ r ^5 k& Z) i% T: M9 H增加简繁转换功能,可以用相同字表生成简繁两种字库,前提是你设置的字体是支持大字符集的(bin文件中的字符信息不会转换,所以能用统一编码显示简繁字体)。 & X' J9 W! n* u' o V; z/ u5 ]( Z
很小的代码改进。
1 M/ ^3 J' J! r5 `( G5 F1 ] A" M) Z, H5 B$ u
----------------------------------------------------------------------------- 3 b( T& w: J1 e t! W
2010.2.10 更新
: z& s) e9 d' U" d! J" a$ x我先试用了一下zkscq这个工具,感觉不错,下面放上几张抓图。 $ y+ n. b2 p6 [: X, E5 ]
3 x3 |: ~' v. n* i9 @* P( E
软件界面 ( {8 `1 W' s' z! Q+ X
3 _7 u* Q, W. _; j8 d9 w6 l3 ^9 T
字体质量ClearType 磅值400 宋体 5 G1 U( K7 ~5 x1 ?3 z7 |3 V7 U2 _
6 m2 R% o' K( k3 u' w k5 l( x
字体质量ClearType 磅值700 宋体 3 n( A; d* l" U+ j
7 [: g# f% R" g9 ]& q( j j' L3 i. E
' d6 b8 t8 \1 Y7 ^& P+ t----------------------------------------------------------------------------- 3 ~ Y2 G/ w9 J7 x! l
又试用了一下font这个工具,下面放上几张抓图。 / z! J! s1 A+ l0 O2 Q! ^1 S- U
4 H5 K6 M4 E: a0 b& u软件界面
$ y/ r' C! o) E8 z/ ` |