首先说明,所有这些配置文件,都是游戏原版压缩包里的,并在此感谢lmao汉化组首先提供思路,我只是借花献佛而已。
下面是具体步骤:
1.首先我们需要一个BSA解包工具:BSAUnpacker,用以将Skyrim - Interface.bsa文件中的fontconfig.txt解压出来,
当然,如果你没有这个工具,也不必急,LMAO汉化组提供的汉化包里已经把这个文件提取出来了,我们可以直接用这个,
把这个文件放入到DataInterface下,以后可根据需要修改里面的字体。
2.第二步,下载制作swf字库的工具,推荐用adobe flex builder 3.0 或adobe flash builer4.0 或4.5,推荐用3.0吧,简单好用,4.0和4.5也可以,大同小异,
下载好后,安装好这个工具,准备开始制作字库。
3.第三步,准备你需要制作swf字库的源字库,你喜欢哪个就选哪个,这里我以雅黑为例吧,我把这个雅黑文件复制到C盘下,
于是C:下就有了个msyh.ttf文件,这就是我们要生成的游戏字库的来源文件。
4.第四步,在这里我们以adobe flex builder 3.0英文版为例做说明吧,简称flex3.0,
启动flex3.0,新建一个ActionScript Project项目,项目名随便填,然后点击完成,进入工作区。
5.第五步,在工作区左侧src目录下的*.as文件即是我们需要编辑的,幸好这个文件在工作区正中已经打开,
我们只需要在其中填写代码即可。
6.第六步,我们现在需要的,即是在代码区中
public function ******()
{
}
这个代码段的前面(后面也可以)填写代码即可,以下是假设以temp命名的项目为例来说明代码行如下:
[Embed(source="c:/msyh.ttf", fontName="msyh",fontWeight='normal' , fontStyle='normal' ,unicodeRange='U+0000-U+ffff,U+0000-U+ffFF', mimeType="application/x-font")]
public var ABCD:Class;
以上两行代码,即实现了制作一款字库,至于其他语句,大家就不需要了解太多了,知道这两句即可。
上面语句解释如下:
source="c:/msyh.ttf", 来源字体文件位置,这里我为方便大家,使用了绝对位置,也可使用相对位置,但相对麻烦些,就不多说了,大家按这个格式即可;
fontName="msyh", 这个自然就字体名字了,也是大家以后在字体调用时的名字,一定要记住;
fontWeight='normal' , fontStyle='normal' , 这个是字体样式和是否加粗,推荐就这样吧,用普通就可以了,没必要再去设置个加粗或什么斜体之类的了,在游戏里足够;
unicodeRange='U+0000-U+ffff,U+0000-U+ffFF', 这是字库字符范围,其实有没这句都无所谓,不过为了全面,还是介绍下,大家按我这个默认来就可以了,可删除这句,但不要乱改;
mimeType="application/x-font",这个是媒体类型,默认是当前这种,也可以是application/x-font-truetype,不过用默认即可;
public var ABCD:Class; 这个是定义了字体类变量,为以后调用方便,这里ABCD是名字,我们可以随便改,只要不和项目名相同即可。
以上即是对语句的解释,当然,如果想再定义粗体,或再增加一种字体,可以按此格式另写一行即可,不再多说。
7.第七步,在flex3.0菜单栏上点击RUN,运行项目,一路确定下去,就生成了swf字库文件。
生成的swf文件的名字,是和你的项目名字相同的swf文件,位于你的项目文件所在文件夹下的bin-debug中,以temp项目为例,就在以下目录中:
C:Documents and Settings******My DocumentsFlex Builder 3Tempbin-debug;
我们就可以把这个swf字库复制到游戏DataInterface目录下生效了。
8.第八步,配置fontconfig.txt,这里不多说了,可以参照LMAO的那个配置文件即可,将对应字体修改成你生成的字体;
在这里要注意一点的是,如果你的字库中没有粗体,那么在fontconfig.txt文件中,字体名字后面的bold一定要改成normal,不然进游戏会显示方块。
好了,以上就是自己制作字库的完全过程,希望大家都能制作出自己喜欢的字库。
下面是我自己做的几个字库的效果图,请大家观赏。
第一张,汉仪中隶