I just uploaded a new FreeType vanilla
subversion (no Infinality
, but partially related).
In this I enabled the possiblity to choose between the v35, v38 and v40 TrueType interpreter modes.
Read here if you don't know what that means (v38 is a lite version of Infinality built in the standard library):https://www.freetype.org/freetype2/docs ... nting.html
You can choose also between the legacy CFF engine and the new Adobe CFF engine.
To change those parameters and others not directly listed, look at the new config file /etc/X11/Xsession.d/99freetype
The defaults values are "v40" TT interpreter and "Adobe" CFF engine (upstream defaults also).
You can try the "v38" TT interpreter to get an Infinality-like rendering.
More info on other changeable parameters as soon as I can study them.
You can get the compiled debs and sources of the new FreeType version from here
For a better result I suggest to use also the new HarfBuzz version from here
And if possible, use also the Fontconfig version from here
I compared some v38 screenshots with some v40 ones and I cannot find any difference. There could be something wrong in my deb package or v38 and v40 look essentially the same. I'm investigating.
Setting the old v35 interpreter I can see differences in rendering compared to v40, but only if using "hintfull" (rendering with "hintslight" looks the same).
Comparing the v38 interpreter with the v40 I cannot see any difference, both when using "hintfull" or "hintslight".
v40 is described as a simplified, speedy version of v38. v38 was never used by default in FreeType because of its slowness.
The v38 rendering could be changed by modifying some parameters, like Infinality does. But I don't know if those parameters could be changed via environment variables (like Infinality does) or only by changing the source code and recompiling (I can't find any information about this aspect, I should probably dive into the source code to find an answer).
The v40 interpreter has been simplified by removing the possibility to change the parameters and setting them to default values that should be good for all fonts.
FreeType developers wrote:The existing code base in FreeType (the `Infinality code') was stripped to the bare minimum and all configurability removed in the name of speed and simplicity. The configurability was mainly aimed at legacy fonts like Arial, Times New Roman, or Courier. [Legacy fonts are fonts that modify vertical stems to achieve clean black-and-white bitmaps.] The new mode focuses on applying a minimal set of rules to all fonts indiscriminately so that modern and web fonts render well while legacy fonts render okay.
I will search if it's possible to change v38 rendering parameters and how to do it.