Я внимательно посмотрел и увидел, что подобные вопросы не решались раньше в сообществе AskUbuntu. Моя проблема довольно проста, и я уверен, что она есть у многих пользователей Ubuntu:
Мониторы Full HD того же размера работают безупречно, но у меня есть ноутбук с дисплеем 4K и монитор с разрешением 2560x1080 (21: 9), и я не могу использовать второй монитор, потому что все масштабируется и масштабируется. Вот несколько снимков экрана с моими настройками (я использую Ubuntu 20.04.1 LTS):
Включение «дробного масштабирования» не работает должным образом - масштабирование на втором мониторе (2560x1080) выглядит размытым, а мой компьютер отстает, мышь мигает и так далее. Просто для информации, у меня есть i7 9750H, 16 ГБ оперативной памяти и выделенный gtx 1650 gpu, но кажется, что компьютер начинает отставать в журнале, как только я включаю «Fractional Scaling».
Я нашел статью, которая может мне помочь: https://techknowfile.dev/using-a-hidpi-monitor-with-a-low-resolution-external-monitor-ubuntu-i3/ но поскольку я раньше играл с xrandr
и так сильно испортил вещи, не понимая их, я решил позвать на помощь здесь.
Буду очень признателен, если вы поможете мне решить эту проблему.Это должно помочь и многим другим пользователям, у которых есть аналогичная проблема.
Возможно, вы сможете изменить размер DPI на одном из мониторов, чтобы он работал как обычно. Попробуйте щелкнуть раскрывающийся список «Разрешение» и посмотреть, есть ли в нем опция, позволяющая установить для DPI одно и то же число.
Что вы имеете в виду, говоря, что "все" масштабируется и масштабируется? Откуда вы знаете, что все масштабируется и масштабируется? Всякий раз, когда у вас есть маленький экран с высоким разрешением и большой экран с низким разрешением, на большом экране все будет больше.
Во-первых, я не являюсь экспертом в этом вопросе, и любой другой может дать совет или внести поправку...
Я смог несколько воспроизвести сценарий. У меня есть ноутбук --> 1920x1080 и телевизор --> 1280x720
Мой первый «ответ» таков: я смог увеличить разрешение телевизора до 1920x1080i без особого волшебства, так что вы пробовали просто перевести свой 34-дюймовый LG на другое разрешение?
... но когда я использовал разрешения, которые были выбраны «автоматически», вот что у меня сработало:
xrandr --output eDP --auto -- verbose --output HDMI-A-0 --auto --scale 2x2 --panning 2560x1440+1920+0 --right-of eDP
В этой части я могу использовать некоторый ввод... В панорамируя, я взял H-разрешение моего телевизора и вычел его из H-разрешения ноутбука... и добавил это к результату ноутбука:
1920 - 1280 --> 640 + 1920 = 2560
....и то же самое с V-разрешением
1080 - 720 --> 360 + 180 = 1440
Это был единственный способ заставить масштабирование работать правильно на телевизоре, иначе оно было бы ограничено небольшой частью экрана, а остальная часть экрана была недоступны для курсора.
Я уверен, что есть более элегантный способ придумать это, и я действительно даже не думаю, что это полностью правильно, потому что при переходе между экранами нижняя часть телевизора не точно совпадает с нижней. экрана ноутбука. Точность потребует больше экспериментов.
Я несколько минут запускал сцену действия Трансформеров на YouTube (по телевизору), чтобы посмотреть, будет ли она вести себя...к сожалению, я не понял, что мой ноутбук не был подключен к сети и он выключился, поэтому у меня было всего 3-4 минуты тестирования...
В вашем случае:
Что касается вашего нежелания использовать xrandr... есть пара вещей, которые вы можете сделать...
xrandr --current
покажет вашу текущую конфигурацию. xrandr output eDP-1-1 --auto --verbose --output DP-1-3 --auto --right-of EDP-1-1
и выполнить его. Ничего не должно произойти, это ваша текущая конфигурация ... но как только вы начнете тестирование, если вы в конечном итоге испортите отображение, вы всегда можете нажать «стрелку вверх» на эту команду и вернуться к этой конфигурации. (Некоторое время назад, когда у меня была аналогичная проблема, я из лени сделал лаунчер на панели и вставил в него эту команду... так что я просто заходил в лаунчер и исправлял свои экраны)sudo init 3
, чтобы убить ваш графический войдите в систему... а затем sudo init 5
, чтобы снова запустить его. Я полагаю, что это вернет вас к графическому входу в систему, если нет, то либо CTRL+ALT+F1, либо CTRL+ALT+F7. Войдите в систему и продолжите тестирование. Я еще не смог нанести необратимый ущерб с помощью xrandr...Вы можете проверить мою математику, но я думаю, что ваша команда будет:
xrandr --output eDP-1-1 --auto --verbose --output DP-1-3 --auto --scale 2x2 --panning 5120x3240+3840+0 --right-of EDP-1-1
Если вы хотите использовать определенное разрешение вместо «авто», вы должны удалить --auto и заменить его на - -mode ####x####
(доступное разрешение)... но если имеется несколько одинаковых разрешений (например, 1080pvs1080i), вы можете использовать назначенный ему регистр, например --mode 0x254
(имейте в виду, что они могут быть непостоянными).... обратитесь к вашему выводу xrandr --verbose
.
Опять же, я не эксперт в этом, но вы можете поэкспериментировать с этими числами, как это делал я, пока не нашел рабочий набор. Казалось, что панорамирование было ключевым моментом, когда я добавил масштаб 2x2.
Я читал, что масштабирование не всегда хорошо работает с картами NVIDIA.
Работает из коробки на Wayland
но эта функция недоступна в Xorg
Вы должны выйти из системы и переключиться на запуск сеанса Wayland на экране входа в Ubuntu.
После входа в систему вы увидите, что размер приложения будет изменяться при полном перемещении с одного экрана на другой.
К сожалению, не все приложения пока являются родными для Wayland. Еще не перенесенные приложения не будут изменять размер на разных мониторах.
Все компоненты gnome (на которых основана Ubuntu), такие как калькулятор, файлы и т. д., работают «из коробки». Firefox в Ubuntu требует, чтобы MOZ_ENABLE_WAYLAND=1 был установлен для его работы.
Wayland также не работает с проприетарным NVIDIA, потому что это хак, специфичный для Xorg, поэтому вам нужно переключиться на драйвер Nouveau или получить поддерживаемую видеокарту.