Android Kanji Fix

I’ve written a small app for Android 4.1+ to fix the Japanese/Chinese glyph issue. I use Wanikani Notifier quite a bit on Android, so seeing the occasional Chinese glyph difference is annoying. Since I often change ROMs during development, I wanted an automated way to fix this. I plan on releasing this to the Google Play store once I’m confident it works for most people.

This requires root, use at your own risk. This manually swaps the order of the Chinese and Japanese glyph fonts, and can optionally install the IPAGothic font as the default Japanese font on the system. Some people prefer this crisper glyphs.

Available on the Play Store: https://play.google.com/store/apps/details?id=com.ascendtv.kanjifix



All the source code is on Github: https://github.com/ascendedguard/android-kanji-fix/
Released using MIT License (meaning you can do whatever you want with the code/app).

Download the APK on Github: https://github.com/ascendedguard/android-kanji-fix/releases/
Or from the Play Store: https://play.google.com/store/apps/details?id=com.ascendtv.kanjifix

Let me know on here if you have any issues/comments! I’ll be checking this thread often. Also, I hope Wanikani doesn’t mind me borrowing their 八.

Disregard my post, didn’t read carefully

I’ve tested this on 3 different devices and 3 different ROMs (Paranoid Android, AOSP Nightly and Stock) and all 3 worked good. I plan on adding a way to Revert for people who don’t have a backup of their original font file. I’m pretty confident it’s working good, so I’ll likely just stick it on the play store soon.

As an aside, the Japanese font android uses is much more “stylized”, with rounded corners instead of flat edges. The screenshot kind of shows that as well, but it’s probably good practice for what you’ll see in different Japanese fonts.

Would you consider adding support for different fonts? As you mentioned before, Android’s Japanese font is really rounded (and frankly reminds me of comic sans) and I’ve found this will often screw with my recognition of some kanji. The IPAP font family, however, is a really nice Japanese font family that’s licensed under the Open Source Initiative (OSI) and is free to use. To incorporate this in your app, all you would need to do is rename IPAP Gothic to DroidSansjapanese.

I’ll definitely consider adding support for this soon. I was originally looking at doing this, but was having trouble figuring out if I could distribute the fonts, but it looks like I can thanks to the OSI.

Thank you for sharing this! I’ve linked this thread from my post.  Regarding the font distribution issue, I’d suggest giving the possibility to download it, rather than embedding it into the app. This way you won’t incur into any licensing issues, and the user will be able choose his/her favourite font. 
BTW this is something that I’d like to implement too, I wonder if there’s any simple way to share the file and avoid having it to download it twice.

I’ve posted a second beta release:
https://github.com/ascendedguard/android-kanji-fix/releases/tag/v1.0-beta2

Changes:

  • Added ability to install IPAGothic font. Select “Install Alternative Font” from menu. (Revert first if needed)
  • Can now revert in all cases.
  • Added an example Kanji to the text.
  • Much better memory usage.
I NEED YOUR HELP: I could use a few samples of example Kanji that are different between Chinese/Japanese that would be good examples to show and check your current font against.

Ascend said...I NEED YOUR HELP: I could use a few samples of example Kanji that are different between Chinese/Japanese that would be good examples to show and check your current font against.
/t/Ankidroid-users-beware/3305/1

Eight:

Top of second stroke.

Cure (直) and all its derivatives (needs the 十 component, 県 is unaffected):
直 置 殖 値 植
Length of vertical strokes in eye, lack of touching L, vertical component of L itself.

Thread (糸) as a left hand radical (but neither thread itself nor used as a lower radical):
約 組 繕 縦 統 絵 紳 給 終 編 絞 縛 結 純 紹 紛 絹 線 綿 細 総 納 緒 維 練 繰 継 絡 級 緑 締 織 紀 縮 紅 経 緩 紙 絶 縁 縄 素 績 続
Subsitution of 小 for something resembling the bottom water radical (as in 魚).

Knife blade (刃) and its direct derivative (but not 丸):
刃 忍
Short diagonal stroke is misplaced, does not intersect. I seem to recall it being mentioned to me that there is a subtle difference in this character between all Unihan variants (something like five including the more minor variations). Its a fantastic example character.

Bone (骨) and its direct derivative:
骨 滑
Interior box is in a different corner.

Right hand of boat:
船 沿
Upper element of right hand (sorta-phonetic) radical changes from 八 to the table radical (as in the bottom of 冗).

Command (令) and its derivatives (but not 命):
令 鈴 冷 齢 領
Where to begin? The bottom half looks completely different, resembling マ, or maybe 今 with a spare stroke. Oh, and the second stroke is changed from a horizontal to a short diagonal drop.

That’s all I can think of for now. I mean, just nab the seven on the left of the lists above and you’ve plenty enough to fill a screencap gallery.





直 is the worst. And 骨.

A comparison of the three fonts (Higher Quality):



This version fixes the IPAGothic font not installing correctly, and adds the additional Kanji shown above (Snave’s suggestion).

Download from Github: https://github.com/ascendedguard/android-kanji-fix/releases/tag/v1.0rc1

Works well on galaxy 3 mini, thx!

Ascend said... A comparison of the three fonts (Higher Quality):



This version fixes the IPAGothic font not installing correctly, and adds the additional Kanji shown above (Snave’s suggestion).

Download from Github: https://github.com/ascendedguard/android-kanji-fix/releases/tag/v1.0rc1

 How I’d love that IPAGothic font to run on my phone! Any chances I’ll be able to use this with my unrooted phone at some point?

jakobd said...
Ascend said... A comparison of the three fonts (Higher Quality):



This version fixes the IPAGothic font not installing correctly, and adds the additional Kanji shown above (Snave’s suggestion).

Download from Github: https://github.com/ascendedguard/android-kanji-fix/releases/tag/v1.0rc1

 How I’d love that IPAGothic font to run on my phone! Any chances I’ll be able to use this with my unrooted phone at some point?

Doubtful. More likely would be an app for Wanikani that forces the IPAGothic font to be used instead of using system fonts. You can’t install new system fonts or change fallback priority without root or packing it in a custom ROM.

Ascend said...
[...]
Doubtful. More likely would be an app for Wanikani that forces the IPAGothic font to be used instead of using system fonts. You can't install new system fonts or change fallback priority without root or packing it in a custom ROM.
 Mh, ok. Well, I'll save some money for an iPhone, they have good-looking fonts at least :D

Just an FYI, I released the app on the Google Play Store:
https://play.google.com/store/apps/details?id=com.ascendtv.kanjifix

I’ve used it several times myself, and haven’t heard any complaints yet, so I assume it’s all good!

Great app but I don’t really like the fonts. Any chance you could implement the ones that WK uses or Meiryo maybe?

Any chance of making this compatible with other android versions (in my case, 4.0.4)?

ruipgpinheiro said... Any chance of making this compatible with other android versions (in my case, 4.0.4)?
 It's possible, it would just have to be different logic since the fonts changed in 4.1. I may take a look at it through an emulator since I don't have any devices older than 4.3.

It would be great if you had the time, doing it manually every time is a pain, an automatic way would be much better :slight_smile:

Thanks for the app anyways, very useful for 4.1+.