MiniGui varbitmapfont 研究
2016-06-09 11:27
549 查看
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文件中。
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文件中。
相关文章推荐
- flash 系统字体显示问题
- C#及WPF获取本机所有字体和颜色的方法
- 谈谈网页设计中的字体应用Font Set
- PDF里的文字显示模糊的解决方法
- 保证可下载的漂亮动作2008奥运比赛项目字体
- C#实现字体旋转的方法
- C#实现位图转换成图标的方法
- 网页设计中的 serif 和 sans-serif字体应用
- C++实现位图排序实例
- 优化WordPress的Google字体以加速国内服务器上的运行
- C#实现缩放字体的方法
- ExtJs默认的字体大小改变的几种方法(自己整理)
- 一个实现字体大中小方法的JavaScript代码
- jquery实现实时改变网页字体大小、字体背景色和颜色的方法
- php修改NetBeans默认字体的大小
- 如何解决修改StaticText的字体
- C语言实现的bitmap位图代码分享
- asp.net调用系统设置字体文本框的方法
- C#读取系统字体颜色与大小的方法
- linux BASH shell下设置字体及背景颜色