[FreeType] Enable ligatures and kerning in the fast font layout path
https://bugs.webkit.org/show_bug.cgi?id=167557
Summary [FreeType] Enable ligatures and kerning in the fast font layout path
Michael Catanzaro
Reported 2017-01-28 19:41:11 PST
We should enable ligatures and kerning in the fast font layout path, as performed by Apple's ports. Myles has hinted that this might require implementing Font::applyTransforms for FreeType, though I'm not sure what all this entails.
Attachments
Michael Catanzaro
Comment 1 2017-01-28 19:57:54 PST
We should also investigate bug #102603, which I don't understand.
Michael Catanzaro
Comment 2 2017-03-06 13:23:38 PST
*** Bug 149642 has been marked as a duplicate of this bug. ***
Adrian Perez
Comment 3 2018-05-02 17:20:43 PDT
As of r230559 (bug #183285) the GTK port is using always the complex text code path. Note that this is still relevant for other ports using FreeType (e.g. WPE).
Myles C. Maxfield
Comment 4 2021-07-26 22:21:29 PDT
I'm happy to work on this, as a part of https://bugs.webkit.org/show_bug.cgi?id=206208. I will need advice from someone who is more familiar with Harfbuzz, though.
Michael Catanzaro
Comment 5 2021-07-27 05:03:06 PDT
Hi, thanks for the offer to help. The simple text path does not use harfbuzz at all. harfbuzz is only used for the complex text path. (See bug #102603, which may or may not be obsolete, I'm not sure.) The simple text path uses FreeType directly. Well, at least I think so? (In reply to Michael Catanzaro from comment #0) > We should enable ligatures and kerning in the fast font layout path, as > performed by Apple's ports. I don't know enough about FreeType to know whether this is actually possible. It's certainly a lot less important than it used to be since GTK no longer uses simple text at all, except when forced by environment variable, so nobody will ever see it. So this really only matters for WPE. I wonder if it's time for WPE to switch to the complex text path?
Note You need to log in before you can comment on or make changes to this bug.