4 ms·
One way to solve the scaling issue is to set the external monitor to a virtual higher resolution while still driving it at its native resolution (with scaling d
by ambrop7 10y ago
One way to solve the scaling issue is to set the external monitor to a virtual higher resolution while still driving it at its native resolution (with scaling down done in GPU).
Actually Linux/Xorg generally support this out of the box, it is just the higher-level software that would need to make use of it. You can try it youself:
xrandr --output <output-name> --scale 2x2
the result should be the given monitor will appear to have twice the resolution, so if applications believe they are running on a high-DPI display, they will look fine on the external monitor as well.
However due to lack of support and awareness in desktops doing just this might leave you with an unsatisfactory configuration, e.g. part of the desktop erroneously shown on both monitors - you might need to use further xrandr commands to setup the regions that each monitor displays.
I use the same approach to solve this issue on a Windows 7 system I am using, it is just slightly more involved (I need to setup a custom resolution in the Nvidia control panel).
- bitexploder 10y agoBattling xrandr is not for the feint of heart. It is tedious to get the right behavior and differs from one display to the next (the precise dimrnsions, etc..)
- thomastjeffery 10y agoUnfortunately, this scales after drawing. The entire point of hiDPI is to have a crisper image. To achieve that, the scaling must be done at the drawing level.
- 3v1n0 10y agoUnity and Gtk would scale everthing up, so things that are properly drawn before being re-scaled. So quality will be there. For normal/low-DPI screens instead, you'd scale everything down, so you'd lose some memory CPU power, but you'd still get the quality result.