Превращаем 1366x768 монитор в FullHD

Дорогой дневник, работая за нищебродским ноутбуком с разрешением 1366x768, я чувствую себя танкистом, смотрящим в танковую щель. Например, в случаях, кода нужно одновременно лицезреть консоль разработчика и окно браузера. В Linux есть способ это исправить, увеличив разрешение, например, до 1920x1080.

Физически отобразить FullHD на маленьком мониторе нельзя. Зато можно попросить X.org отмасштабировать картинку до нужного разрешения. Делается это при помощи утилиты xrandr и двух её параметров: --panning и --scale. Первый задаёт разрешение, которое нужно отобразить, а второй — коэффициент, на который нужно уменьшить это разрешение, чтобы вписать его в ваш монитор.

Для 1920 коэффициентом будет 1.405 (1920/1366). Поэтому набираем в консоли:

$ xrandr --output eDP1 --panning 1920x1080 --scale 1.405x1.405

и получаем заветное FullHD. Ну а чтобы вернуть всё обратно, достаточно поставить прежние значения на место:

$ xrandr --output eDP1 --panning 1366x168 --scale 1x1

У меня выход на экран называется eDP1, у вас он может быть другой. Посмотреть все доступные выходы можно набрав xrandr без параметров.

А теперь плохая новость:
Из за интерполяции, картинка сильно замыливается, в особенности страдают шрифты, ибо не производится никакой хитрой постобработки для отмасштабированного изображения. Как сделать его лучше я не придумал. Работать с кодом в таком режиме — не самое приятное занятие, спустя пару минут хочется выколоть себе глаза вилкой.

Но несмотря на проблему со сглаживанием — это всё же лучше, чем ничего, и местами даже может быть полезно. Для быстрого переключения между разрешениями, можно задействовать горячие клавиши. В Ubuntu это делается в настройках клавиатуры:

Ubuntu Keybindig Settings