darktable icon indicating copy to clipboard operation
darktable copied to clipboard

Something has happened to DT's font rendering

Open jsmucr opened this issue 4 months ago • 15 comments

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: Image Some labels are barely legible: Image And some fonts are a bit 90's: Image

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

  1. Run Daktable
  2. 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

jsmucr avatar Aug 25 '25 15:08 jsmucr

So 5.2.0 didn't exhibit the problem?

wpferguson avatar Aug 25 '25 15:08 wpferguson

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.

jsmucr avatar Aug 25 '25 18:08 jsmucr

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.

jsmucr avatar Aug 25 '25 19:08 jsmucr

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: Image

Ubuntu: Image

The Linux version doesn't appear to use subpixel smoothing.

jsmucr avatar Aug 25 '25 20:08 jsmucr

In windows, are using using a nativesl screen resolution? What about scaling?

gi-man avatar Aug 25 '25 21:08 gi-man

@gi-man Yes, no changes.

jsmucr avatar Aug 26 '25 11:08 jsmucr

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.

Image

The Windows 11 version looks better IMO.

jsmucr avatar Aug 26 '25 11:08 jsmucr

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;
}
Image

vs

Image

jsmucr avatar Sep 03 '25 16:09 jsmucr

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.

jsmucr avatar Sep 05 '25 16:09 jsmucr

"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.

zisoft avatar Sep 05 '25 17:09 zisoft

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.

Image

I understand the situation with glyphs though.

jsmucr avatar Sep 05 '25 18:09 jsmucr

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).

jsmucr avatar Sep 08 '25 15:09 jsmucr

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

Image

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 avatar Oct 06 '25 10:10 ruudsieb

@ruudsieb Yes, it's related.

jsmucr avatar Oct 06 '25 12:10 jsmucr

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.

github-actions[bot] avatar Dec 06 '25 00:12 github-actions[bot]