MiniGui varbitmapfont 研究

MiniGui varbitmap font 是一种变宽位图字体,对于不等宽字体采用这种位图字体格式是比较理想的;但MiniGui官方对这种字体的介绍资料很少(我找了很久都没找到 :=( ),只能研究MiniGui的源代码来了解这种位图字体文件格式。我这里研究的是varbitmap font 1.0版本。

MiniGui varbitmap字体的实现在varbitmap.c中, LoadVarBitmapFont 函数实现了位图文件的加载,通过这个函数的研究可以了解到verbitmap字体的大体文件格式。


version: 版本号,这里版本号是 vbf-1.0** ,占10个字节;

len_header: 文件头长度,文件头是指verion到font_size之间的字节数,这里是43个字节;

max_width: 最大字符宽度;

ave_width: 平均字符宽度;

height: 字符高度;

descent: 未知 :=(

first_char: 字库的第一个字符;

last_char: 最后一个字符;

def_char: 默认字符;

len_offsets: 字体点阵偏移区域的长度(对于变宽字体点阵,每个字体都有一个偏移指针,以便索引到该字体点阵,所有字体点阵的偏移指针都存放在offset区域中,offset区域的长度存放在len_offsets中);

len_width: 字体点阵宽度表的长度(对于变宽字体点阵,每个字体都有一个宽度值,所有字体的宽度值都存放在width区域中,width区域的长度存放在len_width中);

len_bits: 字体点阵的总长度;

font_size: 指整个varbitmap字体文件的长度;

font_name: varbitmap字体文件的名称,例如Arial--rrncnn-15-16-ISO8859-1.vbf;

offset: 字体点阵偏移区域;

width: 字体点阵宽度表;

bits: 字体点阵;



http://download.csdn.net/detail/fang437385323/9545140

这是一个测试程序,MiniGui代码中内置了3种varbitmapfont字体,但是是直接集成在代码中,此程序把代码中的点阵写入到.vbf文件中。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值