更改为较低的屏幕分辨率而不进行拉伸

更改为较低的屏幕分辨率而不进行拉伸

当我通过 [显示...] 将笔记本电脑的屏幕分辨率从 1366x768 更改为 1024x768 时,整个屏幕仍然被填满,图片被拉伸得很难看。我如何才能进行像素级 1 对 1 映射,从而保留原始比例?

当我想将屏幕与投影仪一起镜像时,我特别需要这个。

(在 9.10 中,它在某种程度上取决于启动时可用的显示器。如果稍后添加了较低分辨率的屏幕,则比例将保留)


xrandr输出:

Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
LVDS connected 1366x768+0+0 (normal left inverted right x axis y axis) 256mm x 144mm
   1366x768       60.0*+   50.0  
   1360x768       60.0     50.0  
   1280x768       60.0     50.0  
   1280x720       60.0     50.0  
   1024x768       60.0     50.0  
   1024x600       60.0     50.0  
   800x600        60.0     50.0  
   800x480        60.0     50.0  
   640x480        60.0     50.0  
DFP1 disconnected (normal left inverted right x axis y axis)
CRT1 disconnected (normal left inverted right x axis y axis)

这是联想 X121e,并且:

$ sudo lshw -C display
[sudo] password for ulrich: 
  *-display               
       description: VGA compatible controller
       product: Wrestler [Radeon HD 6320]
       vendor: Hynix Semiconductor (Hyundai Electronics)
       physical id: 1
       bus info: pci@0000:00:01.0
       version: 00
       width: 32 bits
       clock: 33MHz
       capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
       configuration: driver=fglrx_pci latency=0
       resources: irq:45 memory:e0000000-efffffff ioport:4000(size=256) memory:f0300000-f033ffff

(我发现上面的运行时奇怪的是它花了这么长时间)

答案1

首先尝试将显示的缩放模式设置为“全屏显示”

xrandr --output LVDS --set "scaling mode" "Full aspect" 

或者

xrandr --output LVDS --set PANEL_FITTING full_aspect

此后改变你的分辨率

xrandr -s 1024x768

这适用于带有英特尔 GPU 的联想 E330 笔记本电脑。

缩放模式的选项有:“全缩放”、“中心缩放”或“全比例缩放”。

答案2

目前还不清楚你想要什么(我建议你编辑标题,这样对于下一个试图解决这个问题的人来说就更明显了),但我认为解决方案基本上是这样的:我的 xrandr 输出是

屏幕 0:最小 8 x 8,当前 1920 x 1080,最大 32767 x 32767
eDP1 连接 1920x1080+0+0(正常左反转右 x 轴 y 轴) 309mm x 173mm
   1920 x 1080 60.1*+ 59.9  
   1680x1050 60.0 59.9  
   1600x1024 60.2  
   1400x1050 60.0  
   1280x1024 60.0  
   1440x900 59.9  
   1280x960 60.0  
   1360x768 59.8 60.0  
   1152x864 60.0  
   1024x768 60.0  
   800x600 60.3 56.2  
   640x480 59.9  
DP1断开(正常左反转右x轴y轴)
DP2断开(正常左反转右x轴y轴)
HDMI1 断开(正常左反转右 x 轴 y 轴)
HDMI2 断开(正常左反转右 x 轴 y 轴)
VIRTUAL1 断开(正常左反转右 x 轴 y 轴)

如果我随后运行,xrandr --output eDP1 --size 1360x768 --fb 1360x768结果是屏幕底部和右侧的一大块区域是黑色的,尽管它与我的窗口管理器配合得不好。基本上,如果我刚刚通过,size我会切换到较低的分辨率,然后拉伸图像以适合屏幕。但由于我也通过了fb,我告诉 X 只有 1360x768 需要填充,因此不需要进行拉伸。

我不知道如何让这个与我的窗口管理器或其他人的窗口管理器配合良好。也许你可以。祝你好运。

编辑:我实际上不确定您是否必须选择现有的模式行之一,或者您是否可以使用两个任意(宽度,高度)对,或者您是否需要在使用任意对之前定义一个模式行。以上是我尝试的唯一命令。

答案3

这对我有很大帮助,但没有任何作用。我的孙子把他的笔记本摔了,导致四面的液晶显示屏都损坏了。

LCD 的原始分辨率为 1366x768。

所以我这样设置:

xrandr --output eDP \
  --mode 1280x720 \
  --set 'underscan' on \
  --set 'underscan vborder' 24 \
  --set 'underscan hborder' 43

效果很好!

答案4

reddit 帖子:要更改此设置,您需要知道显示器连接的输出名称(此处为 DisplayPort-0),然后运行以下命令:

xrandr --output DisplayPort-0 --set 'scaling mode' 'Center'

相关内容