
Recientemente comencé a usar el comando xrandr --dpi 166
para mi nueva computadora portátil ejecutandoUbuntu 16.04.3 de 64 bitsdespués de notar que de lo contrario el sistema usa automáticamente 96 ppp.
Sin embargo, una configuración de ppp tan alta da como resultado menús y barras de herramientas extremadamente grandes.solo en aplicaciones QtTengo, como Master PDF Editor, digiKam y Krita (los dos últimos están en formato AppImage). Otras aplicaciones que se ejecutan en entornos Java o WINE no plantean tales problemas.
Espero encontrar una manera de ingresar manualmente una configuración de ppp específica para aplicaciones Qt o alguna otra forma de resolver este problema.
Si no hay forma de especificar globalmente una configuración de ppp para las aplicaciones Qt, tal vez un simple script contenedor que ingrese xrandr --dpi 96
antes y restaure la configuración inicial de ppp después de dicha aplicación también podría funcionar...
Respuesta1
Una solución temporal menos que perfecta que he encontrado es el siguiente script bash contenedor simple que se puede usar en el archivo .desktop relevante en lugar del ejecutable de la aplicación en cuestión, por ejemplo masterpdfeditor4
:
#!/bin/bash
HiDPI="$(xdpyinfo | grep dots | awk -F'x' '{print $2}' | awk -F' ' '{print $1}')"
if [[ ! $HiDPI = 96 ]]
then
xrandr --dpi 96
masterpdfeditor4 "$@"
xrandr --dpi $HiDPI
else
masterpdfeditor4 "$@"
fi
Esto restaurará la configuración de ppp original solo si se abre y cierra una de esas aplicaciones, o en caso de que se inicie más de una aplicación, solo si la primera aplicación se cierra en último lugar.
En segundo lugar, de alguna manera algunos elementos de la GUI distintos de los menús y las barras de herramientas no se pueden arreglar de esta manera, por ejemplo, el tamaño del cursor en el espacio de trabajo de Krita...
Respuesta2
Pude lograr resultados bastante buenos ajustando algunas variables de entorno de Qt, a saber QT_AUTO_SCREEN_SCALE_FACTOR
y QT_SCALE_FACTOR
. Puede elegir sus propios valores, que podrían adaptarse mejor a su caso:
$ QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_SCALE_FACTOR=1.1 virtualbox
Puede encontrar más información sobre Qt vars aquí:https://doc.qt.io/qt-6.2/highdpi.html