Jak ustawić niestandardową rozdzielczość?


77

Próbowałem użyć xrandrustawienia 1680x1050 jako nowego trybu dla wyjścia VGA, ale mówi:

sudo xrandr --addmode VGA-0 1680
X Error of failed request:  BadMatch (invalid parameter attributes)
Major opcode of failed request:  140 (RANDR)
Minor opcode of failed request:  18 (RRAddOutputMode)
Serial number of failed request:  35
Current serial number in output stream:  36

Odpowiedzi:


128

Najpierw wygeneruj „modeline” za pomocą cvt
Składnia to: cvt szerokość wysokość odświeżanie

cvt 1680 1050 60

to daje ci:

# 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz
Modeline "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync

Teraz powiedz to xrandrowi :

xrandr --newmode "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync

Następnie możesz teraz dodać go do tabeli możliwych rozdzielczości wybranego wyjścia:

xrandr --addmode VGA-0 1680x1050_60.00

Zmiany zostaną utracone po ponownym uruchomieniu, aby trwale ustawić rozdzielczość, utwórz plik ~/.xprofilez zawartością:

#!/bin/sh
xrandr --newmode "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync
xrandr --addmode VGA-0 1680x1050_60.00

21
Podłączone urządzenie może nie być VGA-0. Jeśli otrzymasz ten komunikat xrandr: cannot find output "VGA-0", spróbuj uruchomić następującą komendę: xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/"(źródło: xrandr na ArchWiki ). Wynikiem tego polecenia powinien być poprawny identyfikator urządzenia.
trzecient

10
Nie potrzebujesz sudo z xrandr
Panther

2
Chciałbym dodać, że mam ten sam błąd - i powyższe w ogóle nie rozwiązuje problemu
TellMeWhy

3
Jeśli jesteś na maszynie wirtualnej, wyświetlacz jest zwykle Virtual1zamiast VGA-0.
CyberEd

5
Musisz wymienić VGA-0 na połączenie z monitorem. Użyj xrandr --listmonitors. Zobacz Jak naprawić błąd „xrandr: nie można znaleźć wyjścia„ VGA1 ”?
Hooman

14

Jak ustawić niestandardową rozdzielczość wcześniej określoną. Po wykonaniu innych kroków zdefiniowanych w celu utworzenia rozdzielczości uruchom:

xrandr -s 1680x1050

4

Jak ustawić niestandardową rozdzielczość wcześniej określoną podczas uruchamiania wielu monitorów . Po wykonaniu innych kroków zdefiniowanych w celu utworzenia rozdzielczości uruchom:

xrandr --output DVI-0 --mode 1680x1050

Zamień na DVI-0swój identyfikator urządzenia, npVGA-0


3

Dzięki Thom i Thirdender jest to w zasadzie konfiguracja pojedynczego polecenia oparta na najczęściej głosowanej odpowiedzi .

RES="1920 1200 60" && \
DISP=$(xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/") && \
MODELINE=$(cvt $(echo $RES) | grep -e "Modeline [^(]" | sed -r 's/.*Modeline (.*)/\1/') && \
MODERES=$(echo $MODELINE | grep -o -P '(?<=").*(?=")') && \
cat > ~/.xprofile << _EOF
#!/bin/sh
xrandr --newmode $MODELINE
xrandr --addmode $DISP $MODERES
_EOF

Powyższe polecenie wygeneruje żądany ~/.xprofileplik. Tylko upewnij się, że używasz rozdzielczości (tj. RESZmiennej) swoich upodobań. Więcej informacji tutaj .

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.