I was recently developing an android application where I wanted to display kannada text in the TextView. I went through this link, now the problem is the glyphs(character sequence) are not rendered/interpreted properly.
I also found this discussion pretty usefull .
Now my question is - "Is it possible to integrate a layout/shaping engine (responsible for rendering the text properly) in an application.
Any help in this regard would be helpful.
Thanks !!
Use Bitmap fonts and your own rendering engine till Android supports
What version of Android are you targeting? Pre-2.3 Android has very poor support for any Indian language whatsoever. 2.3 introduced support for Hindi, but Dravidian languages are still missing. Based on this fact is my hunch that Android 2.3 and later probably might render Kannada text better.
Also, emulators have known issues with text rendering in some languages. I suggest testing on a real device.
Related
as the title says , a text from a RTL language like persian or arabic doesnt show well in android
for example the word "سلام" shows as "م ا ل س".
this problem happens even in text inputs (which i thought they were native and native android textboxes support that)
is there a way to fix this?
Lack of Bidirectional and Glyph Shaping support is a known restriction of the FireMonkey platform, on all targets (including Windows and Mac OSX).
We will have to wait for "native controls" for Android as third party components for FireMonkey, as it does exists for iOS - see http://www.tmssoftware.com/site/tmsicl.asp for instance.
I've found this great blog article with source code about Android Native controls for Lazarus/FreePascal which is quite interesting. But this won't work with the "NextGen" Delphi compiler, which is currently going in a diverse direction in respect to FPC (e.g. with the ObjectivePascal mode).
Since it uses native Android controls, it should not suffer from the same restrictions as FireMonkey do.
the best solution is fmxrtl you can find at
http://www.fmxrtl.com/
As per LURD's suggestions.
Download and use D.P.F Delphi Android Native Components and/or D.P.F Delphi iOS Native Components.
That will fix the problem in XE7 and prior.
According to the documentation with the Delphi XE8 beta the problem is fixed there as well.
As a last resort (if you feel up to it), someone has taken the effort to patch the XE5 source code to enable BiDi support. See: https://docs.google.com/file/d/0BwumWe43CaijVDRQZzNQbXNSLWc/edit?usp=sharing
We wanted to develop a web search app for Android 2.2+, and the language we're dealing with is Arabic script (RTL) based. We are using WebView as the rendering view.
So far only devices with Android 4.0+ (and some Sony phones whith 2.3) displayed the text correctly. But Android 2.x devices still consists a large part of our web users, we needed the same Arabic RTL support in Android 4.0 be availabe with our app.
To be clear, the mentioned Arabic support is not only the direction:rtl (which can be achieved with CSS), but more importantly a letter joining problem: most letters automatically change accroting to the previous and next letter when displayed.
On Windows, since 2000 version, there is a system shared library USP10.dll to handle the process. And applications have the file in their folder, would have the same support even on older Windows 98 systems.
Based on my research on the web, on android there are libicuuc.so and framework.jar to do the similar job.
My question is:
Since Android 4.0+ has the ability to hanlde the letter joining, is it possible to package the corresponding library with the apk to support Arabic in WebView?
If so, how (e.g where to put the file, and any code to add to activity)?
Many thanks in advance.
You can't add newer library for old sdk's. Old sdk's depend upon old java libraries.
I m going to work on an text to speech application which will be in both android and iphone. I found very good threads on stackoverflow for TTS libraries in iphone.
My question is : should i need to use same library for both iphone and android ?
If yes are there any same library provider for both iPhone and Android ? I just want to be sure that the both the apps dont behave so different to each other if I am going to use different libaray , thats why I am curious to find a solution
You can go with Flite-TTS-Engine which is available and compatible with both iOS and Android.
You can find Android Flite-TTS-Engine here
You can find iOS Flite-TTS-Engine here
For iOS
Text To Speech(TTS)
https://bitbucket.org/sfoster/iphone-tts/src
https://github.com/todoroo/iPhone-Speech-To-Text
http://docs.phonegap.com/en/2.0.0/guide_plugin-development_index.md.html
https://github.com/phonegap/phonegap-plugins
https://github.com/phonegap/phonegap-plugins/tree/master/Android/TTS
https://github.com/macdonst/TTS
http://www.raymondcamden.com/index.cfm/2011/10/12/First-test-of-PhoneGap-Plugins
http://en.usenet.digipedia.org/thread/12992/27474/
https://groups.google.com/forum/?fromgroups=#!msg/phonegap/JSBV8zfbXZ0/JqiLM5HdTF4J
http://phonegap.com/blog/2012/09/
This linke may be helpful for you :)
I am writing an application in android to convert english to braille. But, I don't know how to support android font. Where to find braille font and how will I embed it into my application?
Any help provided will indeed be appreciated!
I am currently developing an app which I want to support both danish and english. I know how things works with resource etc.
My app is currently running Android 2.1 (since most people in Denmark use this), but as far as I know Locale for Denmark is first avaiable in Android 2.3 (documentaion).
What wonders me, is that i got a couple of apps, which support danish language and runs on my phone (2.2). How is that possible?
Do they trick the system in some way, or do they just develop their application in Android 2.3 and make it runnable in lower version devices? Or is it possible to manipulate the native language with another app to make it "default".
I've searched around everywhere, but the danish Android community is very little.
It is actually possible to make a values-da with danish language even though it's not supported in Android 2.2 according to the documentation and it's working fine.
Don't know why it did not work earlier today.
ADB will compile your resources into apk no matter what suffix the folder values has (tested on values-qq). So I assume you can just add the proper suffix for your language, and these resources will be just ignored on pre-Android-2.3.