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


123

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解像度を使用する方法はありますか?


3
さて、LCD画面を非ネイティブ解像度で駆動するとぼやけて見えます。これは、ピクセルが固定された方法でレイアウトされ、信号がこれと一致しないためです。正確に何を期待していますか?おそらくスケーリングを無効にしますか?しかし、それは画面の中央にのみ表示され、フルスクリーンではありません。最適な表示のためには、常にネイティブの画面解像度でディスプレイを維持してください。これはUbuntuとは関係ないと思います。
gertvdijk

2
@gertvdijk:両方のモニターをネイティブの画面解像度に保つ方法はありますか?それがアンソニーが求めていることだと思います。
beldaz

2
@beldaz私の返信は、質問の改訂1に対するものでした。当時はデュアルスクリーンのセットアップに関連することは何も言及していませんでした。質問が大幅に変更されたため、この日付以降に変更された投稿の眉が上がります。それは基本的には貢献したものをすべて無効にし、本当に支援する動機を低下させます。私の意見では、ユーザーは代わりに新しい質問をする必要があります。
gertvdijk 14年

@gertvdijk申し訳ありませんが、今は理にかなっています。
beldaz

最新のUbuntuでWaylandを使用する可能性があるため、これを簡単に解決できるのではないかと思います。
mkataja

回答:


120

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

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

現在、私はUbuntu 14.10とGNOME Shell 3.12.2を使用していますが、これにはかなり使いやすいHiDPIサポートがあります。したがって、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-仮想画面(フレームバッファ)のセットサイズ(重要これなしでは、あなたは、画面の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

7
error of failed request: BadValue (integer parameter out of range for operation):-(
Juh_

4
この--fbオプションは、2x2画面の4分の1以上しか有効にしないようです(マウスカーソルを左上の象限を超えて移動することはできません)
EoghanM

2
スケーリングは機能しますが、HiDPIを失いますか?すべてが拡大縮小してぼやけて表示されます。
アンディ

8
3200x1800 hiDPIラップトップの左側に1920x1080の外部モニターを設置するサイドバイサイドセットアップの場合:xrandr --output eDP1 --scale 1x1 --pos 3840x0 ; xrandr --output HDMI1 --scale 2x2 --mode 1920x1080 --fb 7680x2160 --pos 0x0
Daniel Bower

2
--fbパラメーターは2 *外部モニター+ラップトップ画面です
ブライアンC.

10

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

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

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

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

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

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

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

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

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


1
フォントサイズの増加に関する注意事項と同じです。むしろ、DPIを増やして、ユーザーインターフェイス全体をスケーリングします。これは自動的に正しく認識されるはずです(ディスプレイからEDIDを読み取る)が、それが失敗する場合:画面DPIを見つけて変更する方法は?
gertvdijk

23
実際、それは私の質問に対する答えではありません。解像度の異なる2つの異なる画面を使用しています。私は計算を行いました:左のメインLCD画面は94x94 DPIの解像度を持っている必要がありますが、右のラップトップ画面は235x235 DPIを持っている必要があります... Xを分離し、左から右に1つのウィンドウを渡すことはできません... Windowsはその問題を処理するためにはるかに優れています:(
Anthony O. 14年

9
-1-質問のポイントを完全に無視したため
Martin Konecny 14

8
@AnthonyO。気に入らない回答が投稿された後、質問を大幅に変更しないでください。この回答が投稿された時点では、デュアルスクリーンのセットアップに関連することは何も言及していませんでしたリビジョン1を参照)。質問を変更すると、すでに投稿されているものはすべて無効になります。代わりに、質問の編集を元に戻し、代わりに新しい質問を投稿してください。
gertvdijk 14年

5
@MartinKonecny元の質問者は質問を大幅に編集しましたが、この回答は元の質問に回答し、改訂を確認します。
ジェイミーキットソン

7

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

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

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

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

ここで--scaleは、eDP1に送られるすべてを1/2に減らすために使用されます。-パンニングは、DP1-2のすぐ右側の位置(+ 3840 + 0)で、元のフレームバッファーのeDP1と同じです。+ 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を変更し、クライアントを再起動せずに使用する方法を知りません。


パンはパズルの最後のピースでした。画面の問題の4分の1でカーソルが動かなくなる問題を解決しました。ありがとう、ブライアン!
rtindru

2
「2回実行」???? 神聖なピクセル、それは機能します(既にパンを適用していましたが、同じコマンドを2回実行した場合にのみ正しく適用されます)。
リッカルド・ガリ

ええ、私はそれを実行するたびにそれが機能していることに気づいたので、私はそれを2回試してみると思いました、そして、ここにいます。
ブライアンC.

さて、これはカーネル4.5.2では動作しません。4.5.1でdocker関連の問題に対処するためにそのカーネルのみをインストールしましたが、上記のスクリプトでは黒い画面が残ります。4.5.2でこれを修正するには、まず--offを指定せずにeDP1コマンドを実行し、次にDP1-2コマンドを実行します。
ブライアンC.

1
最後に、パンニングで作業しました!しかし、まだグリッチのあるマウスと画面があります(xrandrを使い始めたため)。何か案が?
hsandt

4

次の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

または

外部モニター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はどちらも、部分的に機能するコマンドラインバンドエイドの修正に頼ることなく、これを解決しました(ゲームではティアリングの問題は受け入れられません)


1
これは新しい答えですか、それともバグを報告しようとしていますか?
user68186

既存の回答に関する詳細であり、活用できるオプションがさらにあります。上記の@artemが提供する回答は、これらの設定がどのように機能するかを説明しています。QHDまたはFHD外部モニターと4Kプライマリモニター/ラップトップモニターのどちらかを持っている人にそのまま使用できる2つのオプションを提供しようとしました。バグは、このソリューションで見られる引き裂きにあります。それはこのアプローチに固有のものです。
ジーツ

2
4kの急増と複数解像度のセットアップにより、これには解決が必要な最後の段落に同意します。以前はそれほど悪くはありませんでしたが、今では1台のモニターでセットアップを破壊しているだけで、4kになりました。Ubuntu 18 LTSでこれが修正されることを願っています。
ニューロネット

3
それは2018年...まだ同じsh1t:)
ステファノスカランツィス

Waylandはこれに最適です。それがこのためだけである場合を除いて... wayland + kdeでも良い経験を得ました。gnome+ waylandよりも良いです。Xでのみ動作する一部のソフトウェアのサポート不足と安定性の問題により、私はXに戻りました。2018
ビクター

4

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

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

これは興味深いことであり、間違いなく誰かに役立つように思えますが、これがこの質問に対する答えとして属しているかどうかは正確にはわかりません。たぶん、あなたは開いて自分の質問に答えるべきですか?よくわからない。
ヒジン

1
@エミリー:この答えはここにあると思います。今日、artemの回答を使用し、ONECoreに述べられている正確な問題がありました(画面の左上の象限のみがマウスで使用できました)。幸いなことに、私はこの答えを見て、すぐにパンが機能しました。
BrainCore

ええ、申し訳ありませんが、@ artemの回答への返信にしたかったのですが、Stackexchangeは非常に素晴らしく、50ブラウニーポイントを獲得するまで返信できません。
ONECore

また、これは永続的ではないようですので、xorg.confに追加しない限り、再起動するたびに消えます。ただし、そこに追加すると、その設定が何であっても強制されます(モニターを接続しないこともあります)。したがって、シェルを作成して、必要なときに実行するだけで簡単に実行できます。上記のコードを.shで終わるテキストファイル(resolution.shなど)に追加し、ターミナルで「chmod 0700 resolution.sh」で実行可能にします。
ONECore

@BrainCoreと同様にあなたの経験を共有してくれてありがとう!
喜ジン

1

古い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などに感謝します!


これは一時的に機能しますが、再起動しても動かなくなります。arandrここで実行していることを実行するためのスクリプトを見つけて、bashrcなどにすべてを入力する必要があると思います。ありがとう!
マックスフォンヒッペル

arandrは設定ファイルをエクスポートできます。デスクトップにファイルを設定し、再起動するたびにそれをarandrに送りました。スクリプトを開発しなかったので、モニターを入手し、arandrを使用しなくなりました。
フアンラヌス

0

$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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.