最近,大量的汉化项目都涉及到了图片字库。
. B+ p# Q* c$ J( C" z8 ?要用图片字库自然离不开编程制作图片字库的定义文件。
9 d/ h7 x4 ^9 z0 Y4 T图片字库我们可以用Photoshop来快速制作,请看如下帖子。0 _- S" m. L: V/ P8 C, Y
用Photoshop制作图片字库简易教程
* @! { C+ t F$ thttps://www.chinaavg.com/read.php?tid=22020
4 g( A9 I4 G( h4 y& c9 i/ N/ w& ^
- d# V; Y+ V- A0 [. _那图片字库定义文件是否有什么快捷的办法来生成呢?/ x8 ]1 c2 F R* {9 |
办法都是人想出来的,我想了个如下的办法:
0 u& m% ]! w- [3 |/ j: y
# A" i1 g. j2 U: b/ F2 s我们可以发现,虽然图片字库的定义多种多样。
+ [' ]2 R# W/ n" G' y- j* |2 w' p但是,大致都可以归纳为如下的样子7 x' ~- T) G9 \$ x" v
7 G; d7 G! b8 ^+ ?" ~1. 头部信息: r! }: T U4 K% ^- p! `7 l
记录了图片的高度,宽度,字符数等信息- B3 z& j D! ?1 ~3 [3 S, w X
2. 每个字符的位置信息x字符数
' F1 q; J) r& Z1 O; v6 q
_) b# B! r2 E9 F* x对于第2个部分来说,我们可以设计一个通用工具来生成。& w: Z! Z' C+ C+ ~* _
下面说说这个通用工具的设计思路。/ {7 _0 M* P \6 |4 g, q, T
& u ~1 z# F5 L! @5 n我们先输入一些必要的参数,比如字符的高度,宽度,首行字符的上边界及左边界坐标等等。
% Z6 \3 U. o: r: q3 C8 \6 n就可以确定每一个字符的范围,这每一个字符都会对应1组参数,比如x,y,,left,top以及UV坐标系的x/width 等等0 S* z# f j a" d, ]1 X0 U
我们可以预先定义一个字符的位置信息的模版。
) ?# [* O. ~2 S4 J' Y( |% M程序会按模版的定义,选取我们需要的参数,按游戏的图片字库定义文件的格式,生成上面的part2.3 j$ k4 [; M8 R
那part1我们只要简单地手工修改一下即可。* `2 k3 Y- l1 H! U9 G/ M+ ~
8 v! x1 J9 q+ u. Y6 W) l* n
有了这样的1个工具的话,我们可以快速地制作出各种类型的图片字库的定义文件。! d1 \; d$ ~- @4 ]" z U5 p% R- [
希望各位懂技术的朋友给提提意见,参与讨论。 |