web-dev-qa-db-ja.com

2つの異なる画面に異なるDPI構成を設定することはできますか?

Quadro K2100MグラフィックカードにUbuntu 12.04.3とNVidiaドライバー(319)を使用しています。メインの3200x1800ラップトップ画面をモード1920x1080(nvidia-settingsを使用)に切り替えると、ディスプレイがぼやけます...

私は2つの画面を使用しています:

  • 私のメイン画面は、最大解像度1920x1200のLCDです。
  • 私のラップトップ画面(元の解像度3200x1800)はその右側にあります。

主な問題は、Ubuntuでは、私のラップトップ画面でフォントが小さすぎることです。そのため、ラップトップの解像度を1920x1080に変更したかったのです。

Galgaleshの答え を読んで、 DPIの計算 を試みましたが、これが必要なDPI構成です:

  • メインLCD画面1920x1200の94x94
  • 3200x1800ラップトップ画面で235x236

拡張デスクトップでデュアルDPI解像度を使用する方法はありますか?

119
Anthony O.

人々はいまだにいくつかのモニターとHiDPIディスプレイを操作しようとして苦労しているようです。良い回避策はArch wiki https://wiki.archlinux.org/index.php/HiDPI#Multiple_displays で説明されています。ので、私は持っています:

  • ノートパソコンasus ln303ux:3200x1800、
  • 外付けモニター:1920x1200

今では、かなり使いやすいHiDPIサポートを備えたUbuntu 14.10とGNOME Shell 3.12.2を使用しています。したがって、HiDPIのすぐに使えるサポートを使用します-スケーリング係数は2です(GUIで設定できます)。つまり、外部モニターでは、すべてが許容範囲の2倍になります。したがって、私はxrandrを使用します。しかし、ラップトップ画面を縮小する代わりに、外部モニター画面をアップスケールします。

xrandr --output HDMI1 --scale 2x2 --mode 1920x1200 --fb 3840x4200 --pos 0x0
xrandr --output eDP1 --scale 1x1 --pos 320x2400

だから、一つずつ:

  1. --output HDMI1は私の場合、外部画面、eDP1はラップトップ画面です。
  2. --scale 2x2-外部画面のすべてを2倍小さくする
  3. --mode XxY-画面の解像度を明示的に設定します(既に設定されている場合は不要です)
  4. --fb XxY-仮想画面(フレームバッファ)のサイズを設定(importantこれなしでは、4番目の部分のみを使用できます画面)。私の場合、1つの画面が別の画面の上にあったため、有効な高さ2400 + 1800 = 4200を合計しました。また、最大フレームバッファサイズはxorg.confで指定される場合があり、それを超えることはできません(xrandr -q出力の最初の行に書き込まれます)。
  5. --pos XxY-私の場合、画面の絶対位置を設定しているため、ラップトップ画面は外部画面の下部に直接配置されます。ここでの値Yは、外部モニターの高さの2倍です。

そしてこれがそれです!すべてが可能な限り鮮明です。

参考:画面の名前と使用可能な解像度を取得するには、xrandr --currentを実行します。解像度の設定の詳細については、 https://wiki.ubuntu.com/X/Config/Resolution を参照してください。

更新-オプション2:GTK3をサポートするアプリケーションのもう1つの興味深い回避策。通常、大画面で1つのアプリケーション(leksahなどのIDEなど)のみを使用する場合、画面のサイズを変更せず、元のサイズにスケーリングされたアプリケーションを実行します

env GDK_SCALE=0.5 GDK_DPI_SCALE=0.5 CLUTTER_SCALE=0.5 appname
116
artem

なぜぼやけているのですか?

画面には常に3200x1800ピクセルが表示されます。コンピューターの画面解像度を下げると、画面に合わせて画面を拡大縮小しなければならないことを意味します。ネイティブ解像度と現在の解像度の比率に応じて、そのスケーリングはぼやけた画像を生成します。

スケーリングとネイティブ解像度の詳細については、こちらをご覧ください: https://en.wikipedia.org/wiki/Native_resolution

テキストを大きくするにはどうすればよいですか?

テキストが小さい場合、2つのオプションがあります。

1. Ubuntuのフォントサイズを変更する

フォントを変更してサイズを調整するにはどうすればよいですか

2. DPIを変更します(テキストだけでなく、インターフェイス全体が大きくなります)

画面DPIを見つけて変更する方法 (@whtygerによる回答)

9
Galgalesh

Artmemのソリューションを使用しましたが、EoghanMが言及したマウスの問題に遭遇しました。 --panningに関連して彼がリンクした古いバグレポートで見つけた回避策。

私が撮影しているのは:-ネイティブDIPのDP1-2 3840x2160。 -eDP1 1366x768、DP1-2の右側に合理的に見えるようにスケーリング。

DP1-2 +(2x eDP1)のようなフレームバッファーを使用してこれを実現し、eDP1に向かうすべてを1/2にスケーリングします。

これは単純なはずですが、xrandrは少し注意が必要です。

ここで--scaleはeDP1に送られるすべてを1/2に減らすために使用されます。 -パンニングは、元のフレームバッファーのeDP1と同じで、DP1-2のすぐ右側に位置(+ 3840 + 0)があります。 + 0 + 2160はその下になります。

xrandr -d :0 --fb 6572x3696 --output DP1-2 --mode 3840x2160 --scale 1x1 --rate 60 --pos 0x0 --primary

# sometimes panning get applied incorrectly when switching from some other mode, running it twice is a work around
xrandr -d :0 --output eDP1 --off
xrandr -d :0 --fb 6572x3696 --output eDP1  --mode 1366x768  --scale 2x2 --panning 2732x1536+3840+0
xrandr -d :0 --fb 6572x3696 --output eDP1  --mode 1366x768  --scale 2x2 --panning 2732x1536+3840+0

また、Xft.dpiを185に設定します

$ cat ~/.Xresources
Xft.dpi: 185

私が実行する外部モニターからプラグを抜くとき:

xrandr -d :0 --output DP1-2 --off
xrandr -d :0 --fb 2732x1536 --output eDP1  --mode 1366x768  --scale 2x2 --panning 2732x1536+0+0 --pos 0x0 --primary

それは見栄えがよくありませんが、私は私の机からあまり離れていません。これを回避するには、Xft.dpiを変更し、すべてのデスクトッププログラムを再起動します。 Xft.dpiを変更し、クライアントを再起動せずに使用できるようにする方法がわかりません。

7
Brian C.

これらの答えはすべて素晴らしいものであり、以前私を助けましたが、最近の

Sudo apt-get upgrade 

randr-configを削除しました!設定を復元しようとすると、-fb入力に関係なく、2番目の画面の上部1/4象限を超えてマウスを取得できなくなりました。から https://wiki.archlinux.org/index.php/HiDPI#Side_display 最終的に、パンを追加するとうまくいくことがわかりました。また、「-right-of」または「--left-of」の使用は「--pos」よりも簡単です。

「一般的に、HiDPIモニター(ラップトップ)がAxBピクセルで、通常のモニター(外部)がCxDであり、[ExF]でスケーリングする場合、right-ofのコマンドラインは次のとおりです。」

xrandr --output eDP-1 --auto --output HDMI-1 --auto --panning [C*E]x[D*F]+[A]+0 --scale [E]x[F] --right-of eDP-1
4
ONECore

次のgithubのディスカッションで概説されている詳細を使用して、これを(問題を伴って)解決できました。 https://github.com/linuxmint/Cinnamon/issues/3606

外部モニターQHD(2560X1440)、内部/ラップトップモニター3200x1800

xrandr --output eDP-1 --scale 1x1 --pos 0x2880
xrandr --output DP-1 --mode 2560x1440 --scale 2x2 --fb 5120x4680

OR

外部モニターFHD(1920x1080)、内部/ラップトップモニター3200x1800

xrandr --output eDP-1 --scale 1x1 --pos 0x2160
xrandr --output DP-1 --mode 1920x1080 --scale 2x2 --fb 3840x3960

これらは機能しますが、ウィンドウを移動したり、画面のサイズを変更したり、ブラウザでスクロールしたりすると、高解像度モニター(ラップトップ)が破損する可能性があります。これは、ソフトウェアレンディングソリューションのように感じられます(これには、すべてのこれらの問題があり、更新が遅い)。

2017年のLinux/Gnomeは、マルチモニター、混合スケーリングソリューションに対応する必要があります。 Windows 10とOS Xの両方で、部分的に機能するコマンドラインバンドエイドの修正に頼ることなく、これを解決しました(ゲームではティアリングの問題は受け入れられません)

4
Jeets

古い1024x768モニターを(あまり古くない)ノートブックに接続しています。
ウィンドウは非常に異なるサイズでレンダリングされ、外部モニターでは大きくなります(古いモニターでは、ドットピッチが大きくなります)。
モニターをスケーリングするコマンドを見つけました:

xrandr --output VGA-1 --scale 1.5x1.5

VGA-1は、次のコマンドを実行して検出されたモニターの内部名です。

xrandr --current | grep connected

これにより、古いモニターのコンテンツがノートブックとほぼ同じサイズで表示されるようになりました。

不思議なことに、それはx1.5をスケーリングしますが、1.45ではなく、ディスプレイ(私の場合)は黒になります。

両方の画面の内容が重複しているため、最初に結果が恐ろしかったときにスケールコメントを実行しました。たとえば、カーソルポインターが2回現れました。

私はプログラムを実行しました:

arandr &

相対的な画面位置を設定して修正します。
[設定]> [デバイス]> [ディスプレイ]設定と同様に機能します。

私はそれをインストールしました:

Sudo apt-get install arandr

あなたの知識を共有してくれた@LuisAlvaradoなどに感謝します!

0
Juan Lanus

$xrandrを最初に実行して、すべての出力を表示します

Screen 0: minimum 320 x 200, current 7680 x 2160, maximum 8192 x 8192
eDP-1 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   3840x2160     60.00*+  59.98    59.97  
   3200x1800     59.96    59.94  
   2880x1620     59.96    59.97   
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected 3840x2160+3840+0 (normal left inverted right x axis y axis) 521mm x 294mm
   1920x1080     60.00*+  50.00    59.94  
   1920x1080i    60.00    50.00    59.94  
   1680x1050     59.88  
   1280x1024     75.02    60.02

この例でわかるように、2番目のモニターはDP-3に接続されています。その後、ディスプレイを再販できます:$xrandr --output DP-3 --auto --scale 2x2

0
Abdelhak