限制 Linux 中的桌面大小

限制 Linux 中的桌面大小

我有一个显示器,但显示器的最右边缘坏了!因此,为了使它正常工作,我试图以某种方式将桌面限制为实际有效的像素。

这意味着:

  • 指针永远不应该进入黑色区域
  • 如果最大化,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

屏幕应该关闭并在应用新模式且屏幕尺寸缩小的情况下重新打开。

结果是屏幕顶部出现一条黑条,鼠标和应用程序使用它作为屏幕的边界。

所以现在最后一步是让该命令在登录时运行,这样我就不必处理它了。执行此操作的方式取决于您的桌面,超出了本答案的范围。

相关内容