Я использую Winbox через Wine на Ubuntu 19.04 на Thinkpad X1 с экраном HiDPI 2560x1440. Разрешение экрана установлено на 192 dpi. Тем не менее, мне сложно правильно отобразить Winbox под Wine на этом дисплее. К сожалению, Winbox не учитывает масштабирование дисплея в Linux. В результате, при настройке DPI дисплея по умолчанию в Wine (72 dpi) я получаю совершенно неработоспособный мелкий интерфейс:
Если я устанавливаю значение DPI дисплея в winecfg на 192 dpi, чтобы соответствовать DPI моего Linux дисплея, шрифты в Winbox масштабируются должным образом, но графические элементы интерфейса — такие как списки, флажки и т.д. — нет. Все они похоже используют какую-то кастомную библиотеку интерфейса, которая не масштабируется под Wine. В результате, интерфейс Winbox по-прежнему остается непригодным для работы, так как теперь уже увеличенный текст не помещается в те же маленькие области интерфейса:
В данный момент я выкручиваюсь с помощью хака VNC — открываю отдельный локальный X сервер с дисплеем :1 (обычный X сервер — :0), затем сервер VNC на дисплее :1, который имеет примененное масштабирование, затем Winbox в Wine на дисплее :1, а потом клиент VNC, чтобы получить масштабированный вид окна Winbox: $ Xephyr -once -screen 1366x768 -retro :1 & # используйте хотя бы 768 в высоту, чтобы избежать обрезки в Winbox $ x11vnc -localhost -display :1 -scale 7/4 -repeat & # используйте -scale 2:nb для прямого пиксельного масштабирования 2:1 $ DISPLAY=:1 wine /usr/local/bin/winbox.exe & $ DISPLAY=:1 wm2 & # необязательно, только если хотите перемещать/масштабировать окно Winbox $ vncviewer localhost Это дает мне интерфейс Winbox с масштабированием 175%:
Однако это довольно громоздко. Есть ли лучший способ добиться правильного масштабирования интерфейса Winbox на Linux?
Если я устанавливаю значение DPI дисплея в winecfg на 192 dpi, чтобы соответствовать DPI моего Linux дисплея, шрифты в Winbox масштабируются должным образом, но графические элементы интерфейса — такие как списки, флажки и т.д. — нет. Все они похоже используют какую-то кастомную библиотеку интерфейса, которая не масштабируется под Wine. В результате, интерфейс Winbox по-прежнему остается непригодным для работы, так как теперь уже увеличенный текст не помещается в те же маленькие области интерфейса:
В данный момент я выкручиваюсь с помощью хака VNC — открываю отдельный локальный X сервер с дисплеем :1 (обычный X сервер — :0), затем сервер VNC на дисплее :1, который имеет примененное масштабирование, затем Winbox в Wine на дисплее :1, а потом клиент VNC, чтобы получить масштабированный вид окна Winbox: $ Xephyr -once -screen 1366x768 -retro :1 & # используйте хотя бы 768 в высоту, чтобы избежать обрезки в Winbox $ x11vnc -localhost -display :1 -scale 7/4 -repeat & # используйте -scale 2:nb для прямого пиксельного масштабирования 2:1 $ DISPLAY=:1 wine /usr/local/bin/winbox.exe & $ DISPLAY=:1 wm2 & # необязательно, только если хотите перемещать/масштабировать окно Winbox $ vncviewer localhost Это дает мне интерфейс Winbox с масштабированием 175%:
Однако это довольно громоздко. Есть ли лучший способ добиться правильного масштабирования интерфейса Winbox на Linux?