有没有办法根据分辨率设置存储触摸屏校准?

有没有办法根据分辨率设置存储触摸屏校准?

我有一台配备全高清触摸屏的 t440s。正常使用时,它运行良好,因此非常感谢所有让这款产品开箱即用的人!

问题是,我还喜欢用它在课堂前现场“画”一些小图画来阐明我的讲座(我是一名教师)。要做到这一点,内置屏幕必须与投影仪的屏幕相同,包括使用后者的分辨率。在我们大学里,分辨率从 800x600 到 1280x1024 不等。

当切换到较小的非原生分辨率时,触摸屏不再正确映射到屏幕上的图片。现在,我已经发现xinput-calibratorhttp://www.freedesktop.org/wiki/Software/xinput_calibrator/),并且它再次运行良好:

唯一的问题是我必须校准每次我切换分辨率。有没有办法让 Ubuntu 记住每个分辨率的不同校准,并在我改变屏幕分辨率时自动切换?

答案1

当使用 4:3 分辨率时,以下脚本可以为我修复触摸屏。

#!/bin/sh

# When you select a 4:3 resolution, the touchscreen and pen input aren't
# scaled correctly.  Run this script to fix it.  Each time you set the
# resolution, the matrix is reset to the identity, so we don't need a
# script that undoes this.  Adjust the device names as needed.

touchid=`xinput list | grep 'Finger touch' | sed 's/.*id=//' | sed 's/\t.*//'`
penid=`xinput list | grep 'Pen stylus' | sed 's/.*id=//' | sed 's/\t.*//'`
eraserid=`xinput list | grep 'Pen eraser' | sed 's/.*id=//' | sed 's/\t.*//'`

for d in $touchid $penid $eraserid; do
  xinput set-prop --type=float $d "Coordinate Transformation Matrix" 1.333 0 -0.1667 0 1 0 0 0 1
done

相关内容