Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104594527
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-28 13:30:38

作者: Ziud  出自:
在当今社会,QT是目前在Linux操作系统平台下应用最多的图形用户界面的底层库,由其派生出的QT/Embedded大量用于嵌入式系统开发和研制中。实际上,QT/Embedded提供给用户的非ASCII码的字库一般比较少,在我们开发过程中用的嵌入式Linux系统中中文和日文的字库都只有一个(不算不同的旋转角),其中还存在字体大小不一样的问题,因此在实际开发过程中我们在处理中文字体显示时,最终使用这些工具开发出来的软件的用户就经常抱怨字体很难看,字体大小有时都不一致,因此定制自己的字库,以便使得最终用户能够看到漂亮的中文显示,这是使用QT/Embedded开发各种程序急需解决的一个问题。下面龙人嵌入式开发工作这首先向您介绍如何在嵌入式 Linux及下制作QPF字库:

首先定制自己的字库需要修改两个文件,一个是FONTDIR,它是应用程序寻找当前系统中最适合自己需要的字库的索引;另一个就是字库文件了,可以有一个或者多个字库文件,字库文件是最终显示的字的位图或者矢量。它们都必须放在目录/usr/qt/lib/fonts下(基于我们的平台QT/Embedded,其它平台可能有区别,下同)。

其次编写具体的FONTDIR文件的内容如下所示:

fixed fixed_120_50.qpf QPF n 50 120
helvetica helvetica_80_50.qpf QPF n 50 80
helvetica helvetica_120_50.qpf QPF n 50 120 u
helvetica helvetica_120_75.qpf QPF n 75 120 u
helvetica helvetica_140_75.qpf QPF n 75 140
helvetica helvetica_180_75.qpf QPF n 75 180

文件中每行都标识一个特定的字库,每个段的含义是:第一列为name,第二列为file,第三列为renderer,相当于字型格式,所以有BDF,TTT,QPF等选择。第四列n表示iitalic,表示是否为斜体字。第五列表示weight,其中50表示Normal,75表示Bold。第六列表示size,例如:120表示12pt。第七列为flags,有下面三个选择:s=smooth(anti-aliased)u =unicode range when saving (default is Latin 1 a = ASCII range when saving(default is Latin 1))

这样一个QPF字库就嵌入式Linux环境中生成了,大家是不觉的特别简单呢?
阅读(277) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~