Ubuntu屏幕旋转后触屏出问题解决方法

2023年 8月 7日 52.9k 0

  • 本文目录导读:
  • 前言
  • 问题描述
  • 问题原因
  • 解决方法
  • 方法一:修改xinput配置文件
  • 方法二:使用xrandr命令
  • 小结
  • 小知识分享
  • TAGS
  • 前言

    作为一名Linux爱好者,我喜欢使用Ubuntu操作系统。我在使用Ubuntu时遇到了一个问题,屏幕旋转后触屏出现了问题。在解决这个问题的过程中,我学到了很多有用的知识,现在我将在这里向大家分享。

    问题描述

    在使用Ubuntu时,我们可以通过屏幕旋转来调整屏幕方向。当我把屏幕旋转到横向时,触屏出现了问题。触屏的坐标系没有跟随屏幕旋转而改变,导致触屏的位置和点击操作出现了偏差。

    问题原因

    这个问题的根本原因是,触屏的驱动程序没有正确地识别屏幕旋转的信息。它仍然按照竖向的坐标系来处理触摸事件,导致了偏差。

    解决方法

    经过一番研究和尝试,我找到了以下两种解决方法。

    方法一:修改xinput配置文件

    xinput是一个命令行工具,可以用来管理输入设备。我们可以通过修改它的配置文件来解决屏幕旋转后触屏出现的问题。

    打开终端,输入以下命令来查看当前的输入设备列表:

    ```

    xinput list

    找到触屏对应的设备ID,例如:

    ⎡ Virtual core pointer id=2 [master pointer (3)]

    ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]

    ⎜ ↳ ELAN Touchscreen Pen id=12 [slave pointer (2)]

    ⎜ ↳ ELAN Touchscreen id=13 [slave pointer (2)]

    我的触屏设备ID是13。

    输入以下命令来查看该设备的属性:

    xinput list-props 13

    找到"Coordinate Transformation Matrix"属性,它的值应该是默认的:

    Coordinate Transformation Matrix (132): 1 0 0 0 1 0 0 0 1

    我们需要修改它的值,使得触屏的坐标系能够跟随屏幕旋转而改变。我们需要将它的值修改为:

    0 1 0 -1 0 1 0 0 1

    这个矩阵实际上是一个旋转和翻转的组合,可以将竖向坐标系转换为横向坐标系。修改的命令如下:

    xinput set-prop 13 "Coordinate Transformation Matrix" 0 1 0 -1 0 1 0 0 1

    保存修改后,重新启动X服务器即可生效。输入以下命令:

    sudo service lightdm restart

    方法二:使用xrandr命令

    xrandr是另一个命令行工具,可以用来管理显示器和屏幕。我们也可以使用它来解决屏幕旋转后触屏出现的问题。

    打开终端,输入以下命令来查看当前的显示器列表:

    xrandr

    找到当前使用的显示器,例如:

    Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767

    eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 309mm x 173mm

    1920x1080 60.02*+

    1400x1050 59.98

    1280x1024 60.02

    1280x960 60.00

    1024x768 60.00

    800x600 60.32 56.25

    640x480 59.94

    DP1 disconnected (normal left inverted right x axis y axis)

    HDMI1 disconnected (normal left inverted right x axis y axis)

    我的显示器是eDP1。

    输入以下命令来旋转屏幕:

    xrandr --output eDP1 --rotate left

    这个命令将屏幕旋转90度。如果需要旋转180度或270度,可以分别使用以下命令:

    xrandr --output eDP1 --rotate inverted

    xrandr --output eDP1 --rotate right

    旋转后,触屏会出现偏差。我们可以使用以下命令来修正它:

    xinput set-prop 13 "Coordinate Transformation Matrix" 0 -1 1 1 0 0 0 0 1

    这个矩阵将触屏的坐标系旋转90度,并将y轴翻转。修改后,重新启动X服务器即可生效。

    小结

    屏幕旋转后触屏出现问题是一个很常见的问题。我们可以使用xinput或xrandr命令来解决它。通过修改输入设备的坐标系,我们可以让触屏跟随屏幕旋转而改变。这个方法不仅适用于Ubuntu,也适用于其他Linux发行版。

    小知识分享

    在Ubuntu中,我们可以使用"apt-get"命令来安装软件包。有时候我们需要安装一个没有包含在官方软件源中的软件包。我们可以使用"dpkg"命令来手动安装.deb文件。

    我们可以使用以下命令来安装Google Chrome浏览器:

    sudo dpkg -i google-chrome-stable_current_amd64.deb

    这个命令将.deb文件安装到系统中,并自动解决依赖关系。如果出现依赖关系问题,我们可以使用"apt-get -f install"命令来解决它。

    TAGS

    Ubuntu, 屏幕旋转, 触屏, xinput, xrandr, 小知识

    相关文章

    服务器端口转发,带你了解服务器端口转发
    服务器开放端口,服务器开放端口的步骤
    产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
    如何使用 WinGet 下载 Microsoft Store 应用
    百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
    百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

    发布评论