分类:
2010-12-16 20:29:01
1、 转换工具的编译
Qt字体转换工具为makeqpf,制作出来的字体类型为QPF2(qt-4.5.2)。由于此工具只能在嵌入式类型的环境中运行。因此可以通过编译x86的qt-embedded版本,在qvfb中运行进行字体转换。编译过程如下
a、编译x86的qt-embedded 配置参数为:./configure -embedded x86 -qvfb
b、编译x86的qt 配置参数为:./configure -qvfb
c、make –C tools/qvfb 生成qvfb 拷贝到qt-embedded目录下的bin下,配置好环境变量可直接运行。
d、运行 qvfb& makeqpf -qws 即可看到makfqpf 在qvfb里运行,至此可进行转换工作
注:两个版本不同 请注意
2、 字体下载
我试验了文泉驿字体,值得注意的是下载的中文字体一定要是ttf类型的字体,我试验了文泉驿的ttc后缀字体,发现最后放到板子上运行有问题。网上有人说qt只支持文泉驿字体,这个我没试,有空试下微软雅黑能否移植,但可以确定的是文泉驿ttf是一定可以的。
3、 字体使用
有时候我们需要在一个程序界面中使用几中size不同的字体,经测试在qt界面中通过qt-designer设置字体大小是不起作用的。因为qpf2是点阵字体,显示出来的是固定大小的,因此只能对每个控件单独动态设置字体类型。另一方面,因为qt定义不同字体的时候是以font family进行区分的,因此需要通过qt字体文件下设置fontdir来区分。
例如
Yesterday wenquanyi_24_50.qpf2 QPF n 50 24 u
today wenquanyi_32_50.qpf2 QPF n 50 32 u
tomorrow wenquanyi_32_50.qpf2 QPF n 50 48 u
QFont font(“today”,50);
Button.setFont(font); 便可以设置字体了,替换字体只需用不同的family即可
以上只是个人试验通过,有不对的地方请指正。