Как исправить масштабирование Java-приложения на дисплее с высоким разрешением в Linux? - PullRequest
0 голосов
/ 04 ноября 2019

Я только что переключился на java 11 (AdaptOpenJDK), чтобы мое приложение Java Swing выглядело нормально на дисплеях с высоким dpi при различных настройках масштабирования системы.

В Windows работает нормально. Независимо от значения масштабирования, настроенного в системе, java автоматически обнаруживает его и использует его для соответствующего масштабирования графического интерфейса.

Однако в Linux графический интерфейс не учитывает масштабирование системы, и, таким образом, он выглядит крошечным на высоких-dpi отображает.

После прочтения некоторых постов я обнаружил, что могу указать java, какое значение масштабирования использовать. Например, если системное масштабирование составляет 200%, я могу добавить следующий аргумент командной строки к команде java, используемой для запуска приложения.

-Dsun.java2d.uiScale=2.0

Графический интерфейс в Linux выглядит нормальнокогда я добавляю вышеуказанный параметр командной строки.

Я также читаю, что могу установить переменную среды GDK_SCALE.

Однако я хотел бы найти лучшее решение. В идеале, где мне не нужно указывать значение масштабирования для использования. Кто-нибудь знает, возможно ли это?

Если вышеупомянутое невозможно, то я думаю, что моим следующим шагом будет создание команды в linux, которая возвращает текущее значение масштабирования системы, и использовать его дляустановите опцию sun.java2d.uiScale.

Любая помощь приветствуется.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...