我的屏幕分辨率为 1280 x 1024。但不幸的是,最右边的200像素带损坏,无法显示任何图像。
如何设置 Xorg 将我的屏幕视为 1080 x 1024 设备?
现在我已经尝试过:
Virtual 1080 1024
Viewport 0 0
它无法正常工作 - 图像被缩放以适应垂直方向,并且水平方向我可以用鼠标平移。
答案1
查看:http://howto-pages.org/ModeLines/,他们对 Xorg modelines 有很好的解释。然后去http://xtiming.sourceforge.net/cgi-bin/xtiming.pl并输入您可以使用的屏幕尺寸的规格。这将为您提供一个模型行,您可以将其添加到 xorg.conf 文件中。
字段 4、5、6 和 7 对应于以下值:HDisplay HSyncStart HSyncEnd HTotal。
通过使用字段 5 和 6,您将能够根据需要向左或向右移动屏幕的可见部分。
答案2
您将不得不摆弄如何最好地让显示管理器使用它,但是:
您可以正常启动 Xorg,它将以全分辨率使用整个屏幕,例如
Xorg :123 -ac
-ac 开关禁用一些(全部?)Xorgs 对允许客户端的限制。然后,您将 Xephyr 作为唯一的客户端启动(您可能希望根据您的需要调整作为 -screen 参数传递的分辨率):
DISPLAY=:123 Xephyr :0 -screen 1720x1200
Xephyr 是一种“覆盖 Xserver”,它像任何 Xserver 一样与客户端交互,但 Xephyr 不是负责渲染和输入(用户面对的部分),而是依赖另一个 Xserver 来完成此操作。
如何组合这些命令很大程度上取决于您的用例。一般来说,像会话管理器这样的应用程序让您有机会提供如何调用 Xserver 的命令。
我做了什么来尝试:
/root/.xinitrc
用内容创建
Xephyr :0 -ac -once -query myxdmcphost -screen 1400x1200`
其中 1400 是我的屏幕宽度 -200 像素。
然后我运行xinit -- :123 -my -usual -xorg -options -for -my -computer
,结果我得到一个登录屏幕和一个会话,该会话实际上使用了我的整个屏幕,但右侧有一个 200 像素宽的列。
为了对 GDM 等具有相同的效果,您必须在调用 Xserver 的方法xinit
中多次提供该命令。gdm.conf
但我无法直接告诉你该怎么做。