Como definir uma resolução personalizada?

59

Eu tentei usar xrandr para definir 1680x1050 como um novo modo para saída VGA, mas diz:

 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
    
por user216356 16.11.2013 / 14:24

4 respostas

94

Primeiro, gere uma "modeline" usando cvt
A sintaxe é: cvt atualização da altura da largura

cvt 1680 1050 60

isso te dá:

# 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

Agora diga isso para xrandr :

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

Agora você pode adicioná-lo à tabela de possíveis resoluções de uma saída de sua escolha:

xrandr --addmode VGA-0 1680x1050_60.00

As alterações são perdidas após a reinicialização, para configurar a resolução de forma persistente, crie o arquivo ~/.xprofile com o conteúdo:

#!/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
    
por thom 16.11.2013 / 14:42
11

Como definir uma resolução personalizada especificada anteriormente. Depois de executar as outras etapas definidas para criar a resolução, execute:

xrandr -s 1680x1050
    
por GuiRitter 25.04.2015 / 02:20
2

Como definir uma resolução personalizada especificada anteriormente quando está executando vários monitores . Depois de executar as outras etapas definidas para criar a resolução, execute:

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

Substitua DVI-0 pelo seu ID do dispositivo, por ex. VGA-0

    
por pokkie 03.07.2017 / 09:32
0

Graças a thom e thirdender esta é basicamente uma única configuração de comando baseada no resposta mais votada .

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

O comando acima irá gerar o arquivo ~/.xprofile desejado. Apenas certifique-se de usar a resolução (ou seja, a variável RES ) de sua preferência. Mais informações aqui .

    
por Tanasis 08.10.2018 / 15:15