1. 程式人生 > >解決ubuntu下外接2k顯示器卻無法調2k解析度問題

解決ubuntu下外接2k顯示器卻無法調2k解析度問題

網上都是一些使用cvt來設定,但是有些顯示器需要cvt -r才能成功。

1. 準備

先檢視顯示輸出裝置

1
xrandr

顯示如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Screen 0: minimum 320 x 200, current 2560 x 1440, maximum 8192 x 8192
eDP-1 connected (normal left inverted right x axis y axis)
   1920x1080     60.00 +  59.93    40.00  
   1680x1050     59.95    59.88  
   1600x1024     60.17  
   ... 
   400x300       60.32    56.34  
   320x240       60.05  
VGA-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 connected primary 2560x1440+0+0 (normal left inverted right x axis y axis) 553mm x 311mm
   1920x1080     60.00    50.00    59.94  
   1920x1080i    60.00    50.00    59.94  
   ... 
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08

根據顯示,其中有3個輸出裝置,一個是eDP-1,即筆記本自帶螢幕,第二個是VGA-1,是筆記本上面的VGA介面,沒有在用,正在使用的是HDMI-1,而裡面的解析度最高只有1920x1080,所以需要往裡面新增解析度選項。

2. 設定解析度

需要新增的是2560x1440解析度,可用cvt檢視2k解析度需要使用的引數:

1
cvt 2560 1440

顯示如下:

1
2
# 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHz
Modeline "2560x1440_60.00"  312.25  2560 2752 3024 3488  1440 1443 1448 1493 -hsync +vsync

接下來需要使用輸出結果中的Modeline後面的引數,即"2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync這段

1
2
3
4
5
6
7
8
# 用xrandr新建解析度
xrandr --newmode "2560x1440_60.00"  312.25  2560 2752 3024 3488  1440 1443 1448 1493 -hsync +vsync

# 將新模式新增進HDMI-1解析度列表
xrandr --addmode "2560x1440_60.00"

# 設定當前輸出為2k解析度
xrandr --output HDMI-1 --mode "2560x1440_60.00"

設定完解析度後螢幕經過短暫黑屏,然後亮屏,可以看到解決了。

3. cvt使用-r引數

此時對於大多數人來說解析度已經設定成功了,但是偏偏我的不行,設定完發現解析度仍沒有改變,在黑屏亮屏之後看到這樣一行報錯:

1
xrandr: Configure crtc 0 failed

對於個別LCD顯示器(例如samsung 2343NW),可能需要用到”cvt -r” (具有減少空白顯示的效果)命令。

於是使用cvt -r繼續

1
2
3
4
5
6
cvt -r 2560 1440
# 2560x1440 59.95 Hz (CVT 3.69M9-R) hsync: 88.79 kHz; pclk: 241.50 MHz
Modeline "2560x1440R"  241.50  2560 2608 2640 2720  1440 1443 1448 1481 +hsync -vsync
xrandr --newmode "2560x1440R"  241.50  2560 2608 2640 2720  1440 1443 1448 1481 +hsync -vsync
xrandr --addmode HDMI-1 2560x1440R
xrandr --output HDMI-1 --mode 2560x1440R

最後成功設定成2k解析度,很清晰,但是圖示和字型有點小,檢視xrdb -q顯示如下

1
2
3
4
5
6
7
8
9
10
xrdb -q

*customization: -color
Xft.dpi:    96
Xft.antialias:  1
Xft.hinting:    1
Xft.hintstyle:  hintfull
Xft.rgba:   none
Xcursor.size:   24
Xcursor.theme:  Adwaita

4. 文字大小自適應

新版gnome一般對於1080P以上的解析度會進行HiDPI自適應,1080P以下dpi預設值是96,1080P以上的是192,但是上面的是96的預設值,所以並沒有進行自適應,要縮放也很簡單,有以下幾個方法:

  1. gnome-tweak-tool裡面設定(推薦)

此軟體在系統安裝時已經預設自帶,如果沒有就自己安裝。

直接在字型裡面把縮放比例改大就行:

gnome設定解析度.png

  1. 執行gsettings

直接執行gsettings set org.gnome.desktop.interface text-scaling-factor 1.25,也是將文字縮放至1.25倍,不過必須登出重新登入才有效

  1. 設定縮放參數
1
2
xrandr --output eDP-1 --scale-from 2560x1440 --panning 2560x1440
gsettings set org.gnome.desktop.interface scaling-factor 2

最後實現重啟不失效的辦法:

       vim ~/.profile

在末尾加上(解析度,輸出介面根據自己實際配置修改,不要生搬硬套)

1
2
3
4
5
cvt -r 2560 1440
xrandr --newmode "2560x1440R"  241.50  2560 2608 2640 2720  1440 1443 1448 1481 +hsync -vsync
xrandr --addmode HDMI-1 2560x1440R
xrandr --output HDMI-1 --mode 2560x1440R

參考: