When I select 'Japanese' on fonts.google.com the number of fonts drops from 1901 families down to 50. Selecting 'Hiragana and Katakana' raises the number to 81.
That's still a lot of fonts, but it's not 2000. I guess designing a font for a language with 2100 different characters is probably a hassle.
> I guess designing a font for a language with 2100 different characters is probably a hassle.
The ~2000 is the official count taught in schools, but the actually "commonly" used number in literature is around ~3000. And you actually want more than that, because people's names can use weird kanji which are used nowhere else.
On the other hand, the vast majority of kanji are actually composed of a limited set of "subcharacters". For example, picking a completely random one:
徧 ⿰彳扁
The '徧' is composed of '彳' and '扁' arranged in a horizontal pattern. Unicode even has special characters (⿰,⿱,⿶, etc.) to describe these relationships.
So this actually makes creating a CJK font somewhat easier, because you can do it semi-algorithmically. You don't have to manually draw however many thousand characters there are, but you draw those "subcharacters" and then compose them together.
Has anybody ever actually implemented an algorithmically composed kanji font? Because it seems like a hugely complicated undertaking. There are rules of thumb for how characters are composed, but getting something aesthetically pleasing out of the end result is more an art than a science. Even Korean Hangul, which is way simpler, has all sorts of funky kerning rules.
Fully algorithmically? I have no idea, as I'm not really in the fonts business.
But I'm pretty sure they're not actually redrawing every character from scratch, and are actually reusing the subcomponents (at very least for normal fonts). But how much of that is actually automated - you'd have to ask actual font designers.
Although many kanjis can be algorithmically composed, manual adjustment of each character's shape is still necessary for production-grade fonts. For example, if you closely compare the 彳 radical between 徧, 行, and 桁, you'll notice subtle differences in width, stroke length, angle, and margin.
> For 楷書 type fonts this may be true, but you ought to know there’s more to it, don’t you?
With all due respect, this is the type of comment that really makes online discourse so exhausting.
Yes, I know! Unless you put up two pages of disclaimers and footnotes there's always someone who comes out of the woodwork and "um ackshually"ies you. It was only supposed to be a quick and dirty comment talking about the topic in general, and not an in-depth, ten page treatise on the subject.
If you have something to add to what I wrote, then please do so, but heckling random people who put up their comment up in good faith is not helping anyone.
I suppose you're counting the joyo kanji plus kana alphabets with diacritics. But the actual count of kanji is much higher, even if Japanese uses a relatively small number of characters for day-to-day writing.
Pretty much every native university student I met when I studied there, had passed the Kanji Kentei level 1 test. A certification of proficiency in around 6000 kanji.
> Japanese primary and secondary school students are required to learn 2,136 jōyō kanji as of 2010.[4] The total number of kanji is well over 50,000, though this includes tens of thousands of characters only present in historical writings and never used in modern Japanese.
They might have passed some level of the kanken (kanji kentei) in school but it is unlikely to be level 1. The gap between level 1 and 2 is ridiculous.
A typical font contains around 7,000 characters. In everyday use, you rarely touch all of them—most situations stay comfortably within the realm of jōyō kanji. However, there are many edge cases, especially with personal names, where the required characters fall outside the jōyō set. Fonts must be prepared to handle all of these possibilities, including the less common name kanji.
That's still a lot of fonts, but it's not 2000. I guess designing a font for a language with 2100 different characters is probably a hassle.