-
Notifications
You must be signed in to change notification settings - Fork 11
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
somehow the XP and YP are different compared a pre LayoutEngine version of compositor #14
Comments
Any GPOS support beyond single and pair positioning is almost certainly broken. It's weird that the two versions give different results. I don't recall changing anything in the core. Are these from the same binary?
Yeah. This is a feaLib issue. I'm going to open a PR for that when I have a chance. It needs to raise a FeaLibError with a note about the unknown glyph. |
This is not really a feaLib issue as I was just reading binaries files. I fixed it by returning the fallback glyph whenever a glyph is requested that does not exist gr Frederik
|
Got it. I'll fix it. I've found where the value difference is happening. I'm trying to figure out a way to fix it now. (It's a chicken or egg issue.) |
So, here's what is happening on the value difference. Previously, the glyph records resulting from GSUB processing had their advance width set before processing GPOS. See here. This advance width value is used internally to calculate x placement values in some of the GPOS subtable types. For example. The issue that I'm stuck on is that the new LayoutEngine object doesn't know anything about glyphs and so it therefore doesn't have an advance width to preset before processing GPOS. I can modify the LayoutEngine object to have something like a hmtx table. However, I'm not certain that my GPOS code is correct (for subtable types beyond basic pair positioning), so the first thing I want to do is get that working with a high degree of certainty. I'll open a new issue for that and then come back to this. |
the layout engine could call the font object could then add the overwrite gr Frederik
|
All GPOS processing may need the advanced width set for proper calculation in the complex subtable types. So it can't just be in the subclass. |
I was quickly testing a basic mark feature
The current version:
an older version:
this is tested with the current version of FeaturePreview.roboFontExt
The new version also leaves traceback on non existing glyphs.
The text was updated successfully, but these errors were encountered: