解决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

最后查找到 Archwiki上的说明 里面有这样一句话

对于个别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.5倍缩放,但字体会有轻微模糊,参考:http://jump2.bdimg.com/p/5424234823?see_lz=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

修改2k显示重启不失效方法: 

xrandr --newmode "2560x1440R" 241.50 2560 2608 2640 2720 1440 1443 1448 1481 +hsync -vsync
xrandr --addmode HDMI-1 2560x1440R

这样在设置里面就有2k分辨率选项了,而且一直都在。

参考:

https://blog.wenjinyu.me/zh/linux-gnome-resolution-display-error/

https://blog.csdn.net/qq_42351346/article/details/80716193

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
显示器无法识别的问题可能有多种原因。首先,您可以通过运行xrandr命令来查看当前的显示设备和模式。确保外显示器处于连状态,并且在xrandr的输出中显示为"connected"。如果只有一个显示器处于连状态,可能是硬件问题或内核驱动问题。您可以检查硬件连是否正确,并确保内核驱动程序已正确安装和配置。如果问题仍然存在,您可以尝试以下常用方法来解决问题: 1. 打开外显示器并与笔记本液晶屏幕显示相同内容(克隆): ``` xrandr --output VGA-1 --same-as HDMI-1 --auto ``` 2. 打开外显示器并设置为右侧扩展屏幕: ``` xrandr --output VGA-1 --right-of HDMI-1 --auto ``` 3. 关闭外显示器: ``` xrandr --output VGA-1 --off ``` 4. 打开外显示器并同时关闭笔记本液晶屏幕(只使用外显示器): ``` xrandr --output VGA-1 --auto --output HDMI-1 --off ``` 5. 关闭外显示器并同时打开笔记本液晶屏幕(只使用笔记本液晶屏): ``` xrandr --output VGA-1 --off --output HDMI-1 --auto ``` 如果以上方法仍然无法解决问题,您可以尝试使用sudo xrandr命令创建一个新的输出分辨率,并将其应用于外显示器。例如: ``` sudo xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync ``` 然后,使用xrandr命令将新的输出分辨率应用于外显示器。 请注意,以上方法可能需要根据您的具体情况进行调整。如果问题仍然存在,您可能需要进一步查硬件兼容性或与操作系统相关的问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值