文档目录
article
显示-设置其他分辨率
有的是需要一个异形分辨率,有的是因为显卡驱动问题导致没有想要的分辨率,都适用下面的方法。
查询目标分辨率参数
比如由于驱动问题不支持1920x1080,我们需要添加这个分辨率。查询这个分辨率的参数:
cvt 1920 1080 60
# 下面是输出的结果
# 1920x1080 59.96Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00Mhz
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 1080 1083 1088 1120 -hsync +vsync
指令cvt
后面三个参数分辨是横向分辨率、纵向分辨率、刷新率。我们需要的是Modeline开头的这一行
将新的分辨率添加到系统中
使用指令把刚刚查询到的分辨率参数注册到系统,使用的是xrandr --newmode
指令,后面的参数直接抄写Modeline后面的即可。
注册到系统后还需要把分辨率绑定到屏幕。即下面的两行指令。
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode HDMI-A-0 1920x1080_60.00
正常情况下指令是没有返回的。如果返回了错误信息:
X Error of failed request: BadName (named color or font does not exist)
Major opcode of failed request: 140(RANDR)
Minor opcode of failed request: 16 (RRCreateMode)
Serial number of failed request: 25
Current serial number in output stream: 25
正如第一行提示的"Badname",创建模式时名字存在问题。这个问题是重复操作导致的,需要把引号里的"1920x1080_60.00"修改一下,改成不同的名称,方可成功添加。
设置新的分辨率
与普通设置分辨率的方法不同,不需要再指定rate了。
xrandr --output HDMI-A-0 --mode 1920x1080_60.00
分辨率自动化调整
与其他xrand日志一样,这个调整需要放入开机自启动脚本来实现自动化实现。
这里需要把注册和设定分辨率的指令都写入开机自启动脚本,即:
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode HDMI-A-0 1920x1080_60.00
xrandr --output HDMI-A-0 --mode 1920x1080_60.00
不同的分辨率会产生不同的参数,但是不同的显卡与接口参数是相同的。这里注册的新分辨率不能被操作系统的显示设置识别。