I am trying to get the kannada font support for Android ICS. I rooted my Xperia Neo L phone which is running Android ICS 4.0.4 and installed Kannada font (Lohit-Kannada.ttf). I have also included the Lohit-Kannada font as family-set in fallback_fonts.xml in the framework. After that, I am able to see the kannada fonts render in browser but the complex script is not supported. Glyphs are not rendered in proper way, though it is just readable. Other indic languages like Tamil, Hindi, Bengali etc renders perfectly but my language is not rendering properly. Someone suggested me to go thru this blog. http://androidandsandu.blogspot.in/2011/12/how-to-add-indian-languages-to-android.html
But i'm not able to find out where to make those file changes. I mean where is that lohit-fonts directory, where is the android.mk file? I'm not able to find those folders or those files in my phone. Any help please?
The link you provided explains how to change the source code of a custom Android image to do what you want:
Prerequisites :
ICS (4.0.3) AOSP source code
...
so I guess it is not possible without building your own custom ROM.
Related
I'm trying to show Khmer language in Android. In Android version 4.1.2 and 4.4+, the Khmer language is working fine. But in Android version 4.2.2 any Khmer language is not displayed even a character. I got a blank space text.
This is the example of Khmer language that's using Google web fonts : http://www.google.com/fonts/specimen/Battambang#charset
. You can open it any browser that support #font-face it will display the Khmer text except Android 4.2.2.
Every Khmer websites I opened it with Android 4.2.2, I see only a blank space too like http://news.sabay.com.kh, http://kohsantepheapdaily.com.kh, ...
Please somebody know how to solve this problem. I tested with emulator and real device like Sony and Samsung that's using Android 4.2.2.
Update: in google web fonts, the problem is only Khmer language is not displaying. the other fonts are working. try here : https://www.google.com/fonts in Android 4.2.2
On our custom font we have text-rendering: optimizeLegibility enabled. It was causing the font to not display in android 4.2.2. We use the font for custom symbols.
I have been debugging this sort of problem for the past week. I do not know if this will solve your issue, but it seems to be the same problem.
I have developed an app which runs well on samsung tab, but the google translated kannada words are not rendered on micromax phone. What to do? Can't I embed the font itself in the app using typeface? Or should I root the device and install the system fonts explicitly?
Edit 1: Could anyone suggest a good kannada font that has been good?
If your app require special fonts, then embed it in your add and set later on using setTypeface().
I created an android phonegap application which displays information in multiple languages like Hindi, Fijian, etc. Hindi language content displays properly in properly in emulator but it is not working on actual android device. It displays a small square box.
I'll explain the steps:
I used web font converter and converted de.ttf, it generated 3 files.
I copied all theses files to folder named "font" in my project directory.
I added font-face in css.
I called the font-face in a div and added Hindi text.
Thanks in advance.
I am guessing Android emulator does not display Hindi font answer shows the issue.
Problem with Hindi keyboard on Android 2.3 emulator is another duplicate.
From what I understand the Hindi is not implemented fully in older phones. It likely works in your emulator due to your emulator's operating system version being higher than the phone. I suggest you change create a new emulator image with the same version as phone and test it. If it does not work on emulator then bump the OS version up until it does. This will have to be your apps minimum OS version.
If for some reason at the same version the text does display correctly, then something else is going on.
I am trying to test an app that contains Hebrew text. However, I cannot change the android OS to display the UI in hebrew. I don't see Hebrew as one of the language choices in the Language and Input settings.
I tried using persist.sys.language=iw and persist.sys.country=IL, which shows me Hebrew (Israel) in Hebrew text in the Language setting. But, the rest of the UI is in English and my app is in English as well.
I know that Hebrew shows up as a language choice in my friend's Samsung Android phone.
I am using 4.0 with API level 14 for the emulator.
Any help would be appreciated.
Marcelo
As far as I understand, support for various locales is dependent on the vendor.
Vendors could choose to remove certain locales for whatever reason. Did your friend get the phone from the same vendor/carrier as you did.
If all else fails, there are instructions for rooted phones here and apps on the Android Market that might help.
Android support huge variety of locales but it never means that you'll find all language support in all the devices.
In case you want any specific language support in your application you have to package the appropriate fonts for the same in your application.
Remember Android supports Open Type Fonts only.
In case you need to install specific font in your phone/ emulator then you need to either buy a device with that font support / root the device or build your own emulator with your specified fonts.
According to this Azerbaijani language is not supported by Android 2.2 - however they claim "Note: Android supports more locales than are listed above.".
So how it is actually ? Is there support for Azerbaijani language? Are there issues writing applicaiton which have to display text in Azerbaijani?
Try just writing a test application that just displays some Azerbaijani text in Unicode. If it looks right, then your Android device has a Unicode font that includes the characters used in Azerbaijani.
If the text is not rendered correctly, then your problem will be adding the right font. On Mac OS X you would just drag-and-drop a font file into the right folder, but on Android you will need it installed in the operating system's display server. That might not be possible if you want to run on handsets that are locked down by their manufacturer.
If the font isn't there, maybe you can find a good Open Source Unicode font for Azerbaijani. File a feature request with the Android developers to get the font into the next release of Android. Unfortunately you'll have to wait a long time and will only work with recent releases.
If you're really desperate and you're willing to go to a lot of effort, you could build a font rendering engine into your application. I don't think that has to be as hard as it sounds. Then you will be able to run on any Android release and you won't have to wait around for the handset manufacturers to pick up the response to your feature request.
Locale.getAvailableLocales()
That method returns an array of all supported locales.