以下工具是从游侠论坛找到的,也许能派上用处。 ' A- U( d3 }0 L1 a3 r$ {
I& J3 S) D2 q- E, W% e功能:可调整行距,间距,和图片每行字符数。 / K3 V8 f, o/ T/ Q& o# P
可调整字符高度,宽度和字重。
* T. C6 K- X" _8 J1 E 可调整字符输出品质。
% k" Y+ C% I9 @: F4 [' w2 J2 X" P! |1 ~1 |! I
生成的文件: ]& A$ S) ?9 c- ^2 I
font.bmp 字库文件,需用ps打开设置alpha通道。 : l! ]; L; {; F( m
font.bin 字库信息文件结构如下:
- Y7 d$ ^. N8 `3 g- O f6 \( k& W2 W8 O' G5 o$ \% P" Q
//文件头信息
; m8 R L. j& A% V, A Btypedef struct tagBINHEADER : Z5 a/ q% c2 q* N# g- ]; C
{
2 p+ \- h5 g8 ~2 d, u& l DWORD dBmpHeight; //图像高
4 D& W4 H' F# u/ r) C DWORD dBmpWidth; //图像宽
" X7 F" x) h: } DWORD dChNum; //字符数
- q3 L. x8 Y, j* B DWORD dJJ; //字间距
( O8 V' x- y' l; J4 f DWORD dHJ; //行间距 ) x. r8 X' |! t. B
DWORD chWidth; //字宽
: B3 V2 Y |8 C, X, V! L DWORD chHeight; //字高
3 y; t4 G3 n: q9 h4 I# W7 h' J
}BINHEADER,*PBINHEADER;
3 T l" s0 l9 i' Y* s& i7 C, W& r" @
" D( n7 }+ X2 Y6 |2 ~//字符信息结构
) `% X3 b) g5 G) g. [; _: Jtypedef struct tagBININFO 9 V3 V# [0 H8 v: s
{
8 b/ r2 z9 `' U t DWORD chCODE; //字编码 $ }7 K, g. Y8 M9 f( |/ R; B; I
DWORD chX; //x坐标 ' h% o2 k( c6 k7 @# e
DWORD chY; //y坐标 ! t; ]1 o6 V* k0 E. y5 P& _. X. o
}BININFO,*PBININFO;
; F& b* a' a( U6 i: ?! ]& G. O
2 z* v3 s8 p' z* O5 G1.默认生成Gb2312全编码字 + ASCII共7519字符。 # q- F+ j0 X. L6 P L3 _8 b
2.可只生成指定文本文件中的字符,减小字库尺寸。 2 P! M8 ~3 L x2 l: t& c" Y* n1 q
) `( B& Q- u% t# q- ]9 b9 I8 c1 x% a, j
-------------------------------------------------------------------------- 4 F+ [& L) B( P. M* }( z* d4 m/ e
用于生成图形字库。虽然现在很多游戏都能用系统字体了,但使用位图当字体的游戏还很多。 ( E2 j/ F- C/ p) H. [
我这个软件虽然功能不算多,但通用性比较强。
0 O1 k) L2 l- [/ Q$ O3 E, @0 @: i用法很简单,设置程序里的字表文件(本人提供了一个GB2312&EN.txt)。然后设置好字体、质量等等参数,点“生成并保存”。会生成和字表名称相同的两个文件,一个是包含字体的位图bmp文件,另一个是包含字符具体信息的bin文件。bin文件的结构说明也在附件里,他用来配合你写的程序生成适合具体游戏的字库。 7 j. g7 G: D8 l" I
另外,字表是生成字库时所包含文字的unicode代码,编写形式参考我提供的文件。
/ P: R: c# p. W6 L k9 r5 g- m
2 Z, D! t+ O$ K& U# ?$ ~& l, y更新:
$ J- W. h0 c( r5 s( A1 W" M1 ]增加对非代码字表的支持,即纯文本字表(支持读取系统编码或unicode编码的格式)。
+ ?/ s7 ~. x; h* B增加简繁转换功能,可以用相同字表生成简繁两种字库,前提是你设置的字体是支持大字符集的(bin文件中的字符信息不会转换,所以能用统一编码显示简繁字体)。
6 L6 W) d, [8 V0 J! i6 J, M+ O很小的代码改进。
" e J a6 c) G# @; ~7 k! ~ Q
( o) M' T' R" `( W) P+ r----------------------------------------------------------------------------- ( Z# S: r3 _+ l+ V) U+ T1 V
2010.2.10 更新 . {+ A# Q9 n* U1 A9 a7 ]) u3 j
我先试用了一下zkscq这个工具,感觉不错,下面放上几张抓图。
" a2 ~$ Z! L5 a3 y
# |4 [( X2 }+ d3 t/ ^软件界面 7 c) a) d7 D( w4 H4 j8 N2 e
& F T5 ^, |/ g字体质量ClearType 磅值400 宋体 " b3 C- [3 o: X' J. G* m" S! i4 g! n
/ ~/ x5 b( C5 S4 M0 y字体质量ClearType 磅值700 宋体 % _0 o7 W$ y% k9 Y! B( |' v
0 q8 q( m1 R$ N" V$ O% K% T7 [" `# h1 M1 D. d: X4 U% ~2 X
----------------------------------------------------------------------------- " H) `# b$ \! [2 f# e5 j/ b- y
又试用了一下font这个工具,下面放上几张抓图。 4 b6 I; D. z- S8 T: U
4 O- v. g0 w8 c% r8 J" O
软件界面
! E0 a9 a% q2 `* a) w0 r |