[OpenJDK 2D-Dev] RFR: 7017058: Malayalam glyph substitution is failing for Malayalam with Windows Kartika font.
Prasanta Sadhukhan
prasanta.sadhukhan at oracle.com
Thu Sep 13 06:13:01 UTC 2018
+1
Regards
Prasanta
On 05-Sep-18 6:10 AM, Philip Race wrote:
> This fixes 3 submitted bugs
> https://bugs.openjdk.java.net/browse/JDK-7017058 : the Malayalam bug above
> And also
> https://bugs.openjdk.java.net/browse/JDK-8191130 :
> Sinhala text rendering problem with C+VIRAMA+ZWJ+RA/YA+V
> and
> https://bugs.openjdk.java.net/browse/JDK-8195836:
> opentype:Bengali: "Khanda Ta" shaping issue with U+09A4 TA, U+09CD
> virama, U+200D ZWJ
>
> Webrev: http://cr.openjdk.java.net/~prr/7017058/
>
> As discussed in the evaluation of 7017058, this is because of some
> code which
> always maps several unicode formatting characters to the invisible
> glyph to
> ensure it is never rendered as a missing glyph box.
> But if the opentype tables in a font have glyph substitution looks ups
> that
> depend on that font's actual mapping of those glyphs then they are broken.
> We have had several reports of this (above) and also complaints this
> breaks
> Emoji family ligature substitution.
>
> The fix changes this to first consult the font to see if it does map
> these codepoints.
> If it does not then we still will map to the empty glyph in which case
> clearly the
> font can't have any lookup that depends on it.
>
> The variable origCharCode is added because several of the methods
> mutate charCode
> and we avoid risk with this approach.
>
> The tab, NL and CR code points are still always mapped to the empty glyph
> since they are never going to be used by layout in this way and some fonts
> map TAB to a space char which is not what we want.
>
> -phil.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/2d-dev/attachments/20180913/d3d5a417/attachment.html>
More information about the 2d-dev
mailing list