在Xorg下使用xrandr支持混合DPI的多显示器

使用环境是Deepin,理论上其他Linux也适用。

显示器位置说明

笔记本内置显示器是eDP1,1920x1080,放在左边,卖家说这是块2K屏幕,外置显示器是DP2,3840x2160的4K屏幕,作为主显示器

设置系统缩放

在各自系统内置的设置参数处,设置DPI为2倍缩放

如果你是非Deepin系统,比如Gnome Shell

设置驱动参数

我的笔记本是Intel核心显卡,如果不设置这个Xorg参数,会在后面设置X的scale后,高分屏上出现鼠标闪烁问题

注意,设置后,原来在xrandr显示的eDP-1,DP-2等显接口命名规则会变成eDP1,DP2等风格

相关问题在很多地方有讨论,不同驱动看来需要不同配置,可以看这个Xorg的Open Issue

注销后重新登录让设置生效

配置缩放

登录后会发现4K的屏幕缩放正常的 ,1920*1080那块屏幕显示的很大很大,执行命令后就正常了

pos是这么计算的,因为我是并排摆放的,这时候eDP1在左边,他的屏幕原点是0x0,然后因为eDP1用scale缩小了2倍,所以他的适配分辨率是1920*2x1080*2,那么,位于右边的4K屏幕,她的起点就是1920*2=3840,高度不变,因为在同一水平线,不做上下移动,最后的pos就是3840x0

所以在我这块低DPI的2K屏幕上,我设置scale 1.5x.15 效果更好,那么就是这么个结果

如果你需要其他缩放比例,请按照上面的规则重新计算就行。一般都是2倍缩放的话都能满足这个用例。

据说Wayland原生支持混合DPI,快来吧。

Author Info :
  • From:在Xorg下使用xrandr支持混合DPI的多显示器
  • URL:https://blog.ihipop.com/2020/06/5250.html
  • Please Reserve This Link,Thanks!
  • 发表回复

    您的电子邮箱地址不会被公开。 必填项已用 * 标注