Something has happened to DT's font rendering
Is there an existing issue for this?
- [x] I checked and did not find my issue in the already reported ones
Describe the bug
Better described by a bunch of images, I guess.
Subpixel antialising doesn't work very well:
Some labels are barely legible:
And some fonts are a bit 90's:
Maybe it's only a Windows thing, dunno. Some fonts tend to look better on Windows than on Linux (and vice versa).
The images are from 5.2.1 but I've tried the latest as well.
Steps to reproduce
- Run Daktable
- Observe
Expected behavior
The text is nice and smooth, and perhaps by today's standards.
Where did you obtain darktable from?
darktable.org / GitHub release
darktable version
5.2.1
What OS are you using?
Windows
What is the version of your OS?
Windows 10
Are you using OpenCL GPU in darktable?
Yes
So 5.2.0 didn't exhibit the problem?
I don't know how about the stable 5.2, but I've been using DT 5.1 very close to the release, and I don't recall these issues. Something must have changed. My autistic me set off the "this is different and I don't like it" alarm. 🙂
I can verify, of course.
Well, my bad then. I've gone back to the pre-5.2 version, and it's still the same. Perhaps I just didn't notice, or something has happened on the OS level.
Okay, I've tried to run DT in WSL (Ubuntu 24 LTS), and the difference is perceivable, even though some may not consider it worth mentioning, especially for high DPI panels.
Windows:
Ubuntu:
The Linux version doesn't appear to use subpixel smoothing.
In windows, are using using a nativesl screen resolution? What about scaling?
@gi-man Yes, no changes.
I've tried to compile DT on my Windows 11 laptop using a fresh, new MSYS installation, and the fonts are actually different. So that may be where my confusion comes from.
The Windows 11 version looks better IMO.
The active preset legibility can be fixed by using normal font weight instead of lighter:
#snapshot-button entry,
#iop-module-name
{
// font-weight: lighter;
font-weight: normal;
font-family: sans-serif, "Arial Unicode MS";
font-size: 0.8em;
}
vs
For some reason, there's "Arial Unicode MS" in all CSS styles, but to my knowledge, the font is not widely available (not even on Windows), nor it is free.
"Arial Unicode MS" was added to the CCS styles by me, 2 years ago: #15828
It was necessary to display the missing glyph icons on macOS (#8981).
On Windows, the font was part of the Microsoft Office package and is no longer included since Windows 10
So we should probably look for an alternative.
I see. Then it's likely that I actually used to have the font on my system (an installation going back to 2012 and Windows 7), and I also quite often use DT on a company laptop with MS Office installed, where the font looks "normal".
The original Arial looks great.
I understand the situation with glyphs though.
I've checked the current alternatives, and sadly, the options are fairly limited.
https://en.wikipedia.org/wiki/Noto_fonts
Noto Sans looks okay, I guess. However, proportionally, it's different to Arial (which absolutely excels in not wasting space in GUIs), and its ClearType rendering in GTK on Windows is really nothing to write home about (altough still better than the default DejaVu or what it is).
Is see the unicode code of the warning sign (U+26A0) instead of the warning sign ⚠ Is this issue related to this? Or should i create a separate issue? Running Darktable 5.2.1 on Windows 11
Edit: I fiddled around with the css templates. When I use darktable-elegant-darker.css instead of darktable.css, I see the icons. In the .css there seems to be some sort of font fallback mechanism? I'm a CSS noob, but maybe it helps fixing this issue. In the meantime I'm using darktable-elegant-darker.css.
@ruudsieb Yes, it's related.
This issue has been marked as stale due to inactivity for the last 60 days. It will be automatically closed in 300 days if no update occurs. Please check if the master branch has fixed it and report again or close the issue.