一款有少许参考价值的中文字库生成工具。
" N% N {3 A9 {( B3 g1 d原文
* q1 c( v! j; @6 J, p. ?; z0 V) mhttps://sites.google.com/a/davidone.co.cc/actiongamemaker/download/fontmaker
/ a3 H$ c: D$ N3 J- {. F" F
* T$ q% m: e9 W$ ^5 i( gAGM字库生成器,顾名思义就是从文本转化为AGM使用的字库图片,字库图片的使用去看中二胃的教程其实我也没有AGM。原理很简单,draw_text把字一个一个画到一个bitmap上,然后用6r上的bitmap2png脚本给存下来。 $ q( E/ R9 o# {. B9 E/ ~5 f
5 L5 Z& l# J+ [+ s
: v" u5 h% G9 P2 V3 Y% i. I
, }. ]6 g) h+ w+ o* }) d
5 v8 J$ T) J4 c6 b使用方法:
: j0 o' \& t: J. F" ^# f: ~" m/ d! i0 j# h( Z" Y
9 b0 e' N$ }4 \2 p# S) {3 G
3 E# I/ K# u; g9 p3 W
Z6 h3 o2 r* q: t在生成器的目录下,新建一个名为input.txt的文本文件,其格式如下:
. O5 s0 b# g% ^ ~% o' u/ V
1 [- W4 X% }. C. i8 v$ k p- Z5 m; `0 P l" N' c+ R& \
第一行是生成字库的控制符。其格式为:
2 A P8 I) s( z) U3 J% j
# p8 p; g6 ] y0 D8 K7 R@字体|每行个数|字宽*字高(请务必保持一致)|字色|是否阴影|是否加粗|描边色
8 B6 e; k* h5 I" [# [ A% `% E" p' ^0 q5 A& t" O
其中:
. j. U% D# v. a9 V
; {8 B J. w2 r$ h字体:请使用系统存在的字体,且保证名称无误,否则找不到字体将以黑体来描画。 6 V9 P$ Q1 ^% G# M: p6 L8 f H
& j% J' {6 v% F# G( D每行个数:字库图片每行的文字个数,请酌情设定。 # l5 w0 s8 J* I. ]. k' m
3 C. W x( b, W& {: a" V
字宽*字高:目前请将这两个设为一致,且不要太大或太小 1 G5 L9 i( ^: T7 k6 o
; `) N" p* I5 v5 ~" ]
字色:格式为(R,G,B,alpha),RGB可以在ps的取色板或画图软件的取色板中查询,alpha是不透明度,255为不透明,0为完全透明。
_% j' o0 n% q# q6 j( |
8 `$ d0 P1 {4 c是否阴影:0为否,1为是。
( c6 q0 @. z- p$ }7 I
6 a! k! u- u, g7 k是否粗体:同上。 - M( J+ `" C `) P
v- m5 y8 F* {% m: z# a7 n描边色:同字色,表示描边的颜色。如果不需要描边,请用nil代替。 + `" D& k( r6 U$ A Z
/ c% I3 e1 N( ?& u/ I+ t( a从第二行开始,为你需要制作到字库图片中的文字。本生成器会无视换行,但是,为了在AGM中使用的方便,请按照设定的每行个数进行分行。
4 \3 Q9 ?: f m+ ? j9 o2 b
- {+ G# O! t7 r( p请务必要将input.txt存为UTF-8格式,因为rm只认UTF-8。 * a) q8 q7 S# I8 E* s8 g. ~
, d# A+ f; ^1 l; o' K( @6 _; ?) v& A( u/ e: A8 T
* Y* {' N- C1 k) I5 [3 a% d
, n i) u4 d$ t% U9 o$ d& a
这项工作完成后,请双击game.exe,程序将自动根据txt内容进行,途中会有对话框进行确认,如果txt有问题,也会有一定的提示。 . Y2 _9 A/ w: m' m$ ]8 E
6 O/ D. j. ~! g) J6 [Game.exe运行完毕将自动关闭,这时生成器目录下将出现output.png。这就是生成的字库。
; ?3 u: f2 N* H4 w# p+ A9 c9 J& D7 O9 p$ ]) O. B" b4 \- L- A
?! a6 J8 ~$ n0 A
4 }- ~ \. P3 V. y8 Y' p/ h' |+ ~+ `9 G; [) C, J- ^
注意事项: : C3 D! `! @4 w$ U, w
0 d* O/ ~0 X4 w: E
4 i: t8 j4 {4 r+ e: v5 _" L9 G
6 n) b$ o& {! y, B8 e/ j5 z* V3 t% v9 e5 W& j2 Z; c Y w
1.由于是用rm写的,所以rm的一些不足将影响到使用效果。比如,rm的字体渲染比较rp。基本上,点阵字都被渲染了,所以尽量不要用宋体之类的点阵字,就算要使用也请酌情调大字号。 3 b! n8 w4 m2 m$ @3 j* e
0 [3 h6 d' @5 L1 h" T" X# o
2.理论上支持半角,但是嘛……由于大部分英文字体都不是等距的,要达到理想的效果要花一番功夫,要么就用全角英文吧。 ( M9 v0 e c8 v% O
7 p. g3 P9 `9 B. h9 K
3.为什么字体不能设太大:rmxp有10s脚本备份的制约,所以我用的是rmvx。但是rmvx……不支持超过2048*2048的bitmap。所以请将字库图片控制在这个大小以内。
# I3 W; w1 S0 E0 m. y) F
) y+ Q: C3 D; H/ V4.虽然有描边和阴影功能,但是我强烈建议用ps后期做,因为rm的描边效果嘛……用过的人都知道很囧。
- H7 z0 W0 s0 x/ @
* {& M+ g x! _$ o7 G5.自带一个input.txt,有很多字和符号,很全,但是不建议使用,请根据自己的情况酌情删减。 # f! ?3 f3 L8 V, i0 H3 q
1 M. v3 |0 P8 X6.感谢轮回者的bitmap2png脚本,原始链接在此:http://www.66rpg.com/htm/news1113.htm 4 M" i: b8 J) b
& X+ g, P" o! Q- c0 z+ f' @2 o
0 Q( z( x4 [/ k5 u9 U Y" i( F6 }7 i' o4 E K; N" Y: O$ ]6 z. f; b
( _4 {9 P8 h. T& }+ R i- ~+ H/ N& e/ O! U9 @# v8 e1 |# O
FAQ: 5 C2 n& F7 Z( x. J0 m6 `$ w
# e6 s' U7 C* _2 d+ b
& W w# T: x* u( Y% {8 N3 }8 p7 M/ h0 f5 f: ~0 T
9 m U- z, M& Q# d
; E; }) W' y% h& O0 R
4 }9 D. [) W- z' {8 Z$ t* }$ f% IQ:为啥最后描绘出来的是黑体? & z5 r6 i* N0 G! r' [
* @+ S) |0 x8 {+ }7 _/ x
A:字体文件不存在,或者rp问题了,请核对字体的名字。如果字体名字准确无误……欢迎反映情况。
3 ?; @. |' z% E% K2 y- A' g8 ^- l& c
! X# c9 V: D" `7 n" L9 x6 W" Y' T. }/ B4 [' ]( I& N
Q:为啥写出了一大堆乱码? 8 T# a! E* v' Z% M9 I1 z7 g
4 V1 U' `) F2 X2 V% x7 U8 R
A:因为rm只认UTF-8。我觉得以其调用API转码不如在存txt的情况下就注意下。如果确实是UTF-8但还是乱码……欢迎反映情况。
- M2 z: K. M" f5 p6 X* p6 e" B9 b, j" L5 h
. v# m$ @! A. J, [7 S5 v e0 ` y) z. i6 B( z8 m
Q:生成的PNG太大,怎么办?
: M: [6 [$ {* T$ u' Q; s
/ y$ _6 ~/ u: I# PA:请参看doranikofu同学的png压缩教程,详情请见:http://bbs.66rpg.com/viewthread.php?tid=100570 ( _; Y6 O/ R- F8 C8 v x
' q$ A# }9 s+ J经过我人肉试验,可以减少一半以上。 + d8 x; j% ^ Z
* U l3 D2 R, a6 o& J0 I7 n" J& `. e# O, Q+ r+ a$ ^; B
' {9 [8 L4 y( B" q# Z; h9 @
如果有找出问题或者改进建议,欢迎来反映,如果有什么使用上的疑问,也欢迎留言。 |