Linux上Qt旋转显示
阅读原文时间:2023年07月08日阅读:1

对于嵌入式设备来说用于显示的LCD总是千奇百怪,比如说明明是一个竖屏,但是客户却要当横屏使用,也就是意味着我们需要将整个屏幕上显示的内容旋转90度或者270度。

这个操作对于Android系统来说相当简单,系统有接口直接可以使用,但是在Linux上确实没找到可以这么干的接口,在我的实际项目中就经常遇到Qt做的界面应用需要做旋转处理来适应不同的LCD。

但是我们可以通过配置环境变量来告知Qt。

export QT_ROOT=/usr/local/Qt-5.4.1/
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:/usr/lib/cedarx/:$LD_LIBRARY_PATH
export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins
export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
export QT_QPA_FONTDIR=$QT_ROOT/lib/fonts
export LD_PRELOAD=/usr/lib/libts.so
export QWS_MOUSE_PROTO=Tslib:/dev/input/event3
export TSLIB_TSDEVICE=/dev/input/event2
export QT_QPA_PLATFORM=eglfs
export QT_QPA_GENERIC_PLUGINS=tslib
export QT_QPA_EGLFS_ROTATION=90
export QT_QPA_FB_HIDECURSOR=1

QT_QPA_EGLFS_ROTATION=90
表示旋转90度。