web-dev-qa-db-ja.com

スクリーンを時計回りに90度回転

NVidia GForce N430を搭載した新しいコンピューターを入手し、新しいUbuntu 11.10 AMD64をインストールしました。

また、「追加ドライバー」aptを使用してnvidiaドライバーを有効にし、すべてが「通常」モードで正常に動作していますが、画面を回転させたいため、うまくいきません。

以前のインストールでは、IIRCはnvidia-settings UI内にローテーションのエントリがありましたが、このバージョンにはありませんでした。

2つの画面を使用しており、時計回りに90度回転させて使用します(縦向きと横向き)。

X11/xorg.congファイルをダンプしていますが、Option "RandRRotation" "True"行を追加する場所を教えていただければ幸いです。

ところで、

$ xrandr -o right

印刷する

X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  153 (RANDR)
  Minor opcode of failed request:  2 (RRSetScreenConfig)
  Serial number of failed request:  14
  Current serial number in output stream:  14

/ etc/X11/xorg.confの内容

$ cat /etc/X11/xorg.conf

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 280.13  (buildd@allspice)  Thu Aug 11 20:54:45 UTC 2011


Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "Philips 225P"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Philips 225P"
    HorizSync       30.0 - 83.0
    VertRefresh     56.0 - 76.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 430"
    BusID          "PCI:4:0:0"
    Screen          1
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GT 430"
EndSection

Section "Screen"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "TwinView" "0"
    Option         "metamodes" "DFP-1: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"

# Removed Option "TwinView" "0"
# Removed Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "metamodes" "DFP-0: nvidia-auto-select +1680+0, DFP-1: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection
7

Xorg.confファイルでドライバーが「nvidia」としてリストされているDeviceセクションの後に次の行を追加する必要があります。

Option "RandRRotation" "on"

例:

Section "Device"
    Identifier  "Default Device"
    Driver  "nvidia"
    Option  "RandRRotation" "on"
EndSection

ファイルを保存してからログアウトし、再度ログインしてXserverを再起動します。

次のxrandrコマンドを使用して、画面を回転させます。

xrandr -o leftは左に回転し、xrandr -o rightは右に回転し、xrandr -o normalは通常の画面に戻り、xrandr -o invertedは画面を上下逆にします。

参照

7
Mark Rooney

Lenovo Yoga 2で動作するスクリプトをGistで作成しました。そのため、識別子文字列を調整する必要があります。

rotate-screen.sh (Gist.github.comで)

0
rubo77