Qt 4.7.0 linux windows 嵌入式qpf 汉字 希腊文 字体 制件 步骤 及工具下载
转自:http://blog.csdn.net/yanjun_wang/archive/2010/12/18/6083685.aspx花了不少时间,走了不少弯路,终于编出了想要的东西 。网上相关的文章过于陈旧,所在此与大家分享,希望能有帮助。。 在做嵌入式GUI的开发过程当中,汉字的显示当然也是很重要的一部分了。字体的美观且又体积小,读取速度快,是嵌入式GUI最为关心的问题。考虑到这些
转自:http://blog.csdn.net/yanjun_wang/archive/2010/12/18/6083685.aspx
花了不少时间,走了不少弯路,终于编出了想要的东西 。网上相关的文章过于陈旧,所在此与大家分享,希望能有帮助。。
在做嵌入式GUI的开发过程当中,汉字的显示当然也是很重要的一部分了。字体的美观且又体积小,读取速度快,是嵌入式GUI最为关心的问题。考虑到这些问题,Qt 为了大家提供了,一种体积小,读取速度快的字体格式--qpf 字体(具体内容其它地方都有介绍)。那么如何才能得到qpf格式的字体呢?Qt 在给出格式的同时,又提供了一个制作工具--makeqpf .但是现在的版本默认configure 编译,不会把这个工具编译出来。但是可以自己找到源码单独并编译。下面是制作过程:
http://blog.csdn.net/yanjun_wang/archive/2010/12/18/6083685.aspx
1、 编译linux x11 下的makeqpf .(假设已经成功编译出了,QT-4.7.0. 的库。编译环境已经搭建成功)。
2、 #cd qt-everywhere-opensource-src-4.7.0
#cd tools/makeqpf/ //进入makeqpf的源码
#qmake -project
#qmake
#make
3、 如上进行编译,这时会出下如下的错误:
在包含自 ../../include/QtCore/private/qharfbuzz_p.h:1 的文件中,
从 ../../include/QtGui/private/../../../src/gui/text/qtextengine_p.h:72,
从 ../../include/QtGui/private/qtextengine_p.h:1,
从 ../../include/QtGui/private/../../../src/gui/text/qfontengine_p.h:60,
从 ../../include/QtGui/private/../../../src/gui/text/qfontengine_qpf_p.h:56,
从 ../../include/QtGui/private/qfontengine_qpf_p.h:1,
从 qpf2.h:45,
从 main.cpp:44:
../../include/QtCore/private/../../../src/corelib/tools/qharfbuzz_p.h:57:29: 错误:harfbuzz-shaper.h:没有那个文件或目录
说找不到harfbuzz-shaper.h 这个头文件。
4、 需要我们指定一下。打开makeqpf.pro 修改include 路径。
INCLUDEPATH += . ../../src/3rdparty/harfbuzz/src
保存退出
5、 #qmake
#make
重新编译,又出错了。。汗。。
../../include/QtCore/../../src/corelib/io/qdir.h:108: 错误:expected identifier before numeric constant
../../include/QtCore/../../src/corelib/io/qdir.h:108: 错误:expected `}' before numeric constant
../../include/QtCore/../../src/corelib/io/qdir.h:108: 错误:expected unqualified-id before numeric constant
这个错误很是头疼,找到文件打开。。
#cd systemTool/qt-everywhere-opensource-src-4.7.0/src/corelib/io
#vi qdir.h 找到108行
我是真没有发现什么错误。。。折腾办天,没办法,屏蔽掉。。(后来看制作的字体,也没什么影响)
enum SortFlag { Name = 0x00,
Time = 0x01,
Size = 0x02,
// Unsorted = 0x03, (大家也可以找一找)
SortByMask = 0x03,
DirsFirst = 0x04,
Reversed = 0x08,
IgnoreCase = 0x10,
DirsLast = 0x20,
LocaleAware = 0x40,
Type = 0x80,
NoSort = -1
#ifdef QT3_SUPPORT
,DefaultSort = NoSort
#endif
};
保存,并退出。
6、 编译,终于过去了。在目录下生成了 makepqf ,现在可以运行一下看看了。。呵呵
这个是windws 下的一个makepqf.exe 工具。。
7、 编译windows下的makepqf , 如果要是能先编译这个,那就会省不少劲了。。走了不少弯路。
windows下的好多了,不需要做什么修改。
进行 C:/Qt/2010.05/qt/tools/makeqpf 文件夹。
将makeqpf.pro 拖到QtCreator 中编译即可。
(必须在安装的目录下编译,拷到别的地方,就又会出像上面一样的很多问题)。晕死。
8、 好了,现在两个版本的都有,大家好好用吧。
9、 没有时间的朋友么可以直接下载,地址如下:
http://download.csdn.net/source/2919209
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yanjun_wang/archive/2010/12/18/6083685.aspx
更多推荐
所有评论(0)