Summary: | Bad font hinting or rendering | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | Loïc Yhuel <loic.yhuel> |
Component: | general | Assignee: | Sebastian Kügler <sebas> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | a.samirh78, bhush94, mklapetek, nate |
Priority: | NOR | Keywords: | triaged |
Version: | 5.0.0 | ||
Target Milestone: | 1.0 | ||
Platform: | Arch Linux | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
klipper tooltip
status & notifications task manager tooltip |
Created attachment 87789 [details]
status & notifications
Created attachment 87790 [details]
task manager tooltip
This could be this bug: https://bugreports.qt-project.org/browse/QTBUG-41590 also see: https://bugreports.qt-project.org/browse/QTBUG-40971 Since some texts were properly rendered, I think it's more likely either : - missing "renderType: Text.NativeRendering" - subpixel positionning (with full hinting text must be pixel aligned, else it looks weird) The report says "Version: 5.0.0", do you still see this with 5.1.0? It's improved, for example tooltips are correct now, "Status & Notifications" is slightly better but still not perfect. I don't know how to trace its properties so I can check if there is something wrong or not. In fact the main problem now with "Status & Notifications" is its weight ("font.weight: Font.Light" in Heading.qml) : - with the default (blurry, but that's another problem) "Oxygen Sans" the weight seems to be ignored (there is no light version). - with "DejaVu Sans", it probably uses the ExtraLight version), which doesn't look appropriate I've been told Qt5.4 significantly improves font rendering/hinting. Is there any way you can test Qt5.4? I tried on Rawhide which has Qt5.4 beta, and it doesn't seem to change anything : - Oxygen font is blurry (Note that the Oxygen*-unhinted.ttf recently deleted from the oxygen-fonts repository are better, but not as good as DejaVu, and a few letters like "g" is still really blurry) - DejaVu font is crisp with full hinting, as long as I edit /usr/lib64/qt5/qml/org/kde/plasma/extras/Heading.qml to remove the "font.weight: Font.Light" (which was ignored with Oxygen). But the UI is obviously designed for Oxygen : DejaVu is a little wider, and the vertical alignment is not perfect with it. For Plasma 5.5 we've changed the font from Oxygen to Noto. Please retest if that fixes your issues. I tested on Archlinux (Fedora doesn't use Noto, see https://bugzilla.redhat.com/show_bug.cgi?id=1291070). It's better than Oxygen Sans, but still not as good as DejaVu (perhaps I'm just too much used to it). But the "font.weight: Font.Light" is still in /usr/lib64/qt5/qml/org/kde/plasma/extras/Heading.qml. With Oxygen or Noto fonts, it's ignored since there is no light variant. With DejaVu, it uses the ExtraLight variant, which is blurry (so I need to either modify Heading.qml, or remove this variant from the system). Should this Font.Light weight be used, as it doesn't apply on the default fonts ? Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone! I checked on Fedora 29 Beta, there are at least 3 cases : - /usr/lib64/qt5/qml/org/kde/plasma/extras/Heading.qml still has "font.weight: Font.Light", which was ignored for Oxygen, and is still ignored with Noto since there is no variant. With DejaVu, it selects the ExtraLight variant, which is blurry since its lines are less than 1px width. - krunner / kickoff input field : probably due to https://bugs.kde.org/show_bug.cgi?id=396813 - QML SpinBox (for example DPI value in fonts KCM) : "renderType" needs to be set for the TextInput in /usr/lib64/qt5/qml/QtQuick/Controls.2/org.kde.desktop/SpinBox.qml Bug related to use of QtQuickControls 1 text stuff, which we ported away from fully a few years ago. |
Created attachment 87788 [details] klipper tooltip On many (but not all) texts, full hinting doesn't seem to be applied, despite my system settings (full hinting, grayscale AA). See the screenshots : - "Status & Notifications" isn't rendered correctly, but "Notifications" and "Battery & Brightness" are - in kickoff, the user name and localhost are not correctly rendered - month in calendar plasmoid - same for many "tooltips" : when the mouse is over kickoff icon, the task manager ones, klipper, time/date, "Most recent device", ...