#はじめに
諸事情あってディスプレイへの出力を左右反転させる必要があった。(要は鏡に写した状態)
が、検索しても見つかるのは画面を回転させる方法ばかりで一向に反転する方法が見つからなかったのでメモ。
#この記事によってできること
- ディスプレイへの出力の上下、左右、または両方を反転させる
- ディスプレイへの出力の上下、左右を回転させる(オマケ)
調べても出てこないし、GUIで設定ができないので出力を反転する方法から先に書く。(こっちの方が圧倒的に困ってる人多そうだし)
#環境
$ uname -a
Linux kali 4.18.0-kali2-amd64 #1 SMP Debian 4.18.10-2kali1 (2018-10-09) x86_64 GNU/Linux
debian系でしか検証していません。
それ以外で動かなかったらごめんなさい。
画面出力を反転
方法は簡単でターミナルで
$ xrandr -x
と叩くだけ。
外部接続のディスプレイなら、
$ xrandr
Screen 0: minimum 320 x 200, current 2166 x 768, maximum 16384 x 16384
eDP connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1366x768 60.00*+ 48.00
1280x720 60.00
1024x768 60.00
800x600 60.00
640x480 60.00
HDMI-A-0 connected 800x480+1366+0 inverted (normal left inverted right x axis y axis) 255mm x 255mm
800x480 59.98*+
640x480 75.00 72.81 60.00 59.94
720x400 70.08
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
でディスプレイの名前を調べてから(ここではeDPとHDMI-A-0の部分が名前に相当する)
$ xrandr --output HDMI-A-0 --reflect x
とすればHDMI-A-0という名前のディスプレイのX(左右)を反転することができる。
##コマンドまとめ
メインのディスプレイなら
#左右反転
$ xrandr -x
#上下反転
$ xrandr -y
#上下左右反転は上記二つを組み合わせる
$ xrandr -x
$ xrandr -y
外部のディスプレイ(ここではHDMI-A-0)に設定を適応させるなら、
#左右反転
$ xrandr --output HDMI-A-0 --reflect x
#上下反転
$ xrandr --output HDMI-A-0 --reflect y
#上下左右反転
$ xrandr --output HDMI-A-0 --reflect xy
#元に戻す
$ xrandr --output HDMI-A-0 --reflect normal
画面出力を回転
一応回転の方も説明(こっちはGUIでもできるけど)
#上下回転
$ xrandr -o inverted
#左を頂点とした縦向き
$ xrandr -o left
#右を頂点とした縦向き
$ xrandr -o right
#元に戻す
$ xrandr -o normal
外部のディスプレイに設定を適応させるなら、
#上下回転
$ xrandr --output HDMI-A-0 --rotate inverted
#左を頂点とした縦向き
$ xrandr --output HDMI-A-0 --rotate left
#右を頂点とした縦向き
$ xrandr --output HDMI-A-0 --rotate right
#元に戻す
$ xrandr --output HDMI-A-0 --rotate normal
でディスプレイをソフトウェア的に回転させることができる。
結論
xrandrは神。
結構頑張って探したのに出てこなかったのでもうダメかと思ったが意外と簡単に解決できて満足。
多分同じことで悩んでいる人も多いはずなのでこの記事が役に立ってほしい。