最近,大量的汉化项目都涉及到了图片字库。
0 r `3 ]5 Q8 _' d. E要用图片字库自然离不开编程制作图片字库的定义文件。
" p+ n* y' e$ T" r图片字库我们可以用Photoshop来快速制作,请看如下帖子。
, J+ s2 k( l! H5 A1 p7 L r用Photoshop制作图片字库简易教程3 d( A% V) s! U, q5 D. e! g
https://www.chinaavg.com/read.php?tid=22020) Q& W: ]) |2 k$ @( d. d0 X! v
E4 q, }" _6 G0 u4 p8 d. s m那图片字库定义文件是否有什么快捷的办法来生成呢?
' N" \( a$ o1 M: P6 {/ p办法都是人想出来的,我想了个如下的办法:
, p; `$ F3 u9 V3 g$ R. g$ f
- v, f, b' [6 ?, X; Z0 W6 b$ E3 h我们可以发现,虽然图片字库的定义多种多样。
" o" ?5 _" b- G* {但是,大致都可以归纳为如下的样子
0 w+ m t- q; H$ c- t- F" i
/ H5 m7 n& e. K$ a9 B2 u+ s1 e1. 头部信息
0 ^6 ~& f9 o6 G* w# u$ k 记录了图片的高度,宽度,字符数等信息* G: |" O$ o) b! ]2 R1 P
2. 每个字符的位置信息x字符数
$ Q. v' E% A) E, \8 z
' v) ^2 U1 x! @! @0 I! R9 H' Z( p6 n对于第2个部分来说,我们可以设计一个通用工具来生成。
6 g$ J& [- }* v8 H$ x# w下面说说这个通用工具的设计思路。
6 H. j- M: H* Q9 @; S ^
' z7 F2 q8 [8 @! z# u我们先输入一些必要的参数,比如字符的高度,宽度,首行字符的上边界及左边界坐标等等。
3 [5 n5 ]- h0 U- V就可以确定每一个字符的范围,这每一个字符都会对应1组参数,比如x,y,,left,top以及UV坐标系的x/width 等等9 m. V9 L8 t3 R/ A* k5 j' t
我们可以预先定义一个字符的位置信息的模版。
; Z% g$ u; K( K程序会按模版的定义,选取我们需要的参数,按游戏的图片字库定义文件的格式,生成上面的part2. e. W# Q, R: n+ {* A
那part1我们只要简单地手工修改一下即可。
, _! C, Q2 s) T/ C0 a& v ]: k, w9 h# L% i7 N i( m8 B4 |
有了这样的1个工具的话,我们可以快速地制作出各种类型的图片字库的定义文件。
! a$ i5 q- q! \" ^8 B希望各位懂技术的朋友给提提意见,参与讨论。 |