Qt 4.7.0 linux windows 嵌入式qpf 汉字 希腊文 字体 制件 步骤 及工具下载
2011-03-04 23:44
330 查看
转自: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
花了不少时间,走了不少弯路,终于编出了想要的东西 。网上相关的文章过于陈旧,所在此与大家分享,希望能有帮助。。
在做嵌入式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
相关文章推荐
- Qt 4.7.0 linux windows 嵌入式qpf 汉字 希腊文 字体 制件 步骤 及工具下载
- 在Windows下删除Linux系统的方法(附修复MBR的工具下载)
- SecureCRT工具上传文件到Linux以及下载文件到本地(Windows)
- ios 5.1.1完美越狱工具Absinthe 2.0windows/mac/linux版本下载地址lwxshow.com首发,新增迅雷下载
- 第三方远程控制工具TeamViewer的安装和使用教程,可下载window版和linux版,windows使用虚拟机可以与linux之间通讯
- XSHELL工具上传文件到Linux以及下载文件到本地(Windows)
- XSHELL工具上传文件到Linux以及下载文件到本地(Windows)
- linux嵌入式qt的屏幕旋转与字体大小问题
- linux嵌入式qt的屏幕旋转与字体大小问题
- NitroShare 是一个局域网文件传输工具,支持 Windows、OS X 和 Linux。基于 Qt 开发。
- linux 上传/下载文件到windows工具
- CentOS配环境变量(针对MacOS,Windows类似,请自行下载连接Linux的工具)
- windows下使用tftp工具下载文件到开发板(linux)
- 在Windows下删除Linux系统的方法(附修复MBR的工具下载)
- 嵌入式ARM-Linux开发工具下载地址合集
- linux嵌入式qt的屏幕旋转与字体大小问题
- 安装嵌入式linux系统的步骤(USB线下载方式)
- linux下配置QT(很全的步骤,从下载开始,配置QMAKESPEC)
- linux和windows中命令行编译qt程序步骤
- Windows 7系统默认字体替换工具下载―以及win7系统字体替换教程