我有一个显示器,但显示器的最右边缘坏了!因此,为了使它正常工作,我试图以某种方式将桌面限制为实际有效的像素。
这意味着:
- 指针永远不应该进入黑色区域
- 如果最大化,Windows 应该只占用有效的像素。
我使用 Ubuntu 13.10!任何我可以研究的术语都很棒!
答案1
我们将使用两个工具来实现我们的目标。第一个是 cvt,第二个是 xrandr。
首先,您需要知道要修剪多少空间以及从屏幕的哪一侧修剪。就我而言,我的笔记本电脑屏幕顶部有坏点,占用了大约 20 个像素(估计),所以我想减小屏幕顶部的屏幕尺寸,并且不要让它们覆盖标题栏的顶部。我将向您介绍我是如何做到这一点的,您可以根据自己的情况采用它。
因此我开始运行 xrandr,以便能够看到我的显示器的尺寸
$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 32767 x 32767
LVDS1 connected primary 1280x800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280x800 60.0*+ 50.0
1024x768 60.0
800x600 60.3 56.2
640x480 60.0 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
所以屏幕尺寸是1280x800
由于我估计像素已经占据了屏幕顶部的 20 个像素,所以新值将是 1280x780。
第二:我们运行 cvt 以便我们可以获得这个尺寸的“魔法值”:
$ cvt 1280 770
# 1280x770 59.91 Hz (CVT) hsync: 47.93 kHz; pclk: 79.75 MHz
Modeline "1280x770_60.00" 79.75 1280 1344 1472 1664 770 773 783 800 -hsync +vsync
重要的部分是以“Modeline”开头的部分 - 此行中给出的值是您需要传递给 xrandr 的值,以便它能够使屏幕显示新的尺寸。Xrandr 使用一种称为“模式”的东西来实现这一点。
第三:现在是时候使用我们从 cvt 获得的值来创建一个新模式了。
允许我们执行此操作的命令(使用我上面得到的值)如下所示:
$ xrandr --newmode 1280x770 79.75 1280 1344 1472 1664 770 773 783 800 -hsync +vsync
第四步:我们将新模式添加到 xrandr 中可用的模式中。这是使用 xrandr 中的“--addmode”命令完成的。在我的特定情况下,我将其添加到 LVDS1。
因此命令如下:
$ xrandr --addmode LVDS1 1280x770
第五步:我们检查新模式是否已添加到 xrandr。具体操作如下:
$ xrandr -q
我有:
$ xrandr -q
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 32767 x 32767
LVDS1 connected primary 1280x800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280x800 60.0*+ 50.0
1024x768 60.0
800x600 60.3 56.2
640x480 60.0 59.9
1280x770 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
您可以看到它已被添加并且现在列在底部 -1280x770 59.9
现在是时候运行新模式了!我们通过运行以下命令来执行此操作:
$ xrandr --output LVDS1 --mode 1280x770
屏幕应该关闭并在应用新模式且屏幕尺寸缩小的情况下重新打开。
结果是屏幕顶部出现一条黑条,鼠标和应用程序使用它作为屏幕的边界。
所以现在最后一步是让该命令在登录时运行,这样我就不必处理它了。执行此操作的方式取决于您的桌面,超出了本答案的范围。