web-dev-qa-db-fra.com

Changer la mise à l'échelle de l'affichage à la volée

Je cherche un raccourci clavier ou une instruction CLI pour changer l'échelle d'affichage à la volée. On dirait qu'il n'y a rien dans Compiz-Config Manager pour gérer cela?

display scale settings

2
Qeebrato

Vous devez jeter un oeil à xrandr. Je dis que c'est l'outil de choix.

Edit: xrandr --output "output_name" --scale 0.9x0.9

Voir plus d'exemples avec: man xrandr

1

Cette réponse de @ rubo77 fournit une excellente solution à une question similaire. Je vais élaborer dans la dernière partie pour atteindre ce résultat .

Vous pouvez savoir où le réglage est modifié si vous ouvrez un terminal:

gsettings list-recursively > /tmp/before
echo 'Now unity-control-center should open. Please change the scaling in "Displays" and close.'
unity-control-center
gsettings list-recursively > /tmp/after
diff /tmp/before /tmp/after | grep '[>|<]'

Copiez et collez les lignes ci-dessus dans un terminal. Cette commande créera deux fichiers temporaires - avant et après le changement du facteur d'échelle. presse Enter Une fois que vous avez fermé Unity Control Center pour exécuter la dernière ligne, ces deux fichiers temporaires seront comparés.

Dans mon système, lorsque je change le facteur d'échelle de 1 à 1,5, la sortie de ce qui précède est:

< org.gnome.desktop.interface text-scaling-factor 1.0
> org.gnome.desktop.interface text-scaling-factor 1.5
< org.gnome.desktop.interface cursor-size 24
> org.gnome.desktop.interface cursor-size 36
< com.ubuntu.user-interface scale-factor {'VGA-1': 8, 'HDMI-0': 8, 'HDMI-1': 8}
> com.ubuntu.user-interface scale-factor {'VGA-1': 8, 'HDMI-0': 8, 'HDMI-1': 12}

Donc, les nouvelles valeurs sont:

> org.gnome.desktop.interface text-scaling-factor 1.5
> org.gnome.desktop.interface cursor-size 36
> com.ubuntu.user-interface scale-factor {'VGA-1': 8, 'HDMI-0': 8, 'HDMI-1': 12}

J'ai enregistré les valeurs lorsque le facteur d'échelle est 1, 1.25 et 1.5.

Ces valeurs peuvent être modifiées via la ligne de commande à l'aide de la commande gsettings set. Donc, conformément à la réponse initiale, j'ai créé un script, appelé setscalefactor et placé dans /usr/local/bin/, qui sera donc disponible en tant que commande Shell:

Sudo touch /usr/local/bin/setscalefactor
Sudo chmod +x /usr/local/bin/setscalefactor
Sudo nano /usr/local/bin/setscalefactor

Le contenu de mon script est:

#!/bin/bash

if [ -z "${1}" ] || [ "$1" == "1" ] || [ "$1" == "1.0" ]; then
    # set scaling to 1.0
    gsettings set org.gnome.desktop.interface text-scaling-factor 1.0
    gsettings set org.gnome.desktop.interface cursor-size 24
    gsettings set com.ubuntu.user-interface scale-factor "{'VGA-1': 8, 'HDMI-0': 8, 'HDMI-1': 8}"
    echo "Set Scale factor: 1.0"; notify-send "Scale Factor" "1.0"
Elif [ "$1" == "1.25" ]; then
    # set scaling to 1.25
    gsettings set org.gnome.desktop.interface text-scaling-factor 1.25
    gsettings set org.gnome.desktop.interface cursor-size 30
    gsettings set com.ubuntu.user-interface scale-factor "{'VGA-1': 8, 'HDMI-0': 8, 'HDMI-1': 10}"
    echo "Set Scale factor: 1.25"; notify-send "Scale Factor" "1.25"
Elif [ "$1" == "1.5" ]; then
    # set scaling to 1.5
    gsettings set org.gnome.desktop.interface text-scaling-factor 1.5
    gsettings set org.gnome.desktop.interface cursor-size 36
    gsettings set com.ubuntu.user-interface scale-factor "{'VGA-1': 8, 'HDMI-0': 8, 'HDMI-1': 12}"
    echo "Set Scale factor: 1.5"; notify-send "Scale Factor" "1.5"
else
    echo "ERROR: Something went wrong!"; notify-send "Scale Factor" "ERROR: Something went wrong!"
fi

exit
  • Copiez le contenu ci-dessus et utilisez-le dans nanoShift+Insert pour la pâte; Ctrl+O et Enter pour sauver; Ctrl+X pour la sortie.
  • Remplacez le contenu après gsettings set par les valeurs de votre système!
  • Veuillez noter les guillemets: "{'VGA-1': ...}".

Désormais, setscalefactor est disponible en tant que commande Shell et peut gérer 1.0, 1.25 et 1.5 en tant qu'arguments, même s'il est exécuté sans argument, il sera vendu à 1. Le script s'imprimera ainsi que certains messages d'état.

La prochaine étape consiste à créer ce script accessible via combinaison de touches de raccourci . Allez à: Centre de contrôle de Unity (Paramètres système)> Clavier> Raccourcis> Raccourcis personnalisés. Créez ensuite vos raccourcis personnalisés, comme en tant qu’image:

enter image description here

6
pa4080