[Development] Font rendering on X11/Wayland: New FreeType API to toggle LCD filters and stem darkening on a per-font basis, would love a review
Allan Sandfeld Jensen
kde at carewolf.com
Sat Nov 19 14:29:54 CET 2016
On Saturday 19 November 2016, Nikolaus Waxweiler wrote:
> >> Correct font rendering with linear alpha blending and gamma correction
> >> can make text look pale like reported in
> >> https://bugreports.qt.io/browse/QTBUG-41590 due to the way the math
> >> behind it works out. Stem darkening compensates for the paleness.
> >
> > Any idea why exactly?
>
> I'm not sure what you're asking. Do you mean why LAB+GC results in
> pale(r) text? The paleness is an expected side-effect of gamma
> correction on low-DPI screens.
>
No I understand the math. I am just curious from a philosophical point of view
how come stem darkening is even needed. Gamma-corrected blending might end up
paler, but it should be a more correct result, so it just odd that it looks
wrong and that a compensation is needed. Somewhere we must have done something
that relied on naive blending. Maybe in the design of the fonts?
Also I notice in your example you also use a too low gamma value. The standard
in screens in between 2.2 and 2.4, and when using that I generally see an
inversion in the contrast balance.
Look at the attached example. Ideally with correct blending text should look
equally "bold" regardless of background and foreground color. It is obvious
white on black with naive blending is too weak, but the color on white text
with GC blending is just as weak, while white on black is now as bold as color
on white used to be. If I used a gamma of 1.6 it would look more balanced, but
my screen has a gamma of either 2.4 or sRGB , so why does using the right
value give the an unbalanced result?
Anyway, on the API front. Forcing to autohinter is probably not acceptable. So
we could enable stem darkening where native available, but then we need to
know if what engine a face is using, or better yet specifically if the engine
used right now on this face did stem darkening.
Best regards
`Allan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screenshot_20161119_142046.png
Type: image/png
Size: 65570 bytes
Desc: not available
URL: <http://lists.qt-project.org/pipermail/development/attachments/20161119/ff517ab9/attachment.png>
More information about the Development
mailing list