以下工具是从游侠论坛找到的,也许能派上用处。
1 P2 t' H6 H7 M
* G5 M- r" {: O功能:可调整行距,间距,和图片每行字符数。 7 B: ]' r+ `* e( T, r
可调整字符高度,宽度和字重。
; h4 K/ ?, h4 m 可调整字符输出品质。 3 A# M% d; N( P1 q
6 b4 I) R% y2 e! w8 _) d+ @
生成的文件:
' D9 h5 h0 ^0 Z2 _% |) }! }font.bmp 字库文件,需用ps打开设置alpha通道。 / a$ }6 q: H) l. }
font.bin 字库信息文件结构如下:
. k2 V' Z. ~, E& M- g, \, H
/ k. Y) v* F2 ^4 R+ U( }//文件头信息 5 ` ^, {4 p* ]& V+ @0 V
typedef struct tagBINHEADER ) ^/ }( U6 G6 ]+ J: L. @/ h& N
{ & e" A/ v1 L( @) V; g2 v0 m! ]) Y
DWORD dBmpHeight; //图像高 . n) V* I/ s8 V; u6 g
DWORD dBmpWidth; //图像宽 5 h& U( d$ ]! `, v3 m4 I' @
DWORD dChNum; //字符数 ; f5 i9 G9 ], o5 r: d8 O" |
DWORD dJJ; //字间距
+ N% b2 r* x! h, o* l+ o DWORD dHJ; //行间距 7 d) }% o6 I4 M- M- e
DWORD chWidth; //字宽
3 J, A5 a3 U0 d8 K0 ?) y0 k' |3 ~% Y DWORD chHeight; //字高 ! N) s) X$ Y! E7 _( ?+ f
; c$ d' f3 [4 w+ F
}BINHEADER,*PBINHEADER; , _" l6 y; Q9 n5 T( {/ O
' j B- A l. n2 {# ~3 g//字符信息结构 - s; E% Q$ K' q7 _" o! r% O4 W
typedef struct tagBININFO / C. l" e, ^0 f5 `6 G
{ # v: e7 g" ]: L$ X: P9 t
DWORD chCODE; //字编码 2 s* j4 B* B; |& u3 O1 G' @
DWORD chX; //x坐标
( ~ {; E& L3 y' \$ G DWORD chY; //y坐标
4 l" J+ [! ?; M. `9 Q}BININFO,*PBININFO; 6 O+ u! H* v) W1 W
! n: a- w+ \8 b1.默认生成Gb2312全编码字 + ASCII共7519字符。
; G" \7 {- b' s# L+ N- P2.可只生成指定文本文件中的字符,减小字库尺寸。
3 X7 Y* c8 |' U. b
) ^. ~4 m6 x9 F5 W# O' g- V
. @$ c: g! f4 J: C-------------------------------------------------------------------------- ) j# c3 {& O& v2 k# N' G: C6 z2 M
用于生成图形字库。虽然现在很多游戏都能用系统字体了,但使用位图当字体的游戏还很多。 . [; L" _2 W. e' _$ Q$ E% n
我这个软件虽然功能不算多,但通用性比较强。
+ y+ M7 Y3 g) v" B7 {用法很简单,设置程序里的字表文件(本人提供了一个GB2312&EN.txt)。然后设置好字体、质量等等参数,点“生成并保存”。会生成和字表名称相同的两个文件,一个是包含字体的位图bmp文件,另一个是包含字符具体信息的bin文件。bin文件的结构说明也在附件里,他用来配合你写的程序生成适合具体游戏的字库。
( } S- v4 |, z6 {0 _另外,字表是生成字库时所包含文字的unicode代码,编写形式参考我提供的文件。 4 j" `2 ?' C K( h2 x* m$ J
. A! `" M* `& Y* K# x7 ~, W
更新:
- I) ]9 F& L( b8 n5 P# `& C增加对非代码字表的支持,即纯文本字表(支持读取系统编码或unicode编码的格式)。 ; c# {+ u7 _# }. E/ O; t# c9 n" P" F
增加简繁转换功能,可以用相同字表生成简繁两种字库,前提是你设置的字体是支持大字符集的(bin文件中的字符信息不会转换,所以能用统一编码显示简繁字体)。
2 N' y B3 n; L$ p4 f8 T4 W很小的代码改进。
2 I2 H7 n7 v @9 \" n8 J0 B& J+ M
1 @; a+ A# @% \% g0 `9 E-----------------------------------------------------------------------------
6 D. Z0 g, R C8 E9 l2010.2.10 更新
$ B" R" ?8 P' r n我先试用了一下zkscq这个工具,感觉不错,下面放上几张抓图。
7 k' @; n8 ^) q% c' ]! Y; G4 k V0 Q: }8 ?
软件界面
( j1 B y& A* ^6 D: M! ?$ o
: G$ X5 X5 u$ {7 L5 E字体质量ClearType 磅值400 宋体
- q. z( P# l* }) E9 T
/ \% `$ A5 ^% {" f# Y. M字体质量ClearType 磅值700 宋体
1 C. N1 s9 m; A6 M9 f3 k+ \6 C; `& p( q) y( B
/ t. s d+ ]2 A6 p/ s0 h-----------------------------------------------------------------------------
' d1 [& v, R; J2 f3 ~又试用了一下font这个工具,下面放上几张抓图。 ( Z3 t9 l% p; G x
/ G8 n& X C1 W$ r' _' a软件界面: ?; a6 c! k6 Z! C
|