Масштаб интерфейса linux mint
У меня Linux Mint 19.2 Cinnamon x64, видеокарта GeForce GTX 960M, версия драйвера 430.26.
System:
Host: saband-pc Kernel: 4.15.0-55-generic x86_64 bits: 64 compiler: gcc
v: 7.4.0 Desktop: Cinnamon 4.2.3 Distro: Linux Mint 19.2 Tina
base: Ubuntu 18.04 bionic
Machine:
Type: Portable System: Dell product: Inspiron 7559 v: 1.1.8
serial:
Mobo: Dell model: 0H0CC0 v: A00 serial: UEFI: Dell v: 1.1.8
date: 04/17/2016
Battery:
ID-1: BAT0 charge: 6.3 Wh condition: 6.3/74.0 Wh (9%) model: SDI Dell
status: Full
CPU:
Topology: Quad Core model: Intel Core i7-6700HQ bits: 64 type: MT MCP
arch: Skylake-S rev: 3 L2 cache: 6144 KiB
flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 41472
Speed: 800 MHz min/max: 800/3500 MHz Core speeds (MHz): 1: 800 2: 800
3: 800 4: 800 5: 800 6: 800 7: 800 8: 800
Graphics:
Device-1: Intel HD Graphics 530 vendor: Dell driver: i915 v: kernel
bus ID: 00:02.0
Device-2: NVIDIA GM107M [GeForce GTX 960M] vendor: Dell driver: nvidia
v: 430.26 bus ID: 02:00.0
Display: x11 server: X.Org 1.19.6 driver: modesetting,nvidia
unloaded: fbdev,nouveau,vesa resolution: 3200×1800~60Hz
OpenGL: renderer: GeForce GTX 960M/PCIe/SSE2 v: 4.6.0 NVIDIA 430.26
direct render: Yes
Audio:
Device-1: Intel 100 Series/C230 Series Family HD Audio
vendor: Dell Sunrise Point-H driver: snd_hda_intel v: kernel
bus ID: 00:1f.3
Sound Server: ALSA v: k4.15.0-55-generic
Network:
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: Dell driver: r8169 v: 2.3LK-NAPI port: d000 bus ID: 04:00.0
IF: enp4s0 state: down mac:
Device-2: Intel Wireless 3165 driver: iwlwifi v: kernel port: d000
bus ID: 05:00.0
IF: wlp5s0 state: up mac:
Drives:
Local Storage: total: 1.03 TiB used: 377.58 GiB (35.9%)
ID-1: /dev/sda vendor: SanDisk model: Z400s M.2 2280 128GB
size: 119.24 GiB
ID-2: /dev/sdb vendor: Western Digital model: WD10JPVX-75JC3T0
size: 931.51 GiB
Partition:
ID-1: / size: 54.01 GiB used: 19.99 GiB (37.0%) fs: ext4 dev: /dev/sda4
ID-2: /home size: 688.89 GiB used: 357.55 GiB (51.9%) fs: ext4
dev: /dev/sdb3
Sensors:
System Temperatures: cpu: 59.0 C mobo: 29.8 C sodimm: 57.0 C gpu: nvidia
temp: 59 C
Fan Speeds (RPM): cpu: 1937
Info:
Processes: 267 Uptime: 4h 45m Memory: 15.54 GiB used: 3.20 GiB (20.6%)
Init: systemd runlevel: 5 Compilers: gcc: 7.4.0 Shell: bash v: 4.4.20
inxi: 3.0.32
Я использую разрешение экрана 3200×1800. В настройках у меня включено масштабирование double Hi-DPI и scaling factor 1.2 в настройках шрифтов. Некоторые приложения при этом выглядят хорошо, но в других все элементы интерфейса (шрифты и иконки) просто микроскопические. Пример можно увидеть на скрине: в Filezilla все иконки и шрифты нормального размере, а в Kdenlive всё маленькое. Настройки шрифта в Qt5 Settings менять пробовал, не помогло (помимо Kdenlive это ещё, например, такие программы, как GuitarPro 6, Enpass, Pinta. да много их).
Есть какие-то варианты решения, кроме как ставить низкое разрешение экрана?
Можно. Ставь себе вторую DE. И там меняй размеры шрифтов по умолчанию. Может глядишь, и в этой шкуре чего-то подправится.
Масштабирование в linux mint 18.3 mate
Ребят, помогите с маленькой проблемкой. Вчера перешел на linux mint 18.3 mate. Все в интерфейсе очень маленькое. Приходится прищуриваться. Пробовал поменять разрешение экрана. С уменьшением разрешения экрана ухудшается качество картинки. Можно как то поменять масштаб? Как в win10. Там можно было в настройках изменять масштаб: у меня стояло 125 процентов. В linux’e eсть что то подобное? И если есть, то где?
я бы тут явно не писал, если нашел
Скорее всего, ты даже не пытался. Расскажи что читал, что понял, что нет?
в том то и дело что ничего не понял. Текай, все равно помощи от тебя не дождусь
Если не умеешь читать и анализировать прочитанное, то linux — явно не твое.
я тебя уже понял. Выше почитай
Правой кнопкой мыши на рабочий стол, «Изменить фон рабочего стола», в окне выбрать вкладку «Шрифты» и настроить как угодно.
Это действительно так трудно самому найти?
Правой кнопкой мыши на рабочий стол, «Изменить фон рабочего стола», в окне выбрать вкладку «Шрифты» и настроить как угодно
И ничего это не решит. Все остальное, кроме шрифтов останется мелким. Нужно глобальное масштабирование. Mint здесь крайне ограничена. Можно сделать лишь двухкратное масштабирование (Параметры -> Общие -> Масштабирование пользовательского интерфейса). Если 2-кратное не устраивает, придется поплясать с бубном и не факт, что что-то получится
Какая видеокарта, какой драйвер (проприетарный/открытый), какой DE (Cinnamon, судя по всему)?
В Mate открываешь Меню — Центр правления — Внешний вид. В окне Внешнего вида открываешь вкладку Шрифты и затем в правом нижнем углу нажимаешь Подробнее. В открывшемся окне меняешь DPI с 96 до какого тебе надо/удобно, например, 144 (можно методом подбора поиграться со значениями, пока не устроит результат).
Этот параметр масштабирует все элементы, в том числе панели и иконки, в отличие от простого масштабирования текста, масштабирующего только сам текст.
какой DE (Cinnamon, судя по всему)
У автора Mate. Описал для него выше. Был бы Cinnamon, можно было бы выбрасывать его на помойку: в GUI только двухкратное увеличение DPI и никак иначе, без возможности самостоятельно его задавать. А через терминал там хз как всё это делать, Cinnamon не читает конфиги иксов.
Display scaling в Linux. Часть 1 — системные настройки
Дисплеи с высокой плотностью пикселей уже давно не редкость. И для того, чтобы UI не выглядел слишком мелко, применяется масштабирование. В разных системах используются разные подходы и имеются различные возможности настроек. Но одно объединяет их все — безмерное количество кривизны, костылей и глюков. Посмотрим как на сегодняшний день обстоит ситуация в лагере Linux.
Цель первой части — обрисовать ситуацию с настройками масштабирования в системе из коробки, без лишних плясок с бубном — так, как ее видит обычный пользователь.
Десктопных окружений великое множество, проверить все займет огромное количество времени, поэтому критерии выбора такие — находится в активной разработке и не требует отдельной установки, т.е. идет в комплекте с каким-н дистрибутивом. Ну и конечно оно должно быть более мене известным, потому выбирал просто из перечня в таблице.
Дистрибутивы для обзора были использованы следующие: Ubuntu и Fedora для Gnome, openSUSE для KDE, Manjaro для XFCE, Debian для MATE, Mint для Cinnamon, Ubuntu для LXQt и Deepin с его одноименным окружением.
Gnome
Поддерживает независимые настройки масштабирования для каждого монитора.
Доступные коэффициенты рассчитываются в зависимости от разрешения монитора, для 4K возможны варианты от 100% до 400%, для FullHD — 100% и 200%.
Дробное масштабирование (Fractional scaling) поддерживается частично. Возможность установки дробного масштабирования в различных дистрибутивах либо присутствует в настройках дисплея (например в Ubuntu), либо скрыта (как в Fedora). Но даже если опция скрыта, включить этот режим можно с помощью команды
gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']"
Доступные коэффициенты также рассчитываются в зависимости от разрешения монитора, для 4K возможны варианты от 100% до 400% с шагом 25%, для FullHD — от 100% до 225%.
Поскольку актуальная версия Gnome использует протокол Wayland, то для полноценной работы приложения должны поддерживать эту технологию. Для обычных X11 приложений написанных с использованием UI-фреймворков, которые не поддерживают Wayland используется реализация X Server под названием XWayland. К сожалению дробное масштабирование среди того что не поддерживается в режиме совместимости, в этом случае X11 приложения отрисовываются в 100% масштабе а затем просто растягиваются до необходимых размеров, даже если в этом режиме выбран целочисленный коэффициент. Когда то за подобное ругали Windows. лет десять назад.
Изменения настроек применяются сразу, log out не требуется.
KDE
В сессии X11 не поддерживает независимые настройки масштабирования для нескольких мониторов.
Дробное масштабирование поддерживается, доступные коэффициенты от 100% до 300% (не зависят от разрешения) с шагом 25%.
С ходу бросается в глаза что высота панели задач не меняется.
Изменения требуют сделать restart, по факту достаточно перелогиниться.
В Wayland сессии можно указать независимые настройки для разных мониторов, масштабирование дробное и по умолчанию X11 приложения будут отображаться с размытием так же как и в Gnome. Но начиная с Plasma 5.26 добавилась опция позволяющая X11 приложениям масштабироваться самостоятельно, в этом случае все работает прекрасно и никакого размытия. С панелью задач тоже все в порядке.
XFCE
Тут все плохо. Поддержка с виду как бы есть но лучше бы ее совсем не было, такое впечатление что код не то что не тестировали, а даже не запускали.
Независимые настройки для каждого монитора есть, также есть секретная опция Window Scaling в Appearance.
Дробное масштабирование с виду поддерживается, но теперь самое интересное — ставим в первом окне коэффициент 1.5x вместо 1x и… весь UI уменьшается. Причем чем больше коэффициент тем мельче будет UI
Взяв линейку легко выявить что все размеры не умножаются на scale factor, а делятся на него т.е. Вместо 150% получаем 66%, вместо 200% — 50% и.т.п. Что интересно, настройки позволяют указывать произвольное значение от 0.1 до 10.0 с шагом 0.1. Если указать значение меньше единицы то UI таки увеличится (например 0.7 даст примерно 143%), но размыто будет абсолютно все. Ситуацию немного улучшает секретная опция Window scale, там всего два варианта 1x и 2x, если выбрать 2x, то размер окон будет умножен на 2 и поделен на коэффициент из настроек дисплея. Тогда коэффициент 1.5 даст масштаб 133%, а коэффициент 2 сократится до 100% и в этом случае проще оставить везде единицы.
Применение настроек требует перелогиниться. Причем делать это придется видимо с клавиатуры, потому что кнопки на панели задач отваливаются (видно на первом скриншоте) и не реагируют на нажатия. Короче это не лучший выбор для дисплеев с высокой плотностью пикселей.
MATE
Не поддерживает независимые настройки масштабирования для нескольких мониторов.
Также нет гибкости выбора коэффициентов, только Regular (x1) или HiDPI (x2).
Среди настроек дисплея эту опцию искать бесполезно, она запрятана довольно далеко и неочевидно в System -> Preferences -> Look And Feel -> MATE Tweak.
Изменения применяются сразу.
Cinnamon
Поддерживает независимые настройки масштабирования для нескольких мониторов.
Поддерживает дробное масштабирование, эта опция помечена как experimental, но по умолчанию включена. Отключение дробного масштабирования отключит также и возможность независимой настройки для разных мониторов. Для дробного масштабирования диапазон настроек от 100% до 200% с шагом 25% независимо от разрешения монитора. При отключенном дробном масштабировании диапазон зависит от разрешения, так же как и на Gnome — от 100% до 400% для 4K и 100% и 200% для FullHD.
Изменения применяются сразу.
LXQt
Не поддерживает независимые настройки масштабирования для нескольких мониторов.
Настройки здесь снова бесполезно искать среди конфигурации дисплея, они запрятаны далеко. Можно указать дробный коэффициент — произвольное значение от 1.0 до 4.0 с точностью в два знака. Заголовки окон не масштабируются.
Применение изменений требует перелогиниться.
Deepin
Окружение используется в одноименном китайском дистрибутиве. До недавних пор не знал о его существовании, включил в список только потому что он фигурирует в таблице из Википедии, оказалось что по визуальному оформлению пожалуй один из лучших среди перечисленного.
Не поддерживает независимые настройки масштабирования для нескольких мониторов.
Дробное масштабирование поддерживается, доступные коэффициенты зависят от подключенных мониторов. Например если использовать только 4К то коэффициенты от 1.0 до 3.0 с шагом 0.25, а если в дополнение к 4К подключить FullHD, то доступные коэффициенты только 1.0 и 1.25.
Применение настроек требует перелогиниться.
Вывод
Из всех рассматриваемых окружений только Cinnamon и KDE (начиная с Plasma 5.26) масштабируют наиболее адекватно, можно настроить например 150% для High-DPI монитора (мне например 200% слишком много), и оставить 100% для второго Low-DPI монитора, и это будет работать.
Вторая часть будет о том, как программно определить системные настройки масштабирования из приложения. Поскольку в Linux нет единого API для этого, то зоопарк с этим творится еще похлеще.