Hacker News new | ask | show | jobs
by thaumasiotes 195 days ago
> I understand that Unicode denotes single characters for both Chinese and Japanese (and Korean outside of Hangul?) even though there are differences between how nations write these 'single' characters, so the result is a Unicode font will look like a Chinese font, or a Japanese font, but not both.

This is "Han Unification", a terrible idea from early in the development of Unicode. The idea was so bad that the affected glyphs are now also given always-Chinese and always-Japanese Unicode points, making it possible to, for example, compare a Chinese character to a Japanese character in the same document.

But the fix exists. You can specify that you have no idea what you're trying to write by coding it as U+76F4 (直). Or you can specify a Chinese character by coding U+FAA8 (直). Or you can specify a Japanese one by coding U+2F940 (直). There isn't actually a reason you'd want U+76F4 - it's just a dead, useless unicode point - but we can observe here that my default font doesn't include a glyph for either U+FAA8 or U+2F940 even though U+FAA8 is by definition identical to U+76FA (since this is a Chinese font).

1 comments

>There isn't actually a reason you'd want U+76F4

The fact that it was the only one that properly rendered for me is an actual reason.

And just think, that will be true about half the time!

You don't want U+76F4, you want buggy Asian fonts to be fixed.

(On second thought... did it render correctly for you? Did you check?)

Every single time I reload the page the other characters are a broken rectangle, so experimentally it's 100% of the time I'll need that character. What I want is to not see a broken rectangle. One can't say that U+76F4 is useless when it clearly is serving a use for my computer.
OP means it's the only one that renders at all. It could be wrong but the other two are just missing-glyph boxes which are definitely wrong. Those code points appear unusable as a practical matter.
On default modern Android I get the same: Only U+76F4 renders, not the other two.