以下工具是从游侠论坛找到的,也许能派上用处。 ( S3 |1 R. P5 @0 f; q/ v
$ x9 a# P0 v3 a# K, i功能:可调整行距,间距,和图片每行字符数。
/ e3 c3 [* e' l% m; s: E 可调整字符高度,宽度和字重。
8 q( Q* Y7 r1 _% d; y5 b/ w: ?7 X 可调整字符输出品质。
# g0 | A* W3 T/ d h( l# M! p2 \- I
7 D- f2 H+ R/ j' g" p生成的文件: 4 P2 r# k% p+ K/ W
font.bmp 字库文件,需用ps打开设置alpha通道。 1 Z" f6 X, d) k0 i) N: s
font.bin 字库信息文件结构如下: 8 A0 c' c+ a9 p) ?
" w( \: W9 ?9 `- `* A
//文件头信息 9 ]" @9 B5 y d% ~/ }) H2 S
typedef struct tagBINHEADER
! g" h Q C* }) ?" u9 i, z{ ) t; p p3 g1 L; E2 E! n4 v
DWORD dBmpHeight; //图像高 , _% I# p# J) Q
DWORD dBmpWidth; //图像宽 & B( D; e6 Q: P# N* [
DWORD dChNum; //字符数
1 E& s, b- N; @: h( q DWORD dJJ; //字间距 4 ~8 l0 `; g4 T' X
DWORD dHJ; //行间距
& _8 Z. d3 |1 d6 @ DWORD chWidth; //字宽
! k+ T K. M; i8 a! _ DWORD chHeight; //字高 2 [- B3 l* r* N3 L2 `/ ?! K
8 _! P" I9 A' @4 r/ J}BINHEADER,*PBINHEADER;
& V, R0 e7 ?% G1 a& l2 K. Y
8 j# `0 U/ b; Q- d% g//字符信息结构 5 c* q# L+ q3 I# h# r1 `. _
typedef struct tagBININFO
m$ t3 A* p9 R{
1 ^9 h! ^- I- k DWORD chCODE; //字编码
; E- x k9 O2 }7 G& A2 l( k DWORD chX; //x坐标
8 M( @" _% u/ e: q- q& F* G DWORD chY; //y坐标
3 ^' }, I- j% {% d}BININFO,*PBININFO;
4 a$ L4 Q; M8 h3 F) x& h [* k+ \, G; @# \: ]9 h# R/ q
1.默认生成Gb2312全编码字 + ASCII共7519字符。
5 i- l7 m) h. M& V2.可只生成指定文本文件中的字符,减小字库尺寸。 : [3 m( y' e: u5 _9 ]7 t# s, \
$ P" _' L3 w3 d7 t) w
$ k8 n; C& X6 m-------------------------------------------------------------------------- + b" x+ q: j+ E' ]
用于生成图形字库。虽然现在很多游戏都能用系统字体了,但使用位图当字体的游戏还很多。
. B- }* S0 X6 x C2 r5 ?我这个软件虽然功能不算多,但通用性比较强。 9 |8 k' `3 m, Z
用法很简单,设置程序里的字表文件(本人提供了一个GB2312&EN.txt)。然后设置好字体、质量等等参数,点“生成并保存”。会生成和字表名称相同的两个文件,一个是包含字体的位图bmp文件,另一个是包含字符具体信息的bin文件。bin文件的结构说明也在附件里,他用来配合你写的程序生成适合具体游戏的字库。 . F% b; L4 z$ G2 @" v* i
另外,字表是生成字库时所包含文字的unicode代码,编写形式参考我提供的文件。 ; ]6 O$ D4 ?0 G
7 K2 G' b/ U, t+ R0 B5 Z, L" i; V更新:
6 ]+ E/ o$ R" k增加对非代码字表的支持,即纯文本字表(支持读取系统编码或unicode编码的格式)。 6 L7 b/ O* m( f
增加简繁转换功能,可以用相同字表生成简繁两种字库,前提是你设置的字体是支持大字符集的(bin文件中的字符信息不会转换,所以能用统一编码显示简繁字体)。 p, t% B2 ~- J# k/ Z7 v2 U
很小的代码改进。 ) [# n1 g |1 B% \& G
& ~4 _% a+ G4 t7 r( F* L
-----------------------------------------------------------------------------
5 D# j- G5 g5 \# ] _& @2010.2.10 更新
( |5 _' q) n2 z- W' S; _2 w3 s! E我先试用了一下zkscq这个工具,感觉不错,下面放上几张抓图。 * b1 s- P" P* e( Q9 w
- j0 ]7 C9 Z. G1 ^/ f
软件界面 ' K; _) ?1 Y3 U, P* w2 m
# ^3 v% Q9 D: u0 c( S X; s
字体质量ClearType 磅值400 宋体
( N* r9 j" Q& X3 \1 c8 P
( U# t/ j. B" u p# y, b8 D字体质量ClearType 磅值700 宋体
9 z4 U5 j/ [# d" q$ V! q q4 l/ j( m/ |! o" E" J+ x, Q9 M
+ J; G; R$ p. M! t/ m- x9 r-----------------------------------------------------------------------------
/ T4 z, D8 ?$ W6 z5 }5 y又试用了一下font这个工具,下面放上几张抓图。
# U) G J9 c( h5 y: _, z% ]. M% m; Z2 \2 i" u2 v: ?. B* _( z- s
软件界面* S, `3 k& n; J5 {% v& m: T1 a
|