qpf字库制作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

适用于minigui1.6版本的qpf字库制作简述(By:fjh)

一、需求

由于项目中选用的minigui 1.6版本仅支持qpf、rbf字库,现有的qpf和rbf 字库最大仅有16号字体,而cr202新界面中又要使用大号的中文简体和中文繁体字库,故需要产生可用的大号字体qpf字库。

二、方法

选择用ttf --> qpf的方法产生需要的qpf字库,这种方法可用qt平台下的makeqpf工具实现。

三、问题

在字体转化过程中发现以下问题:

较新的qt版本(qt4以上),编译运行makeqpf工具产生的是qpf2格式字库,cr的minigui平台不可用;较旧的qt版本(qt2左右),所带的tools里的字体转换工具不是makeqpf,转换产生的也是我们不需要的某种字体;只有能够成功安装的qt3系列版本才能产生对应字库。

四、过程详述

A、Qpf字库制作过程:

(平台Linux系统+ QT: qt-embedded-free-3.3.3.tar.bz2 )

平台准备:

在根目录下新建一个目录mkdir qte

2. 把qt-embedded-free-

3.3.3.tar.bz2移到qte目录

3. 解压qt-embedded-free-3.3.3.tar.bz2

4. 重命名qt-embedded-free-3.3.3.tar.bz2文件夹

mv qt-embedded-free-3.3.3 qte

5. 在根目录的qte目录下写如下shell脚本并保存成buildqte

#!/bin/sh

cd qte

export QTDIR=$PWD

export PATH=$QTDIR/bin:$PATH

export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH

./configure -qt-gfx-transformed -qvfb

make -C src #这样只是编译src目录下的源码如果没有moc uic 工具就全部编译可以直接make而不要后面的-C src

cd ..

make

6. 执行buildqte脚本编译x86版本的qte库.

7.修改buildqte shell脚本.

把buildqte脚本中的下面一行注释掉

# ./configure -qt-gfx-transformed -qvfb

./buildqte

重新编译qte库

Makeqpf的使用:

编译makeqpf工具(qte用这个工具来生成qpf字库).要编译成qte的版本,不能编译成x11版本

../../bin/qmake -project

../../bin/qmake

修改fontdir文件,一般默认在/usr/lib/qt-3.1/lib/fonts/目录下,修改格式如下:

newfont fsong.ttf FT n 50 140 u

运行makeqpf生成qpf字库

如果没有qvfb工具,就执行命令makeqpf -A

B、Ttf字库裁剪

完整的简体中文字库和繁体中文字库都很大,可以针对项目需要对完整的ttf字库做一个裁剪,去掉不用的字。

工具:fontcreator.exe

使用方法:

1、定位

这里选编辑->查找或者直接Ctrl+F,就会看到如下的界面

通过unicode编码查询,(查询可参考:/code/unicode/)查出所需汉字unicodes编码值,在上图的小框中的美元符号后输入,即可定位出所需汉字在字库的位置。

2、保存位图

新建ttf文件,将选中字符复制粘贴过去,但这时复制过去的只是字体的图片,并不带字体属性,这样在使用的时候仍无法调用。

3、编辑属性

在新存储的字符库中,要分别对每个字符进行属性标注,关键是标注出该字符对应的unicodes编码值,最终保存,这样裁剪后可以使用的字库即生成了。

参考文档:

/bbs/read.php?tid=7994

/leer/archive/2011/07/21/font-family-define.html

相关文档
最新文档