On Fri, 20 Dec 2024 00:17:54 GMT, Daniel Gredler <dgred...@openjdk.org> wrote:
>> Soft hyphens should never render, regardless of the rendering path used >> internally. >> >> This PR does not expand the categorization of "complex" characters in >> `FontUtilities` in order to force the use of `TextLayout` rendering code >> paths (as was discussed in JBS). >> >> Instead, it takes the existing (limited) format-category checks in >> `sun.font.CMap` (a TrueType font helper class), expands it to a more general >> / complete default-ignorable check >> (`FontUtilities.isDefaultIgnorable(int)`), and then moves these checks out >> of `CMap` and up a level into the `CharToGlyphMapper` classes themselves. >> >> The Type1 glyph mapper, the TTF glyph mapper, and the macOS glyph mapper >> have all been updated. > > Daniel Gredler has updated the pull request incrementally with one additional > commit since the last revision: > > Add more info about test fonts and default-ignorable chars src/java.desktop/share/classes/sun/font/FontUtilities.java line 366: > 364: case 0x20: return (charCode >= 0x200B && charCode <= > 0x200F) || > 365: (charCode >= 0x202A && charCode <= > 0x202E) || > 366: (charCode >= 0x2060 && charCode <= > 0x206F); I just noticed this really old open bug https://bugs.openjdk.org/browse/JDK-6562489 : Font-Renderer should ignore invisible characters \u2062 and \u2063 ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/22670#discussion_r1896940049