Лучшее решение, которое я нашел
Как уже упоминалось ранее, вам будет очень мало удачи, если это просто сработает - особенно с несколькими мониторами (моя проблема). Я остановился на однострочной команде, чтобы добиться последовательной презентации на нескольких мониторах, с моим встроенным дисплеем - hidpi, это:
./xrandr --output eDP-1 --mode "2880x1800" --scale "0.5x0.5"
Эта команда означает : уменьшите мое собственное разрешение на 50%, что, когда мы говорим о пикселях, означает, что рендеринг вообще не должен сильно интерпретироваться, а результат должен быть четким.
Почему это работает: потому что один «квадратный» пиксель теперь представлен в 4 квадратных пикселя.
Примечание : ваши варианты, вероятно, будут немного другими.
Некоторые детали : пришлось переключиться обратно в нуво с nvidia
Во-первых, посмотрите, не имеет ли системное масштабирование xrandr по умолчанию никакого размытия
Установите x11-server-utils
sudo apt install x11-xserver-utils
Найдите «подключенный» дисплей hidpi, он будет иметь идентифицирующее имя перед «подключенным»:
xrandr -q
Пример вывода, имя вашего монитора перед «подключено»:
вывод xrandr -q
Итак, мой монитор - «eDP-1», а родное разрешение - самое верхнее - 2880x1800. Итак, мы масштабируем верхнюю на 50%, чтобы избежать размытия, обязательно используйте ваши значения из xrandr -q для eDP-1 и 2880x1800 :
xrandr --output eDP-1 --mode "2880x1800" --scale "0.5x0.5"
Если вы делаете это, и у вас все еще есть четкие шрифты и т. Д., То все готово, перейдите к разделу «Завершение» ниже.
Если оно размыто, то помогут следующие шаги.
Шаг 1 - Система xrandr все еще размыта ... подготовка системы
sudo apt install git build-essential autoconf xutils-dev automake dkms gksu libxrandr-dev mesa-utils x11-xserver-utils
Может быть немного по-другому для вас, в зависимости от вашей системы, это работает для меня, хотя.
Шаг 2 - получить исходный код xrandr
клонировать код Xrandr
git clone https://anongit.freedesktop.org/git/xorg/app/xrandr.git xrandr_source && cd xrandr_source
Шаг 3 - запишите вашу версию xrandr
Обратите внимание на вашу версию xrandr, вам понадобится это:
xrandr --version | grep 'program version' | awk '{print $4}'
Шаг 4 - извлеките тот же номер git-тега, что и ваша система
Проверьте теги git для xrandr из каталога xrandr_source
git tag --list | grep 'xrandr'
Найдите свой номер версии и «проверьте» этот тег
git checkout tag/xrandr-[your version number here]
для меня это было:
git checkout tax/xrandr-1.5.0
Шаг 5 - Изменить xrandr.c
Откройте xrandr.c в любом редакторе файлов, который вы хотите использовать. Ищите «transform.filter». Есть около трех мест. Вы заметите, что это в условном, что-то вроде этого:
if (sx != 1 || sy != 1)
output->transform.filter = "bilinear";
else
output->transform.filter = "nearest";
«Билинейный» - это то, что делает его размытым, НО - поскольку мы «уменьшаем» прямо, то есть один пиксель теперь равен четырем, нам не нужен билинейный и мы можем использовать «ближайший».
У вас есть два варианта: улучшить условное условие if или полностью удалить все if и оставить только:
output->transform.filter = "nearest";
Так как мы не собираемся «устанавливать» этот xrandr, можно просто пойти по пути, который я сделал. Вы найдете несколько мест с:
output->transform.filter = "bilinear";
Самое простое - просто поменять «билинейный» на «ближайший»
Сохраните файл. Закройте свой редактор
Шаг 6 - компиляция
./autogen.sh && make
У вас должен быть недавно созданный xrandr в этом каталоге, попробуйте
./xrandr -q
Который должен дать вам вывод.
Теперь вы можете попробовать оригинальную команду xrandr:
./xrandr --output [your display] --mode "[your native resolution]" --scale "0.5x0.5"
Шаг 7 - завершение
Теперь вы также можете делать такие вещи, как играть со всеми вашими обычными настройками, связанными со шрифтами, dpi, сглаживанием и т. Д.
Мне не нужна вся дополнительная недвижимость, которую дает хидпи, плюс вы просто заканчиваете тем, что увеличиваете все, чтобы сделать пригодным для использования.
Предоставлено : я получил большую часть своих вещей для этого отсюда, но это пара лет, и я думаю, что это относится к более недавнему вопросу: https://forums.linuxmint.com/viewtopic.php?t=159064