Вопрос или проблема
Из-за неисправности моего экрана (белая вертикальная полоса, остальное в порядке) я хотел бы сказать Linux (X и консоль), чтобы он использовал только часть экрана.
Кто-нибудь знает, могу ли я добиться этого с помощью параметров загрузки ядра, недосканирования, xrandr или умной конфигурации X (или их комбинации).
Я хочу настроить его на использование примерно 800 пикселей на 1080 пикселей (это дисплей 1920×800, белая полоса появляется с правой стороны), но без попыток центрировать изображение (как это делается при изменении разрешения экрана).
Любые идеи приветствуются.
Заранее спасибо.
Это просто обходное решение, так как максимизированные окна все равно будут занимать больше выбранного экрана. Тем не менее, это позволяет видеть большинство оконных рамок, чтобы вы могли вручную изменять их размер до нужной части экрана.
Я сломал примерно правую половину экрана маленького нетбука с диагональю 11,2 дюйма. Поэтому я изменил разрешение и другие параметры комментария пользователя выше до тех пор, пока не подогнал.
xrandr --current --output eDP-1 --fb 960x1100 --transform 1,0,0,0,1,0,0,0,1
Если вы хотите, чтобы это было с правой стороны, вам нужно сместить его вправо
xrandr --current --output eDP-1 --fb 960x1100 --transform 1,0,-840,0,1,0,0,0,1
Это всего лишь результат проверок, разрыв составляет 840 пикселей вправо в моем случае.
Для получения дополнительных параметров, смотрите документацию xrandr:
Если недосканирование недоступно, другим решением является использование xrandr
–transform a,b,c,d,e,f,g,h,i, который применяет матрицу преобразования на выходе. Смотрите страницу руководства xrandr(1) § RandR_version_1.3_options для объяснения преобразования.Например, матрица преобразования, масштабирующая горизонтальные координаты на 0,8,
вертикальные координаты на 1,04 и сдвигающая экран на 35 пикселей вправо
и на 19 пикселей вниз, выглядит так:$ xrandr --output HDMI1 --transform 0.80,0,-35,0,1.04,-19,0,0,1
(вам нужно заменить HDMI1 на eDP-1, если вы хотите внести изменения на “начальном экране”)
Некоторые дополнительные хитрости:
- Лучше всего, если у вас есть возможность подключить второй монитор в зеркальном режиме, чтобы вы всегда могли вернуть неповрежденное окно терминала.
- Вы также можете просто использовать “Кнопку стрелки вверх” дважды + “Кнопка ввода”, чтобы вернуться к предыдущему состоянию.
- Не подключайте зеркальный второй экран во время финальных проверок, так как в моем случае было сдвижение вправо, которое исчезло, как только я отключил второй монитор.
- Если по каким-то причинам вы хотите, чтобы экран был перекошен или повернут, проверьте другие параметры.
Вы должны проверять окончательные результаты только на сломанном экране. Странно, но после нахождения способа показать экран непосредственно слева, на границе с грубой серединой экрана, вы все равно не видите самую правую сторону любого максимизированного окна. Вместо этого вам все равно придется сузить окна, чтобы вы могли видеть их целиком в правом пространстве экрана. Это может быть решено с помощью менеджера дисплея, смотрите xrandr: границы дисплея обрезаны, но я этого не пробовал.
Странно, но после нескольких успешных тестов результаты вернулись к постоянному отображению только сообщения:
xrandr: указанный экран 960x1100 недостаточен для вывода eDP-1 (1920x1080+1+680+1)
xrandr: указанный экран 960x1100 недостаточен для вывода HDMI-1 (1680x1050+0+0)
Но в начале тестов это работало, так что это также может сработать и для вас.
Чтобы продвинуться дальше, выясните возможные разрешения и имена дисплеев с помощью:
$ xrandr -q
[Дисклеймер: Это не решение, созданное мной]
Вместо того чтобы возиться с xrandr, я нашел комментарий, который утверждал, что создание панели меню (вертикальной или горизонтальной), которая использует поврежденную часть экрана, заставит окно начинать использовать остальную часть экрана. Для меня, используя XFCE, я просто создал панель (панель инструментов меню), которая сдвинула начало окна вниз. Это можно идеально настроить, увеличив размер, а также панель можно настроить на использование конкретного соединения (DP1, HDMI0 и т.д.), так что если вы оставите порт подключенным к экрану, он всегда будет там.
ИЗМЕНЕНИЕ: Оригинальная идея
https://www.reddit.com/r/linuxquestions/comments/tzwxr7/comment/i427v1r/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
Ответ или решение
Использование частичного отображения экрана в Linux: Решение проблемы
При возникновении проблем с экраном, такими как вертикальная белая полоса, пользователи могут столкнуться с необходимостью использовать только часть экрана, чтобы продолжать работать с системой. В этой статье мы рассмотрим различные методы для настройки вывода на экране в Linux, в том числе использование параметров загрузки ядра, underscanning, xrandr, и специальные настройки X-сервера.
1. Определение проблемы
Итак, вы имеете дело с дисплеем разрешением 1920×1080 и хотите использовать только часть его, например, 800×1080 пикселей, где белая полоса появляется с правой стороны экрана. Давайте разберем несколько подходов, которые помогут решить эту задачу без необходимости смещать изображение к центру, как это делает изменение разрешения.
2. Настройка через xrandr
Подход с использованием xrandr является одним из самых универсальных. Этот инструмент позволяет изменять параметры отображения мониторов в реальном времени.
Вот команда, которая поможет вам задать желаемые параметры:
xrandr --current --output eDP-1 --fb 960x1100 --transform 1,0,0,0,1,0,0,0,1
Пояснение команды:
--output eDP-1
— выбирает ваш экран (название может отличаться в зависимости от системы, поэтому рекомендуется проверить с помощью командыxrandr -q
).--fb 960x1100
— определяет размер виртуального экрана.--transform 1,0,-840,0,1,0,0,0,1
— смещает вывод на 840 пикселей влево, что позволяет обойти неисправную область на правой стороне экрана.
3. Альтернативные методы
3.1 Использование панели (меню)
Если у вас есть рабочая среда, поддерживающая панели, например XFCE, вы можете создать панель, которая будет занимать часть неиспользуемой области экрана. Таким образом, вы сможете перетаскивать окна в нужную зону экрана и минимизировать проблемы с визуализацией:
- Перейдите в настройки панели.
- Создайте новую панель в нужном разделе (например, внизу или сбоку).
- Настройте панель так, чтобы она занимала часть экрана, скрывая неисправную область.
3.2 Использование второго монитора
Если у вас есть возможность подключить второй монитор, вы можете воспользоваться режимом зеркалирования. Это позволит вам продолжать работу, даже если один из экранов неисправен. Однако помните, что вывод может корректироваться, поэтому тестируйте настройки отдельно для каждого экрана.
4. Заключение
Работа с ограничениями аппаратных средств является важной частью эффективного взаимодействия с системой. Изучив вышеупомянутые методы, вы сможете работать более продуктивно, несмотря на наличие неисправностей в вашем экране. Применение команд xrandr, создание специальной панели и использование второго монитора повышают вашу гибкость в работе с системой Linux.
Помните: всегда проверяйте поддержку вашего оборудования и актуальные версии программного обеспечения, так как некоторые функции могут отличаться в зависимости от драйверов и системных обновлений.
Вы можете также ознакомиться с документацией xrandr для получения более подробной информации и расширенных возможностей настройки.