[FONT][MOD] [4.4.x/5.x/6.0] Japanese Unicode Fallback/Han Unification Default

Search This thread

epithetic

Senior Member
May 7, 2012
168
151
If you don't know what the title is about this is probably irrelevant to you :p If,on the other hand, you're reading Japanese text on android you will have noticed that characters default to Chinese variants for unified characters with no obvious way to change that (short of changing the system locale). This problem goes way back on android and I know I'm not the only one bothered by this (see this person from 2011). Feel free to read up on why this is happening or see examples here.

This can easily be fixed by installing and inserting the Japanese version of DroidSans in the font fallback order, which I've been doing manually for a while but is a bit of a hassle if you like to flash or update roms as it will involve doing just that every single time. Hence I've made a flashable zip for those who are lazy like me or don't know how to/are reluctant to edit the files themselves.

Update: Font handling and default fonts have slightly changed with Lollipop, so here is a new flashable zip for those versions going forward (NotoSans fallback). What this does is change the fallback order for both fonts.xml and fallback_fonts.xml, as well as while we're at it install a complete version of Google's Japanese NotoSans font (the one in system/fonts by default is missing kana, leading to inconsistent rendering).

Update the 2nd: Updated for Marshmallow, which changed things around again a bit; it offers more default fonts and now includes a more complete version of the Japanese font so replacing the otf is no longer necessary.

tl;dr

Before:

WdJPCst.png

4.4/DroidSans

0p5AU1m.png

6.x/NotoSans

After:

yC0xEuZ.png

4.4/DroidSans

wK46jfs.png

5.x/NotoSans

L4QJyVB.png

6.x/NotoSans

Should work on most devices and stock-like ROMs.

Download & flash DroidSans-fallback for Android 4.4/Kitkat

Download & flash NotoSans-fallback for Android 5.x/Lollipop

Download & flash NotoSans-MM_fallback for Android 6.x/Marshmallow

Make sure to download/flash the correct version as default fonts will be messed up otherwise.



Enjoy!
 

Attachments

  • japanese-DroidSans-fallback-signed.zip
    1.4 MB · Views: 1,630
  • japanese-NotoSans-fallback_signed.zip
    4.5 MB · Views: 5,764
  • japanese-NotoSans-MM_fallback_signed.zip
    283.8 KB · Views: 1,873
Last edited:

muddog

Member
Mar 22, 2011
8
1
Thanks so much for sharing this! I've been doing the same thing since I moved to Android. It's nice to have a simple way of doing this. I was just contemplating moving to Cyanogen nightlies but was hesitating because I'd have to fix the font order every time.

I'm just wondering though, why DroidSans and not the MTLmr3m font that is included with stock?
 
  • Like
Reactions: Upic_id

epithetic

Senior Member
May 7, 2012
168
151
Thanks so much for sharing this! I've been doing the same thing since I moved to Android. It's nice to have a simple way of doing this. I was just contemplating moving to Cyanogen nightlies but was hesitating because I'd have to fix the font order every time.

I'm just wondering though, why DroidSans and not the MTLmr3m font that is included with stock?

Glad this was of use! The problem with niche things like this is always they get buried and are hard to find for the rare person who actually needs them. But I figured I might as well upload it anyway.

DroidSans was the default on Kitkat for Han characters (unless you switched locale) and is clearly intended to be (being a Droid font). I'm not a fan of the rounded Motoya font; it doesn't look very appealing and doesn't mix as well with the design language as the Droid fonts. Personal opinion, of course, but if there's a Japanese DroidSans available I figured why not use that instead? :)

It's pretty much what Google figured with Lollipop (which does come with the Japanese NotoSans, although mystifyingly an abridged set).
 
Last edited:
  • Like
Reactions: teh-maz0r

kaew

Senior Member
May 8, 2011
69
1
Pattaya
Please create the ZIP file (for Lollipop) which can carry out the flash of the 2 following fonts.
I want to use this font very much.
 

Attachments

  • DroidSansJapanese.zip
    5.9 MB · Views: 224
  • DroidSansJapanese-Bold.zip
    6 MB · Views: 134
Last edited:

malifact

Senior Member
Sep 26, 2015
67
9
epithetic thank you for your hard work on this. I recently bought a Note 5 and this fix will be very useful as part of my job involves translation.

Sorry to ask a very basic question, but how does one flash these files? Also, do you have to be rooted for it to work? Thanks.
 

tetsuo55

Senior Member
Aug 20, 2007
588
229
Updated the original post with a new flashable zip for Marshmallow/6.0+ since things got changed around again.
Hi thanks for making this. I had no idea this problem existed!
Can you confirm if this has any effect on the other Han based languages? E.G. traditional chinese rendining japanese versions, the inverse of what is happening now.
 

epithetic

Senior Member
May 7, 2012
168
151
epithetic thank you for your hard work on this. I recently bought a Note 5 and this fix will be very useful as part of my job involves translation.

Sorry to ask a very basic question, but how does one flash these files? Also, do you have to be rooted for it to work? Thanks.

Simply flash from recovery as you would anything else and that should be it.

Hi thanks for making this. I had no idea this problem existed!
Can you confirm if this has any effect on the other Han based languages? E.G. traditional chinese rendining japanese versions, the inverse of what is happening now.

Yes, since it changes the default for cases where no language is explicitly set/apps which don't support language selective rendering. It shouldn't affect traditional Chinese characters for the most part as the default is the simplified set (so if you're seeing traditional Chinese it means either it's not part of the Han unification overlap, or your app/context correctly specifies traditional Chinese as the target language).

In other words, sites or apps that are meant to be rendered with simplified Chinese but don't explicitly call for it may incorrectly default to Japanese versions of the character set after flashing this.
 
  • Like
Reactions: malifact

tetsuo55

Senior Member
Aug 20, 2007
588
229
So if i understand correctly, the behaviour defined by android is to default to chinese when nothing is specified and the other variants have to explicitly call for their own versions.

What your mod does is replace this behaviour with defaulting to japanese when nothing is specified.

Do you know what the official standard behaviour is supposed to be?

I would like to include this into my universal font mod but i cannot do this if it will change the bahaviour too much.
 

epithetic

Senior Member
May 7, 2012
168
151
So if i understand correctly, the behaviour defined by android is to default to chinese when nothing is specified and the other variants have to explicitly call for their own versions.

What your mod does is replace this behaviour with defaulting to japanese when nothing is specified.

Do you know what the official standard behaviour is supposed to be?

I would like to include this into my universal font mod but i cannot do this if it will change the bahaviour too much.

Correct, with the caveat that if you set your system locale to one of the languages calling for a specific set of characters, apps will default to that instead. So if you set your system locale to Japanese, you (probably) don't need this mod for most apps. The problem/frustration this seeks to address is that for all Western/Latin system locales android always defaults to simplified Chinese han characters if nothing else is explicitly called for.

As the first post says, this mod is only useful to people using Japanese text on their system while their system locale is set to another language (e.g. English). As such I would not recommend including it in any universal mod.
 
  • Like
Reactions: tetsuo55

tetsuo55

Senior Member
Aug 20, 2007
588
229
Correct, with the caveat that if you set your system locale to one of the languages calling for a specific set of characters, apps will default to that instead. So if you set your system locale to Japanese, you (probably) don't need this mod for most apps. The problem/frustration this seeks to address is that for all Western/Latin system locales android always defaults to simplified Chinese han characters if nothing else is explicitly called for.

As the first post says, this mod is only useful to people using Japanese text on their system while their system locale is set to another language (e.g. English). As such I would not recommend including it in any universal mod.
Thanks for explaining it all to me :)
 

Ark42

Member
Nov 22, 2013
16
1
Anybody tried this on Nougat yet?

I just tried. Now all my fonts are [X] symbols :(

Any easy fix to get back to at least having Chinese wrong fonts?
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 14
    If you don't know what the title is about this is probably irrelevant to you :p If,on the other hand, you're reading Japanese text on android you will have noticed that characters default to Chinese variants for unified characters with no obvious way to change that (short of changing the system locale). This problem goes way back on android and I know I'm not the only one bothered by this (see this person from 2011). Feel free to read up on why this is happening or see examples here.

    This can easily be fixed by installing and inserting the Japanese version of DroidSans in the font fallback order, which I've been doing manually for a while but is a bit of a hassle if you like to flash or update roms as it will involve doing just that every single time. Hence I've made a flashable zip for those who are lazy like me or don't know how to/are reluctant to edit the files themselves.

    Update: Font handling and default fonts have slightly changed with Lollipop, so here is a new flashable zip for those versions going forward (NotoSans fallback). What this does is change the fallback order for both fonts.xml and fallback_fonts.xml, as well as while we're at it install a complete version of Google's Japanese NotoSans font (the one in system/fonts by default is missing kana, leading to inconsistent rendering).

    Update the 2nd: Updated for Marshmallow, which changed things around again a bit; it offers more default fonts and now includes a more complete version of the Japanese font so replacing the otf is no longer necessary.

    tl;dr

    Before:

    WdJPCst.png

    4.4/DroidSans

    0p5AU1m.png

    6.x/NotoSans

    After:

    yC0xEuZ.png

    4.4/DroidSans

    wK46jfs.png

    5.x/NotoSans

    L4QJyVB.png

    6.x/NotoSans

    Should work on most devices and stock-like ROMs.

    Download & flash DroidSans-fallback for Android 4.4/Kitkat

    Download & flash NotoSans-fallback for Android 5.x/Lollipop

    Download & flash NotoSans-MM_fallback for Android 6.x/Marshmallow

    Make sure to download/flash the correct version as default fonts will be messed up otherwise.



    Enjoy!
    1
    Thanks so much for sharing this! I've been doing the same thing since I moved to Android. It's nice to have a simple way of doing this. I was just contemplating moving to Cyanogen nightlies but was hesitating because I'd have to fix the font order every time.

    I'm just wondering though, why DroidSans and not the MTLmr3m font that is included with stock?
    1
    Thanks so much for sharing this! I've been doing the same thing since I moved to Android. It's nice to have a simple way of doing this. I was just contemplating moving to Cyanogen nightlies but was hesitating because I'd have to fix the font order every time.

    I'm just wondering though, why DroidSans and not the MTLmr3m font that is included with stock?

    Glad this was of use! The problem with niche things like this is always they get buried and are hard to find for the rare person who actually needs them. But I figured I might as well upload it anyway.

    DroidSans was the default on Kitkat for Han characters (unless you switched locale) and is clearly intended to be (being a Droid font). I'm not a fan of the rounded Motoya font; it doesn't look very appealing and doesn't mix as well with the design language as the Droid fonts. Personal opinion, of course, but if there's a Japanese DroidSans available I figured why not use that instead? :)

    It's pretty much what Google figured with Lollipop (which does come with the Japanese NotoSans, although mystifyingly an abridged set).
    1
    Updated the original post with a new flashable zip for Marshmallow/6.0+ since things got changed around again.
    1
    epithetic thank you for your hard work on this. I recently bought a Note 5 and this fix will be very useful as part of my job involves translation.

    Sorry to ask a very basic question, but how does one flash these files? Also, do you have to be rooted for it to work? Thanks.

    Simply flash from recovery as you would anything else and that should be it.

    Hi thanks for making this. I had no idea this problem existed!
    Can you confirm if this has any effect on the other Han based languages? E.G. traditional chinese rendining japanese versions, the inverse of what is happening now.

    Yes, since it changes the default for cases where no language is explicitly set/apps which don't support language selective rendering. It shouldn't affect traditional Chinese characters for the most part as the default is the simplified set (so if you're seeing traditional Chinese it means either it's not part of the Han unification overlap, or your app/context correctly specifies traditional Chinese as the target language).

    In other words, sites or apps that are meant to be rendered with simplified Chinese but don't explicitly call for it may incorrectly default to Japanese versions of the character set after flashing this.