Мы будем использовать два инструмента для достижения нашей цели. Первый - cvt, а второй - xrandr.
Прежде всего, вы должны знать, сколько места вы хотите обрезать и с какой стороны экрана. В моем случае у меня были битые пиксели в верхней части экрана моего ноутбука, занимающие около 20 пикселей (предположительно), поэтому я хотел уменьшить размер экрана в верхней части экрана и их, а не чтобы они покрывали верхнюю часть заголовков , Я расскажу вам, как я это сделал, вы можете принять его в соответствии с вашей ситуацией.
Итак, я начал с запуска xrandr, чтобы увидеть размер моего дисплея
$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 32767 x 32767
LVDS1 connected primary 1280x800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280x800 60.0*+ 50.0
1024x768 60.0
800x600 60.3 56.2
640x480 60.0 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
Так что размер экрана 1280х800
Поскольку я предполагаю, что пиксели заняли 20 пикселей в верхней части экрана, поэтому новое значение будет 1280x780.
ВТОРОЙ: werun cvt, чтобы мы могли получить «магические значения» для этого размера:
$ cvt 1280 770
# 1280x770 59.91 Hz (CVT) hsync: 47.93 kHz; pclk: 79.75 MHz
Modeline "1280x770_60.00" 79.75 1280 1344 1472 1664 770 773 783 800 -hsync +vsync
Важная часть начинается с "Modeline" - значения, указанные в этой строке, - это те, которые вам нужно будет передать xrandr, чтобы на экране появилось новое значение. Xrandr делает это, используя то, что называется "режим".
Третье: пришло время создать новый режим, используя значения, которые мы получили из cvt.
Команда, которая позволяет нам сделать это (используя значения, которые я получил выше) выглядит следующим образом:
$ xrandr --newmode 1280x770 79.75 1280 1344 1472 1664 770 773 783 800 -hsync +vsync
ЧЕТВЕРТЫЙ: мы добавляем этот новый режим к тем, которые доступны в xrandr. Это делается с помощью команды --addmode в xrandr. В моем конкретном случае я добавлял его в LVDS1.
Итак, команда будет:
$ xrandr --addmode LVDS1 1280x770
ПЯТЫЙ: Мы проверяем, был ли новый режим добавлен в xrandr. Это делается с помощью:
$ xrandr -q
Я получил:
$ xrandr -q
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 32767 x 32767
LVDS1 connected primary 1280x800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280x800 60.0*+ 50.0
1024x768 60.0
800x600 60.3 56.2
640x480 60.0 59.9
1280x770 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
Вы можете видеть, что это было добавлено и теперь перечислено внизу - 1280x770 59,9
Так что теперь время запустить новый режим! Мы делаем это, запустив:
$ xrandr --output LVDS1 --mode 1280x770
Экран должен погаснуть и снова включиться с примененным новым режимом и уменьшенным размером экрана.
В результате появляется черная полоса в верхней части экрана, где мышь и приложения используют ее как границу экрана.
Итак, последний шаг - запуск этой команды при входе в систему, чтобы мне не приходилось с ней справляться. Способ сделать это зависит от вашего рабочего стола и выходит за рамки этого ответа.