Es gibt einige Anwendungen (hauptsächlich auf Java-Basis), die nicht der globalen 2x-Skala folgen, die ich in den Bildschirmeinstellungen festgelegt habe. Diese Apps sind auf meinem hochauflösenden Bildschirm mit 3200x1800px wirklich winzig .
Wie kann ich diese Apps in einer kleineren Bildschirmauflösung zum Laufen bringen?
java
display-resolution
dpi
hdpi
scale-mode
rubo77
quelle
quelle
data/bin/studio.sh
:eval "$JDK/bin/java" $ALL_JVM_ARGS -Djb.restart.code=88 -Dis.hidpi=true $MAIN_CLASS_NAME "$@"
- aber kein EffektAntworten:
Ein wichtiges Komfort-Upgrade wäre die Verwendung eines Hintergrundskripts, mit dem die Auflösung pro Anwendung automatisch festgelegt wird , während Sie verschiedene Auflösungen für verschiedene (mehrere) Anwendungen gleichzeitig festlegen können.
Genau das macht das folgende Skript.
Ein Beispiel für eine Standardauflösung von
1680x1050
:Läuft und
gedit
wechselt automatisch zu640x480
:Läuft und
gnome-terminal
wechselt automatisch zu1280x1024
:Wenn die Anwendung geschlossen wird, wird die Auflösung automatisch auf zurückgesetzt
1680x1050
Wie benutzt man
set_resolution.py
Stellen Sie im Kopf des Skripts Ihre Standardauflösung in der folgenden Zeile ein:
In dem gleichen Verzeichnis (Ordner), erstellen Sie eine Textdatei, genau benannt:
procsdata.txt
. Stellen Sie in dieser Textdatei die gewünschte Anwendung oder den gewünschten Prozess ein, gefolgt von einem Leerzeichen und der gewünschten Auflösung. Eine Anwendung oder ein Skript pro Zeile sieht folgendermaßen aus:Führen Sie das Skript mit folgendem Befehl aus:
Hinweis
Die Skriptverwendung
pgrep -f <process>
, die alle Übereinstimmungen abfängt, einschließlich Skripten. Der mögliche Nachteil ist, dass es zu Namenskonflikten kommen kann, wenn eine Datei mit demselben Namen wie der Prozess geöffnet wird.Wenn Sie auf solche Probleme stoßen, ändern Sie Folgendes:
in:
Das Drehbuch
Erläuterung
Beim Start des Skripts wird die Datei gelesen, in der Sie Ihre Anwendungen definiert haben, und die entsprechenden gewünschten Bildschirmauflösungen.
Anschließend werden die laufenden Prozesse (die
pgrep -f <process>
für jede Anwendung ausgeführt werden) überwacht und die Auflösung festgelegt, wenn die Anwendung gestartet wird.Wenn
pgrep -f <process>
für keine der aufgelisteten Anwendungen eine Ausgabe erstellt wird, wird die Auflösung auf "Standard" gesetzt.Bearbeiten:
"Dynamische" Version (wie gewünscht)
Während die obige Version mit mehreren aufgelisteten Anwendungen funktioniert, wird nur die Auflösung für jeweils eine Anwendung festgelegt .
Die folgende Version kann verschiedene Anwendungen mit einer unterschiedlichen (erforderlichen) Auflösung gleichzeitig ausführen. Das Hintergrundskript verfolgt die Anwendung mit der höchsten Priorität und stellt die Auflösung entsprechend ein. Es funktioniert auch gut mit Alt+ Tab.
Beachten Sie, dass dieses Verhalten möglicherweise ärgerlich ist, wenn Sie häufig zwischen dem Desktop und den aufgelisteten Anwendungen wechseln. Der Schalter für die häufige Auflösung ist möglicherweise zu viel.
Unterschiede in der Einrichtung
Das Setup ist ziemlich gleich, abgesehen von der Tatsache, dass dieses verwendet
wmctrl
undxdotool
:Das Drehbuch
Anmerkungen
quelle
sleep 5 && cat "/proc/$(xdotool getwindowpid "$(xdotool getwindowfocus)")/comm"
Fokussieren Sie die App innerhalb von 5 Sekunden und Sie erhalten den gewünschten Namen (Quelle: askubuntu.com/a/508539/34298 )Testen Sie das Hinzufügen zu Ihrer Java-Befehlszeile:
-Dsun.java2d.uiScale=2.0
oder stellen Sie einen gewünschten Skalierungsfaktor ein.quelle
Als Workaround
Ich habe ein Bash-Skript erstellt, das die Auflösung vor dem Start der Anwendung in fullHD ändert (in diesem Beispiel Android Studio) und beim Beenden der Anwendung wieder auf 3200x1800 zurücksetzt:
Geben Sie dieses Skript ein:
und gib ihm ausführbare Rechte:
Dann können Sie es mit Alt+ startenF1
studio
Weitere Größenänderungsfaktoren für 2.0 finden Sie unter /ubuntu//a/486611/34298
Zum einfachen Ein- und Ausschalten des Zooms in Firefox verwenden Sie die Erweiterung Zoom Menu Elements
quelle