知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > linux

在嵌入式Linux环境下制作QPF字库的方法

发布时间:2014-09-05 17:29:23作者:知识屋

 

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 120helvetica helvetica_80_50.qpf QPF n 50 80helvetica helvetica_120_50.qpf QPF n 50 120 uhelvetica helvetica_120_75.qpf QPF n 75 120 uhelvetica helvetica_140_75.qpf QPF n 75 140helvetica 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环境中生成了。

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜