web-dev-qa-db-fra.com

Problème de mise à l'échelle / HIDPI pour les applications QT5 sous Gnome

J'ai un problème avec les applications QT (i.e. Picard ou MasterPDFeator ) Sous Gnome: Leur interface a l'air minuscule.
Au lieu de cela, l'application GTK a l'air bien.

Je voudrais une solution globale qui fonctionnera dans toutes les applications, pas un correctif par application.

Je ne sais pas exactement où le problème commence (est-ce une question QT5 ou un problème de gnome?) Mais j'aimerais avoir une interface plus grande . Comment puis-je le faire ?

J'ai déjà essayé avec une astuce expliquée ici mais ça marche partiellement:

  • si je lance les applications directement à partir du terminal, en ajoutant la bonne variable E.g. QT_SCALE_FACTOR=1.35 picard, l'astuce fonctionne!
  • bien que si je les lance dans le menu (gnome-shell), la variable exportée est complètement ignorée .

Y a-t-il un moyen de le réparer ?

J'ai un ordinateur portable connecté avec un moniteur externe de 24 "FullHD. Je suis sur une arche Linux x86_64 et Gnome 3.28/3.30.

6
mattia.b89

Selon le Wiki Archlinux:

Étant donné que Qt 5.6, les applications Qt 5 peuvent être invitées à honorer l'écran DPI en définissant la variable d'environnement qt_auto_screen_scale_factor.

Donc, vous avez juste besoin de modifier ~/.profile ou ~/.bash_profile et ajouter cette ligne pour exporter la variable d'environnement correcte comme celle-ci:

export QT_AUTO_SCREEN_SCALE_FACTOR=1

J'ai essayé avec Keepassxc sous Ubuntu 18.04 avec succès.

10
jokx

J'ai eu des problèmes d'obtenir Viber pour fonctionner correctement sur mon écran Hidpi. Par défaut, Viber serait massif au point où je devais l'utiliser en plein écran afin de l'utiliser.

La solution consistait à désactiver la mise à l'échelle automatique (QT_AUTO_SCREEN_SCALE_FACTOR=0) et définir une valeur manuelle (QT_SCALE_FACTOR=1.5).

J'ai modifié le Exec= faire la queue /usr/share/applications/viber.desktop pour ça:

Exec=/usr/bin/env QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_SCALE_FACTOR=1.5 /usr/bin/viber %u

Maintenant, ça a l'air parfait. Votre kilométrage peut varier en fonction de la taille de votre écran, vous voudrez peut-être définir QT_SCALE_FACTOR à 2 ou encore plus.

Je l'ai trouvé étrange que je devais explicitement désactiver la mise à l'échelle automatique, car la plupart des réponses que j'ai trouvées en ligne indiquent que vous devez Activer Cela corrige vos problèmes de mise à l'échelle. Je suppose que c'est devenu la valeur par défaut dans les versions plus récentes de qt (?)

(Je sais que cela ne répond pas strictement à la question posée, mais je pensais que cela serait utile à quelqu'un.

4
Hubro

N'utilisez pas QT_AUTO_SCREEN_SCALE_FACTOR. Basé sur mon expérience, cela semble causer une limite de défaillance étrange.

Utilisation QT_SCALE_FACTOR=1.5 au lieu.
[.____] (ou quelle que soit la taille souhaitée, prend en charge la mise à l'échelle fractionnelle.)

Fonctionne parfaitement bien sur un dell avec un affichage 4K.

Vous pouvez également ajouter ceci au lanceur de bureau:

Exec=env QT_SCALE_FACTOR=1.5 /path/to/app

Source :Ça fonctionne sur ma machine avec un affichage 4K.

1
emf