Few days back, I had rooted my Nexus One using the article I had posted about rooting the Nexus One. One of the main reasons behind that move was the inability of Android to render the text in my mother tongue (Tamil). The plain vanilla Android 2.2 does support only a limited set of fonts and it has no support for Unicode yet. DroidSans is the default font used on Android devices. Fonts are placed inside /system/fonts folder of the Android system. After rooting my device, I tried installing few fonts which support Unicode char-set and my Nexus One is able to render Tamil characters now. However, some special glyphs of the Tamil language are not getting rendered properly. This is something to do with the position of the characters. Anyways, now I can read my favorite Tamil blogs on my dearest Nexus One.
Nexus One displaying Tamil characters!!
Here are the steps to be followed to change fonts:
- First requirement here is that your device must be rooted.
- Find out the font which supports Unicode char set. I have used “Arial Unicode MS” for rendering the Tamil characters.
- Download and install the latest Android SDK from here. This comes up with all the tools needed for development and testing of your application. Make sure the driver ‘ADB interface’ is installed on your machine. In most of the cases, the driver will be installed directly once you plug-in the device.
- Connect your Android device to your PC on debug mode. Enable USB debugging on your phone. Settings > Applications > Development > USB debugging.
- On your laptop, open a command prompt and enter “adb shell”.
- By default, /system partition is mounted as read-only. Need to re-mount the same in read-write mode. Follow the instructions here to do this.
- Take a backup of the DroidSans font in super user mode. “adb shell” > su > mv /system/fonts/DroidSans.ttf /system/fonts/DroidSansOriginal.ttf
- After that, you have to push the Unicode font you have selected by executing the command “adb push <path to your font file> /system/fonts/DroidSans.ttf” So, we are just replacing the DroidSans font with the new one. The font you are choosing should support the characters originally supported by DroidSans. Otherwise, this is what will happen.
-- Varun
No comments:
Post a Comment