Edge dropout control glitching
Migrated from: [SAVANNAH-58951]
- reported:
This is another scenario where FreeType fails to apply the correct TrueType rendering rule.
TrueType rule for vertical dropout control is to render the dropouts from top to bottom. This can be verified by using the Microsoft renderer. Why this matters in rendering is because when dropout control already affected an edge, dropout control an edge a pixel lower will not be activated. FreeType fails this TrueType rule as evidenced by a test of grid of dropout control boxes.
Test string:
!"#
In this font, where the higher edges coexist with lower edges in dropout control issue is demonstrated is in the size 16ppem. In this case FreeType does not properly layout the dropout controls.
It is also shown that in some sizes such as 11ppem, the rendering actually depends on the point order. This dependence arises naturally from TrueType rendering implementation. It is shown that FreeType does not have this dependence whatsoever, while TD renderer 2.0 does have a dependence but not quite implemented properly.