-
Notifications
You must be signed in to change notification settings - Fork 21
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
[MATH] The algorithm for applying MathKernInfo is incorrect #1147
Comments
Is any progress being made on this issue? |
Could you perhaps draft some wording that accurately reflects what the MS math handler and XeTex are doing, which seems to me correct? I suspect one reason there has not been any movement on this issue is that there might not be anyone at Microsoft actively engaged in math layout work at the moment. Murray Sargent has retired, and the various people who worked on aspects of math layout back when it was first introduced and we made Cambria Math are all now dispersed on other projects. |
@tiroj Would it be appropriate/beneficial to file a bug report to the Word or MS Office developers, as those are the places where active development is taking place? MS Office teams would probably have the people who work on the math engine implementation, no? |
I am corresponding with @davidmjones who implemented OT math layout in XeTeX, and he reminded me of email exchanges with Murray Sargent and @SergeyMalkin about this topic back in 2020. Sergey was able to confirm at that time that what XeTeX is doing is correct, so having the spec reflect this would be great. |
I think changing "minimum" to "maximum" is all that's needed. When both kerns are negative, the maximum is the same as the kern with the minimum absolute value, which is presumably where the confusion arose. |
The spec has the following text:
Since kerning is usually negative, following the letter of the spec will result in the greater amount of kerning being applied e.g. if -100 and -200 are calculated, the applied kerning would be -200. However, Word actually takes the least amount kerning, so -100 is what get applied. This makes sense since applying the greater kerning can result in parts of the glyphs clashing.
I know at least 2 implementations that are following the letter of the spec (and another one that have since been fixed to do the opposite of what the spec is saying), which results in occasional glyph clashes and overall in MathKerning being applied differently across implementations.
I think the spec should be clarified here to use more precise wording.
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.
The text was updated successfully, but these errors were encountered: