ПРЕЖДЕ ВСЕГО, В ВЕРСИИ 1.5.1 ЕСТЬ ПАРАМЕТР:
--filter nearest
Для версии 1.5.0 - пусть тут будет, раз уж я в этом разобрался.
Смысл - есть старая программа, в которой шрифты прорисованы «пиксел в пиксел», но мелкие. На современном экране смотреть на это без слёз невозможно. Если уменьшить разрешение или масштабировать экран с помощью xrandr, то всё выглядит размазанным. Задача - как сделать неразмазанным?
Решение для Ubuntu 16.04 - по мотивам вот этого:
https://forums.linuxmint.com/viewtopic.php?t=159064
$xranrd --version
1.5.0
$cd ~
$git clone git://anongit.freedesktop.org/xorg/app/xrandr
$cd xrandr
$git tag -l
$git checkout tags/xrandr-1.5.0
В файле ~/xrandr/xrandr.c комментируем в двух местах вот такой фрагмент.
if (sx != 1 || sy != 1)
output->transform.filter = "bilinear";
else
Получается так:
//if (sx != 1 || sy != 1)
//output->transform.filter = "bilinear";
//else
Теперь фильтр всегда будет «nearest» и тем самым xrandr откажется от светлой идеи размазывать наши удвоенные пиксели.
sudo apt-get install build-essential autoconf xutils-dev libxrandr-dev
./autogen.sh
./configure
make
Дальнейшее - это мой пример скрипа настройки, для вас он не подойдёт - делайте его с помощью arandr, который создаст шелл-скрипт для установки разрешения примено следующего содержания:
#/bin/sh
~/xrandr/xrandr --output HDMI-3 --mode 1920x1080 --primary --scale 0.5x0.5
Для достижения лучшего результата может понадобиться отключить сглаживание или обострение на мониторе (обычно это делается кнопками на самом мониторе) и в оконном менеджере. Может быть, что и слишком умные видеокарты тоже потребуют каких-то действий.