RFR: 8190907: Windows 10 default Korean Font Malgun Gothic available not used by GUI elements even though available without Korean Language Pack [v3]

Phil Race prr at openjdk.java.net
Mon Mar 14 18:22:47 UTC 2022


On Mon, 14 Mar 2022 04:22:59 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:

> It's a bit hard to talk about 'fallback' fonts here without confusion, as this word might mean at least two things - we have Korean fallback fonts, in a sense that `sequence.fallback` contains `korean` entry, so all logical fonts are supposed to support Korean. And we also want e.g. Batang font to 'fallback' to Malgun Gothic, if Batang font is not installed.

I don't see why it is hard. In fact there's actually only one thing.
The fallback sequence is appended to all logical fonts of all styles.
It means that if a font that is specified in a particular logical font isn't present, something from this sequence will provide the fallback.
There's no font or script specific fallback logic along the lines of if (!batang) then insert malgun in its same place.
It is really code point fallback : if asked for codepoint \u1101, then search the component fonts in order until you find it or run out of fonts. 

There's some unintended behaviour (bug) that "foo" in the logical fonts is hiding "foo" in the fallback sequence but that doesn't change the above logic.

> It seems then if we have
allfonts.korean-fallback=Malgun Gothic
and add this korean-fallback to sequence.fallback instead of korean then I guess we can have fix for both.
Will this be accepted change?

It is fine by me. I just want to be hear that you have tested all the scenarios and it works as we want it to.

-------------

PR: https://git.openjdk.java.net/jdk/pull/7643



More information about the client-libs-dev mailing list