LINUX.ORG.RU

ШГ в GTK4/libadwaita приложениях под плазмой

 , , ,


0

1

После сегодняшнего обновления сломался рендеринг шрифтов в GTK4 приложениях под вяленой плазмой 6.2.1. У меня их два: Pamac и Bottles. Раньше в них шрифты рендерились так же, как и во всех остальных приложениях, а теперь они выглядят уродливыми и несглаженными. В остальных приложениях на Qt и GTK3 все нормально.

Вот так ШГ выглядят в плазме:

https://imgur.com/a/lqjcScf

А вот как они выглядят в Pamac:

https://imgur.com/a/3WPMWvK

Настройки шрифтов:

  • Liberation Sans 10pt
  • Антиалиасинг: включен
  • Субпиксельное сглаживание: RGB
  • Хинтинг: полный

Те же самые настройки вручную прописаны для GTK приложений в dconf в разделе /org/gnome/desktop/interface.

Что интересно, проблемы со шрифтами начались еще месяц назад при обновлении с GTK 4.15 до 4.16. Там добавили настройку gtk-font-rendering. По умолчанию она выставлена в значение automatic и шакалит шрифты. Поменял настройки на manual и шрифты снова стали отрисовываться как в плазме. Ну а теперь даже эта настройка не помогает.

Обновления были в основном минорные. Плазма обновилась с 6.2.0 до 6.2.1, GTK4 с 4.16.2 до 4.16.3, libadwaita с 1.6.0 до 1.6.1. Пробовал откатить GTK4 и libadwaita до старых версий - не помогло.

В общем если кто сталкивался, подскажите куда копать.


Ответ на: комментарий от vbcnthfkmnth123

Никогда больше не кидайте никому этот тред. Удалите его из закладок и забудьте навсегда. Если почитать ответы разработчиков в нём, можно дойти до лавкрафтовского ужаса…

Да и вообще, не нужен он, этот ваш subpixel rendering. Вон там за бугром даже в самом дешманском ноуте уже давно 4K минимум (пруф от лидера проекта Fedora, он врать не будет).

spal
()

Можно попробовать прописать такие же настройки в ~/.config/gtk-4.0/settings.ini.

[Settings]
gtk-hint-font-metrics=1

gtk-font-name=Liberation Sans 10
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle=hintfull
gtk-xft-rgba=rgb

Если приложения работают под Wayland, а не через XWayland прослойку, то оно по идее должно сначала смотреть в своём реестре gsettings, а уже потом в файле, но вдруг поможет.

spal
()
Последнее исправление: spal (всего исправлений: 1)
Ответ на: комментарий от vbcnthfkmnth123

Это не баг, так и задумано. Наслаждайся.

Это да, но ведь тикету уже три года, а у меня отрисовка шрифтов работала нормально вплоть до сегодняшнего обновления. Я не присматривался, возможно отрисовка шрифтов в GTK все это время немного отличалась от отрисовки в Qt, но ничего особо не замечал. А сейчас отличия прямо сильно заметны. Вот и интересно, что же такого поменялось в минорных обновлениях пакетов, что рендеринг отвалился на ровном месте. Причем именно сейчас, а не три года назад.

archie
() автор топика
Последнее исправление: archie (всего исправлений: 1)
Ответ на: комментарий от posixbit

А на моём мониторе 94 PPI с полуслепыми глазами большее ШГ именно на первом скриншоте, а на втором как будто даже лучше видно.

Ну это же топик про ШГ, тут у всех всё по-разному😀 У меня 163 PPI. На первом скрине тонкие сглаженные шрифты, субпиксельная радуга не заметна вообще, а вот на втором неровные пикселявые шрифты с лесенками, как будто вообще без сглаживания. В общем как именно оно выглядит - без разницы, это все вкусовщина. Вопрос в том, как сделать отрисовку шрифтов в GTK4 приложениях, как на первом скрине.

Боль. Зачем так?

А что с 10pt не так?

archie
() автор топика
Ответ на: комментарий от spal

Можно попробовать прописать такие же настройки в ~/.config/gtk-4.0/settings.ini.

Спасибо, но увы, не помогло. Даже опция gtk-hint-font-metrics=1 ничего не изменила. В арчевики пишут, что она должна сделать отрисовку шрифтов приближенной к GTK3, но я не вижу никакой визуальной разницы между значениями 0 и 1.

archie
() автор топика
Ответ на: комментарий от firkax

Открыл оба твоих скрина, разницы в качестве шрифтов не заметил.

Ну там разница не прямо катастрофическая. Шрифт тот же самый, отличается только метод сглаживания. У меня на втором скрине качество визуально хуже. Не так, что прямо что глаза вытекают, но довольно заметно.

archie
() автор топика
Ответ на: комментарий от archie

Еле заметная угловатость на втором скрине появилась только после увеличения его в полтора раза (у меня 100dpi если что, т.е. увеличил до 66dpi). Заметная без пристального вглядывания - если увеличить в 2 раза. А если увеличить в 3.5 раз то угловатость становится видна и на первом скрине, но кроме неё там ещё замылено всё.

У тебя расстояние от глаз до экрана нормальное? Должно быть не меньше двух диагоналей.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)
Ответ на: комментарий от firkax

У тебя расстояние от глаз до экрана нормальное? Должно быть не меньше двух диагоналей.

Монитор 27", расстояние примерно 80 см, что конечно меньше двух диагоналей.

Тоже порассматривал пиксели на скриншотах под большим масштабом. Действительно, отличается метод сглаживания. На первом скрине субпиксельное сглаживание с радугой. На втором скрине чисто черно-белое сглаживание. Поэтому и получается, что на первом скрине шрифты визуально более гладкие.

archie
() автор топика
Ответ на: комментарий от archie

Ну так отодвинь его подальше, это и для глаз и для нервной системы вообще вредно (слишком большой угловой размер информационной картинки), На полтора метра хотя бы. И шрифты перестанут беспокоить.

firkax ★★★★★
()
Ответ на: комментарий от firkax

У меня стандартный стол 120x80, так что дальше 80-90 см вряд ли получится отодвинуть. Проще тогда с ШГ смириться. Ну или вообще гткшные приложения выкинуть 😁

archie
() автор топика

Увидел сегодня пост на реддите с той же самой проблемой. Оказывается, дело не только в шрифтах. Вообще весь интерфейс GTK4 приложений выглядит более жирным, линии толще, цвета темнее. Это происходит только под вяленым. Под иксами все нормально.

Вот так настройки Bottles выглядят под иксами. Это нормальный вид libadwaita приложений, каким он и должен быть:

https://imgur.com/a/VGkMeMd

А вот так под вяленым:

https://imgur.com/a/Abwa4lI

На обоих скринах окна активные и с фокусом. В общем на этот раз видимо шрифты не при чем. Это вяленопроблемы.

archie
() автор топика
Ответ на: комментарий от anonymous

это проблемы говнотыка

Ага, оказалось, что проблема в Vulkan рендерере говнотыка. Если запустить GTK4 приложение с OpenGL рендерером, то все работает нормально:

GSK_RENDERER=gl bottles

Как я понял, GTK 4.16 под вяленым по умолчанию использует Vulkan, а под иксами - OpenGL. Вот поэтому под вяленым были проблемы, а под иксами нет.

archie
() автор топика
Ответ на: комментарий от Aceler

Вроде бы появилось. В рач как раз в первой половине октября завезли плазму 6.2, у которой в списке изменений значится:

we’ve implemented more complete support for the Wayland color management protocol, and enabled it by default.

Думаешь, это может шакалить яркость/гамму в GTK приложениях? Я никогда не заморачивался с управлением цветом и ничего специально не настраивал. Пакеты типа colord, colord-gtk, colord-gtk4, colord-kde не поставлены.

archie
() автор топика