Chinaunix首页 | 论坛 | 博客
  • 博客访问: 30191405
  • 博文数量: 230
  • 博客积分: 2868
  • 博客等级: 少校
  • 技术积分: 2223
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-08 21:48
个人简介

Live & Learn

文章分类

全部博文(230)

文章存档

2022年(2)

2019年(5)

2018年(15)

2017年(42)

2016年(24)

2015年(13)

2014年(1)

2012年(5)

2011年(58)

2010年(56)

2009年(9)

我的朋友

分类: LINUX

2010-08-30 08:44:51

QTOPIA中的屏幕旋转实现的关键是旋转字体的实现。

 

一、       旋转屏幕

1、      操作步骤

由于我们使用的屏幕是横屏(320*240),现在需要将qt的界面旋转一下,将其显示成直屏(240×320)方式。旋转屏幕可使用qt自带的rotation程序完成,具体步骤如下:

(1)          编译qtopia/src/settings/rotation目录下的rotation程序,详细编译过程在本文档后面介绍

(2)          将编译好的rotation拷贝到/home/nfs/qtopia/bin目录下

(3)          创建一个启动rotation的脚本文件rotation.bat,文件详细内容在本文档后面

(4)          启动目标板

(5)          等Linux启动后,运行qtopia/bin/rotation.bat

(6)          在LCD显示的旋转屏幕界面中,选择要旋转的角度,然后点“ok” 退出。

 

2、      关键步骤说明

(1)编译rotation

编译rotation程序很简单,进入qtopia/src/settings/rotation目录后,新建一个makerotation文件用于编译rotation程序,该文件的内容如下:

#############################################################

# The IP of Winhost Loopback Adpter should be set 192.168.1.1

export PATH=/usr/local/arm/2.95.3/bin:$PATH 

export TOPDIR=/home/xiyong/pda/native_view

export QTDIR=$TOPDIR/qte

export QPEDIR=$TOPDIR/qtopia

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QTDIR/lib:$QPEDIR/lib

export PATH=/root/tmake-1.11/bin:/root:/usr/sbin:/sbin:$PATH

export TMAKEPATH=$HOME/tmake-1.11/lib/qws/linux-ipaq-g++

 

#############################################################

tmake rotation.pro -o Makefile

make

运行makerotation文件即可编译rotation程序(Makerotation的权限必须是可执行的)。

 

(2)运行rotation程序

在/home/nfs/qtopia/bin目录下新建一个rotation.bat文件用于运行rotation程序,rotation.bat的详细内容如下:

#!/bin/sh

export LANG=zh_CN

export TZ=Asia/Beijing

export QTDIR=/qtopia

export QPEDIR=/qtopia

export KDEDIR=/qtopia

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QPEDIR/lib

export PATH=$PATH:$QPEDIR/bin:$QPEDIR/lib

export IPKG_CONF_DIR=$QPEDIR/etc 

./rotation -qws &

Linux启动后,运行qtopia/bin/rotation.bat文件即可运行rotation程序。

 

(3)qpe.conf

使用rotation旋转完屏幕后,rotation将在qpe.conf保存设置。Qpe.conf位于nfs文件系统的home/Settings目录下。如果屏幕旋转270度,文件的[rotation]的screen将被设置成如下形式: 

Screen = Transformed:Rot270:0

 

二、       旋转字体

屏幕旋转完成后

1、将下载的simsun.ttf字库文件拷贝到qte/lib/fonts目录下

2、编辑qte/lib/fonts/fontdir文件为如下内容:

simsun simsun.ttf FT n 50 120 u

simsun simsun.ttf FT n 75 120 u

       注:

Simsun:字体名字

Simsun.ttf: 字体文件名

FT: FreeType

n: 正常字体(i表示斜体)

50:不是粗体;75:粗体

120:12号字体

u:使用unicode

 

3、进入qte/tools/qvfb/bin,输入如下指令运行qvfb 

export LANG=zh_CN

export TZ=Asia/Beijing

export QTDIR=/Qtopia

export QPEDIR=/Qtopia

export KDEDIR=/Qtopia

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QPEDIR/lib

export PATH=$PATH:$QPEDIR/bin:$QPEDIR/lib

export IPKG_CONF_DIR=$QPEDIR/etc 

./qvfb &

Qvfb运行后,会出现如下界面:

4、进入qte/tool/hpc_font目录,运行如下指令启动字体翻转工具程序makeqpf:

#!/bin/sh

export LANG=zh_CN

export TZ=Asia/Beijing

export QTDIR=/home/xiyong/pda/native_view1/qte

export QPEDIR=/home/xiyong/pda/native_view1/qtopia

export KDEDIR=/qtopia

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QPEDIR/lib

export PATH=$PATH:$QPEDIR/bin:$QPEDIR/lib

export IPKG_CONF_DIR=$QPEDIR/etc 

./makeqpf  -display Transformed:Rot270

以上指令用于制作翻转270度的字库文件,制作其它的字库文件只需将270改为90,180,0等。Makeqpf运行后将出现如下界面:

 Makeqpf运行后,用鼠标点击列表中的字体文件,完成字库的翻转。字库转换完成后,qte/lib/fonts目录下将出现翻转的qpf字库文件。 

5、将字库文件拷贝到nfs文件系统的qtopia/lib/fonts目录下,编辑fontdir文件为如下内容:

simsun simsun_120_50_t5.qpf QPF n 50 120 u

simsun simsun_120_50.qpf QPF n 50 120 u

simsun simsun_120_50_t10.qpf QPF n 50 120 u

simsun simsun_120_50_t15.qpf QPF n 50 120 u

注:qtopia/lib/fonts下的字库文件要与fontdir文件中定义的字库文件相对应。

阅读(2648) | 评论(1) | 转发(1) |
给主人留下些什么吧!~~

chinaunix网友2010-08-31 10:36:21

Download More than 1000 free IT eBooks: http://free-ebooks.appspot.com