-
Notifications
You must be signed in to change notification settings - Fork 608
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[AAT] No kerning for Times.ttc yet #1252
Comments
Definitely kerns for me with master:
|
Works for me on Linux as well.
I'll experiment with --with/--without-coretext and check whether the Mac build has FT. |
On Mac: Built with Coretext, with FreeType
Built with
Built with
which is all a bit odd, since in the initial attempt in Chrome, I did remote the two Where is the kerning data retrieved, where could I set a breakpoint if I debug this within Chromium tomorrow? |
So, that's inconsistent with your hb-view observation with --shaper=ot, no? What's going on? |
You can breakpoint in hb-ot-kern.hh::hb_kern_machine_t::kern(). |
Okay, as discussed, this is as expected, CoreText adjusts the first glyph.
I probably made a mistake on my corp laptop, testing installed, vs. testing newly built versions. $ hb-shape vs $ ./hb-shape. I'll test the San Francisco trak test that we have, as well making a |
The fact that the work here leads to better software quality and stability on Chrome makes me so happy. I wish Firefox also to follow the path also. |
Firefox was the first major adopter of HarfBuzz. Most of the Indic, USE, Myanmar, Khmer, Thai, etc shapers were written with me and @jfkthame sitting next to each other multiple days or weeks a year for the past ten years. I stopped counting a while back, but see: https://www.freedesktop.org/wiki/Software/HarfBuzz/Hackfests/ So, yeah, Firefox has been leading there. ;) |
And morx/kerx was indeed motivated by Chrome's desire to use it instead of hb-coretext. |
It appears that @brawer observes in issue #1255 that |
When bisecting the ~2900 Mac failures when rolling HarfBuzz in Chromium, even at the end of the investigation range of 339036d..fbbd926, at 1622ba5 I do not see the large number of failures yet (only the ~14 failures that have something to do with kerning in the range of db9600b..97e5913) as long as I do not remove compilation of hb-coretext.* - i.e. switch the shaper for Mac. I assume there is not anything in the last two commits from 1622ba5..fbbd926, so I think the difference comes from switch the Mac shaper from CoreText to OT:
Could it be there is an issue with default feature activation? Or is there an issue in the integration? But also, I have some findings from
hb-view
andhb-shape
in HarfBuzz.Testing locally with HarfBuzz at 8f3048a it looks like for
/System/Library/Fonts/Times.ttc
nokern
is activated or computed:So it has
kern
andmorx
.Running
$ hb-view --shapers=coretext /System/Library/Fonts/Times.ttc "Text You" > text_you_coretext.png
results in
Running
hb-view --shapers=ot /System/Library/Fonts/Times.ttc "Text You" > text_you_ot.png
results in
So, kerning is missing when shaping with
ot
. The e and o are not pulled in towards the T and Y respectively.I've experimented with --features=+kern for
ot
, but that did not lead to a change.When I disable
kern
in the CoreText shaper and compare againstot
, I get an identical result.$ hb-shape --shapers=coretext --features=-kern /System/Library/Fonts/Times.ttc "Text You" [T=0+1251|e=1+909|x=2+1024|t=3+569|space=4+512|Y=5+1479|o=6+1024|u=7+1024]
$ hb-shape --shapers=ot --features=-kern /System/Library/Fonts/Times.ttc "Text You" [T=0+1251|e=1+909|x=2+1024|t=3+569|space=4+512|Y=5+1479|o=6+1024|u=7+1024]
The text was updated successfully, but these errors were encountered: