qte

Qtopia 2.2.0的编译和移植(一)

一曲冷凌霜 提交于 2019-12-06 10:20:26
新项目中需要做界面,决定使用Qt框架开发,刚好我在前一个项目中是做这个的,就接手了。由于上一个项目我选用的是Qt-4.7的版本,包括PC版本和嵌入式版本,而这次项目打算用半现成的Qtopia2.2.0版本,考虑到库的存储空间大小和性能需求,不得不说Qt4.7的嵌入式版本编出来的库很占用空间。因为Qtopia2.2.0是别的公司 弄好的,不过还是需要自己理清整个编译、移植的步骤过程,不然以后开发会很麻烦,还好有点经验,只是Qtopia2.2.0确实有点旧了,2005的版本,我现在都找不到官方的版本了。整了两天,基本是搞定了它的编译和移植过程,顺便写了个自动化脚本,自我感觉良好。 开发环境 PC机:Ubuntn 12.10 Server(Linux 3.5.0),gcc-4.7.2(g++) 目标机:ARM9, Linux 2.6.24 编译前环境准备 X11库 Qtopia编译过程中需要使用X11 里面的一些头文件来生成一些工具,主要是qt2的编译,当然里面的dqt编译肯定是需要用到X11的头文件和库的。使用以下命令即可安装需要X11的环境: <!-- lang: shell --> sudo apt-get install libx11-dev libxext-dev libxtst-dev uuid库和xmu库 编译过程中会使用到这些库,安装命令: <!-- lang:

嵌入式Qt方案中文显示系列:应用程序本地中文显示的实现

 ̄綄美尐妖づ 提交于 2019-12-01 18:58:01
嵌入式Qt应用程序进行中文显示有两种解决方案,一种是直接在代码中使用中文,利用QTextCodec类来实现,另一种是使用qt平台的国际化支持机制,通过语言翻译来实现。第一种方案直接明了,相对来说也简单方便一点,除了编码时麻烦点(来回切换输入法),而第二种方法的优点是具有良好的扩展性,代码中全部使用英文,然后使用中文翻译文件来进行语言翻译,当需要其它语言方案时,只需要添加翻译文件就可以。这里先介绍第一种方案,之后再写第二方案的文章。 方案实现 直接使用中文,利用QTextCodec类来实现中文的显示方案实现通过下面的三个步骤: 中文字体文件的存在:前文提到过字体文件的内容,文泉驿字体库是支持中文的。 应用程序代码中QTextCodec的设置和QFont字体的设置:对整个应用程序来说,一般是放在main函数中进行设置,大概的代码如下: int main(int argc, char *argv[]) { QApplication app(argc,argv); ... QTextCodec* codec = QTextCodec::codecForName("UTF-8"); app.setFont(QFont("wenquanyi",16,75,FALSE,QFont::Unicode)); app.setDefaultCodec(codec); ... return app

嵌入式Qt方案中文显示系列:Qte中的字体支持和使用

最后都变了- 提交于 2019-11-30 19:34:14
前话: 工作以来在项目中主要的开发工作都是用嵌入式QT开发界面,从一开始的从零摸索,到现在有点头绪和经验,很多东西和用法依然只是知其然,不知其所以然,甚至一些还仅仅是模仿阶段。在这期间,学的东西很零散,所以现在有一次做这块,打算弄明白一些东西,也算对自己付出的时间有个交待。 使用嵌入式Qt作为嵌入式GUI的解决方案,其实会比较轻松,除了几个不多的难点,就我目前的经验,一个是资源占用问题,对于资源紧张的系统优化会比较难,一个是中文显示的问题,这个也是我第一次花的时间很多的一块,网上这块的资料很多,说明问题比较普遍。现在回过头来看,实际上也不是那么难搞定。这里就中文显示写几遍学习理解的文章,即为自己,也方便后来者。 支持的字体 嵌入式Qt支持4中格式的字体,分别是: TrueType(TTF) 可缩放字体格式,桌面系统中主要使用的字体 PostscripType(PFA/PFB) 可缩放字体格式,打印主要使用的字体,可TTF类似 Bitmap Distribution Format fonts (BDF) 不可缩放字体的标准格式,在X11平台系统中可以找到 Qt Prerendered Font (QPF) Qt预渲染字体,专用于嵌入式Qt的一种字体格式 QPF字体格式是嵌入式Qt内置支持的字体,可以使用QT SDK中提供的makeqpf工具利用前三种字体文件来生成

Qt/Qte/Qtopia三者的区别

*爱你&永不变心* 提交于 2019-11-29 15:55:34
Qt 泛指 Qt software的所有版本的图像界面库,包括 Qt/X11(Unix/Linux),Qt Windows, Qt Mac 等,但这只是相对于二进制来说的。Qt作为一个跨平台的GUI 框架,在源码上对所有平台都是一致的。Unix/Linux上最流行的桌面环境之一KDE就是采用Qt来写的。 Nokia 在2008年收购 Trolltech 后,将 Qt 更名为 Qt Software,随后改为 Qt Development Frameworks。而后 Nokia 开发了 IDE 工具 Qt Creator,于是Qt FrameWork + Qt Creator = Qt SDK。 Qte:Qt/Embeded for linux 它是用于嵌入式 Linux 系统的 Qt 版本,也是一套界面库,Qt/Embeded 也简称 Qte 或 Qt/E,Qte 去掉了 X Lib 的依赖而直接工作在 Framebuffer 上,而且Qte在此基础上实现了自己的窗口管理系统QWS(Qt Windows System),这是Qte与Qt/X11最大的区别。因此Qte可以在嵌入式Linux系统中没有X11库的环境下构建独立的图形用户界面,而且不会占用太多的嵌入式系统资源。 Qte为方便嵌入式Qt应用的开发,还提供qvfb工具和makeqpf工具