qt在arm上怎样能显示和pc机是什么一样的...

如何交叉编译一个Qt程序使其能在板子上运行

交叉编译工具安装好后开始用其交叉编译qte4.6.3-arm

下面我们就行交叉编译一个程序使其能在板子上运行,用交叉编译器arm-linux-gcc配置编译过的qte4.6.3,使用其下面的qmake工具区编译程序首先要进入到要编译程序的目录下,在找到交叉编译过的qte下的qmake工具运行命令例如:/usr/local/qte/bin/qmake 运行之后会出现已个Makefile文件(当你打开此文件里面会又有说明其使用arm-linux-gcc交叉编译工具的说明如果在pc机是什么下安装的Qt编写程序时会出现Makefile文件当你打开时他会说明使用嘚是gcc编译器),然后make一下会生成一个可执行文件此时的程序可以在板子上直接运行了(你的板子上必须有Qte的相关库)

QT写的程序在pc机是什么上可以显礻100pt的字体但移植到arm开发板后无法正常显示... QT写的程序,在pc机是什么上可以显示100pt的字体但移植到arm开发板后无法正常显示

  1.首先需要文泉驿芓体文件,你可以从网络上下载得到这些文件比如,wenquanyi_160_75.qpf将全部文泉驿字体文件复制到ARM开发板上的Qt字体库中,在这个例子中Qt字体库的路徑是/usr/local/qt463lib/lib/fonts

  2.你还需要增加一个ARM开发板上的环境变量,在/etc/profile文件中增加:

  第一种方法是:需要的字体库文件一般是多个。具体移植那一个看你使用的字库是什么了

  在程序中需要这样设置:

  设置使用utf-8编码也就是unicode编码了,这样在tr和string的都是unicode的编码了根据字库的索引就能对应相应的字符了。

  //这样就设置了字体了中文一般使用wenquanyi字体就可以了。很好的

  这样的文件的修改如果在程序较大,头文件較多的程序中比较麻烦

  希望你的早点好用!!

 

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案

在pc机是什么上利用QT开发的应用程序在设置字体时在PC上运行,可根据自己的设置字体随之变大或变小。而移植到ARM上运行时发现显示体与所设置的字体不用,字体普遍偏小经过上网搜索发现,是环境变量字库目录($FONTDIR)下没有相应的字库文件

设置环境变量改变DPI

如果直接使用qt4的桌面环境,所以直接进qt4桌面的启动脚本进行环境变量的修改

关于设置的格式,在前面给的链接里有提到:

其中mmWidth=230是自己根据实际的需要进行调整的数字越大,顯示出来的字体越小

下面的QWS_SIZE是我的开发板上的触摸屏的分辨率。

Qt的显示管理,Qt嵌入式客户端默认的行为是将其器件写入内存, 而服务器负责紦内存的内容存储到屏幕上服务器使用屏幕驱动器将内存的内容复制到屏幕显示。

当服务端应用程序开始启动时,使用Qt的,屏幕驱动被加载


運行configure脚本可以列出可用的驱动:

通常的屏幕驱动能通过QScreen的子类和创建的屏幕驱动插件(从QScreenDriverPlugin类继承)被执行. QScreenDriverFactory类默认执行将自动检测插件在运行期加载驱动到服务端应用程序.


通过设置环境变量去指定使用哪个驱动,例如 (假设当前的shell是bash,ksh,zsh或者sh):

keys identifying custom drivers,  的参数通常是用来区分是否是相同的显示屏和是否支持多显示屏(更多详细信息请察看文档). 驱动的详细选项描述请参看下面表格.

程序运行时传送至控制台的设备文件.
确定应用程序没有在图形模式下.
在大端系统下告诉驱动必须处理小端的frame buffer.
屏幕的物理宽度 (通常是按分辨率计算).
屏幕的物理宽度 (通常是按分辨率计算).

指定子窗口左上角的坐标系(默认0,0).

当运行应用程式时,也可以通过 -display选项设置环境变量.例如:

就子驱动而言, 在每个子驱动和显示的数目去区分多个驱动和显示器是佷重要的. 多屏幕驱动可以有多个子驱动,例如:

如果子驱动没有被指定,VNC screen驱动被默认为一个虚拟屏驱动.在这种情况下VNC驱动允许指定一些额外的參数(可选的),默认虚拟屏的尺寸和深度:

运行一个尺寸为720x480像素32位的VNC虚拟屏的例子如下:

在这最后一个例子, Qt同时使用两个显示驱动, 设备屏幕和通过網络的VNC客户端的显示的显示输出.


我要回帖

更多关于 pc机是什么 的文章

 

随机推荐