[Ankidroid] Android support for Unicode characters / fonts

3,030 views
Skip to first unread message

Roger Keays

unread,
May 11, 2010, 6:06:05 AM5/11/10
to AnkiDroid
Hi All,

Before I go and buy a new phone, just thought I'd check to see how
many people have problems with fonts using AnkiDroid. Does Android
support the full unicode character set? Specifically I need to be able
to enter IPA, Thai, Japanese, Korean and Hebrew characters.

Also, would a phone with 128MB RAM be sufficient?

Thanks,

Roger

--
You received this message because you are subscribed to the Google Groups "AnkiDroid" group.
To post to this group, send an email to anki-a...@googlegroups.com.
To unsubscribe from this group, send email to anki-android...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/anki-android?hl=en-GB.

Damien Elmes

unread,
May 11, 2010, 6:08:56 AM5/11/10
to anki-a...@googlegroups.com
It doesn't support Persian, so Hebrew may be out too.

Dr. Curt 'Mex' Nicol D.D. Ph.D.

unread,
May 11, 2010, 6:21:55 AM5/11/10
to anki-a...@googlegroups.com
On 11 May 2010 11:06, Roger Keays <ro...@ilikespam.com> wrote:

Hi

> Before I go and buy a new phone, just thought I'd check to see how
> many people have problems with fonts using AnkiDroid. Does Android
> support the full unicode character set? Specifically I need to be able
> to enter IPA, Thai, Japanese, Korean and Hebrew characters.

Japanese and Korean are fine, Hebrew doesn't appear to work (along
with Thai) but this should be fixed in the next Fro-yo release with
any luck. You may/should be able to use an alternative font with the
missing characters, but I've not had time to play about with doing
this.

> Also, would a phone with 128MB RAM be sufficient?

I don't see any problem with that, and even if there is just root the
phone and run app2sd (although that should be built in with fro-yo
too)

~Mex

Damien Elmes

unread,
May 11, 2010, 6:25:11 AM5/11/10
to anki-a...@googlegroups.com
>> Also, would a phone with 128MB RAM be sufficient?
>
> I don't see any problem with that, and even if there is just root the
> phone and run app2sd (although that should be built in with fro-yo
> too)

Unless Android uses the word in a different manner to computers, RAM
is where apps store working information while they're running. Adding
an sdcard won't help there.

But to answer the original question, currently apps are limited to a
16mb heap to ensure they run on the lowest common denominator. This is
a big headache for app developers, but ensures the apps will run even
on hardware with 64mb of ram.

Dr. Curt 'Mex' Nicol D.D. Ph.D.

unread,
May 11, 2010, 6:29:33 AM5/11/10
to anki-a...@googlegroups.com
Hi

>>> Also, would a phone with 128MB RAM be sufficient?
>>
>> I don't see any problem with that, and even if there is just root the
>> phone and run app2sd (although that should be built in with fro-yo
>> too)
>
> Unless Android uses the word in a different manner to computers, RAM
> is where apps store working information while they're running. Adding
> an sdcard won't help there.

Yes, but a lot of that space is wasted on installed apps, shifting
them to the SD wont add memory it will free up what you have.

~Mex

Damien Elmes

unread,
May 11, 2010, 6:31:06 AM5/11/10
to anki-a...@googlegroups.com
An Android device has two internal memories - a fast access memory
that is reset on boot where applications store their working state,
and a slower access memory akin to an sdcard. You are confusing the
latter with the former.

Edu Zamora

unread,
May 11, 2010, 6:40:53 AM5/11/10
to anki-a...@googlegroups.com
It is funny, I just started yesterday to investigate how all this works on Android.

By default, Android does not support the full Unicode character set and the part of it that it supports depends on the specific device and on where this device is distributed (so, in fact, of the carrier).

It is possible to install new system font files on Android that have the missing characters that you want, but that requires rooting the device and using the terminal. If you are comfortable doing that, I think the most tricky part is finding the proper fonts. Maybe we could do a repository with the needed fonts for every wanted language (Ancient Greek, Thai, Hebrew, Arabic, IPA...)

So, I managed to get Thai characters correctly displayed as you can see in the attached pictures. I'll try to update the wiki and the FAQ explaining how to do it as soon I have some time (hopefully today or tomorrow).


> Also, would a phone with 128MB RAM be sufficient?

Sure. AnkiDroid does not even arrive to the 16MB quota, so it will work. It is clear but, that it will work faster on faster devices but it should be enough.

Cheers!
thai characters.png
thai characters correct.png

Damien Elmes

unread,
May 11, 2010, 6:42:56 AM5/11/10
to anki-a...@googlegroups.com
From what I've read Edu, Thai works but more complex RTL languages
like Persian are not currently supported. Even if the fonts are added,
the characters are not joined together.

Dr. Curt 'Mex' Nicol D.D. Ph.D.

unread,
May 11, 2010, 7:01:16 AM5/11/10
to anki-a...@googlegroups.com
Hi

> An Android device has two internal memories - a fast access memory
> that is reset on boot where applications store their working state,
> and a slower access memory akin to an sdcard. You are confusing the
> latter with the former.

I've not installed app2sd here, I was just going on what I'd read
about it. But either way the OP should have plenty space for AnkiDroid
as asked in the first post LOL

Edu Zamora

unread,
May 11, 2010, 7:37:03 AM5/11/10
to anki-a...@googlegroups.com
Damien, I also managed to get Persian and Ancient Greek working ^^ (the one I think it is going to be more difficult are IPA characters)

Don't worry people, I will document all the process as clearly I can as soon I can steal some time from other issues.

Cheers!

PS: The "before" picture for Persian is not here... because I forgot to take it before installing the proper fonts :P
greek polytonics incorrect characters.png
greek polytonic correct characters.png
persian correct characters.png

Damien Elmes

unread,
May 11, 2010, 7:44:27 AM5/11/10
to anki-a...@googlegroups.com
I can't read those languages - can a native confirm they are correctly
presented?

Roger Keays

unread,
May 12, 2010, 12:30:02 AM5/12/10
to AnkiDroid
Thanks for all the useful feedback.

IPA is pretty important for me. Please let me know if you get it
working :)


On May 11, 6:37 pm, Edu Zamora <edu.z...@gmail.com> wrote:
> Damien, I also managed to get Persian and Ancient Greek working ^^ (the one
> I think it is going to be more difficult are IPA characters)
>
> Don't worry people, I will document all the process as clearly I can as soon
> I can steal some time from other issues.
>
> Cheers!
>
> PS: The "before" picture for Persian is not here... because I forgot to take
> it before installing the proper fonts :P
>
> On Tue, May 11, 2010 at 1:01 PM, Dr. Curt 'Mex' Nicol D.D. Ph.D. <
>
>
>
> mex5...@gmail.com> wrote:
> > Hi
>
> > > An Android device has two internal memories - a fast access memory
> > > that is reset on boot where applications store their working state,
> > > and a slower access memory akin to an sdcard. You are confusing the
> > > latter with the former.
>
> > I've not installed app2sd here, I was just going on what I'd read
> > about it. But either way the OP should have plenty space for AnkiDroid
> > as asked in the first post LOL
>
> > ~Mex
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "AnkiDroid" group.
> > To post to this group, send an email to anki-a...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > anki-android...@googlegroups.com<anki-android%2Bunsu...@googlegroups.com>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/anki-android?hl=en-GB.
>
> --
> You received this message because you are subscribed to the Google Groups "AnkiDroid" group.
> To post to this group, send an email to anki-a...@googlegroups.com.
> To unsubscribe from this group, send email to anki-android...@googlegroups.com.
> For more options, visit this group athttp://groups.google.com/group/anki-android?hl=en-GB.
>
>  greek polytonics incorrect characters.png
> 31KViewDownload
>
>  greek polytonic correct characters.png
> 38KViewDownload
>
>  persian correct characters.png
> 28KViewDownload

Edu Zamora

unread,
May 14, 2010, 12:24:37 PM5/14/10
to AnkiDroid
Good news :D

I have just updated the wiki and the AnkiDroid FAQ explaining how to
add support for different languages on Android.
http://ichi2.net/anki/wiki/AnkiDroid#Adding_support_for_special_characters_on_Android
http://ichi2.net/anki/wiki/AnkiDroidFAQ#Displaying_special_characters_from_other_languages

Moreover, I annotated a list of languages that could benefit form this
process and linked some of them with the fonts used for it. If
somebody wants some other language edit the wiki and add it to the
list (in alphabetical order) and if somebody has the fonts needed for
one language that still has no fonts linked, I would greatly
appreciate if you could send them to me.

(Quite ironic, the only one I was interested in, IPA, is the one I
could not get working ^^U)

If somebody tries it and have some problem with the process just tell
me and we'll see what we could do.

Good luck!

Edu Zamora
> For more options, visit this group athttp://groups.google.com/group/anki-android?hl=en-GB.

Bombolino

unread,
Jun 2, 2010, 7:35:59 AM6/2/10
to AnkiDroid
Before buying an Android phone, I'd like to ask anyone if they've had
success with Amharic or Ge'ez character display. From the last post,
it sounds like I should be able to import the font I need to display,
but still wanted to ask if anyone has done this for Amharic in
particular.

Thanks!

Edu Zamora

unread,
Jun 3, 2010, 3:27:45 AM6/3/10
to AnkiDroid
Hi Jordan!

Could you send me a piece of text of both Amharic or Ge'ez, with the
characters you would like to display? In that way, I could test if
they are displayed correctly with the fonts I have already
installed... and if that's not the case, we should look for a font
with support for them. If you know about some font that supports
Amharic or Ge'ez let me know too.

Thanks!

iniju

unread,
Jun 10, 2010, 12:06:18 PM6/10/10
to AnkiDroid
I can confirm that Ancient Greek is shown correctly and also looks
very beautiful :)
Sorry for the late reply.

Edu Zamora

unread,
Jun 11, 2010, 3:14:55 AM6/11/10
to anki-a...@googlegroups.com
I'm glad to know that it worked for you and you can enjoy now the Ancient Greek characters, iniju! :D

Did you have any problem with the process explained on the wiki? Any step that could be explained in a better way? Is there something missing?

Thank you for your feedback! And don't worry about being late... better late than never ;D

Roger Keays

unread,
Jul 11, 2010, 8:06:49 AM7/11/10
to AnkiDroid
Just for the record, I bought a Samsung Galaxy in Bangkok and it came
with Thai, Japanese, Chinese, Korean, Cyrillic, and partial IPA
support. I was pretty surprised. The only font I'm missing is Hebrew,
but for the moment it isn't worth rooting my phone for that. For the
missing IPA characters I use X-Sampa.

On Jun 11, 4:14 pm, Edu Zamora <edu.z...@gmail.com> wrote:
> I'm glad to know that it worked for you and you can enjoy now the Ancient
> Greek characters, iniju! :D
>
> Did you have any problem with the process explained on the wiki? Any step
> that could be explained in a better way? Is there something missing?
>
> Thank you for your feedback! And don't worry about being late... better late
> than never ;D
>
> > > >> anki-android...@googlegroups.com<anki-android%2Bunsu...@googlegroups.com>
> > .
> > > >> For more options, visit this group at
> > > >>http://groups.google.com/group/anki-android?hl=en-GB.
>
> > > > --
> > > > You received this message because you are subscribed to the Google
> > Groups
> > > > "AnkiDroid" group.
> > > > To post to this group, send an email to anki-a...@googlegroups.com.
> > > > To unsubscribe from this group, send email to
> > > > anki-android...@googlegroups.com<anki-android%2Bunsu...@googlegroups.com>
> > .
> > > > For more options, visit this group at
> > > >http://groups.google.com/group/anki-android?hl=en-GB.
>
> > > --
> > > You received this message because you are subscribed to the Google Groups
> > "AnkiDroid" group.
> > > To post to this group, send an email to anki-a...@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > anki-android...@googlegroups.com<anki-android%2Bunsu...@googlegroups.com>
> > .
> > > For more options, visit this group athttp://
> > groups.google.com/group/anki-android?hl=en-GB.
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "AnkiDroid" group.
> > To post to this group, send an email to anki-a...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > anki-android...@googlegroups.com<anki-android%2Bunsu...@googlegroups.com>
> > .

Edu Zamora

unread,
Jul 13, 2010, 4:36:05 AM7/13/10
to AnkiDroid
Lucky you Roger, that's great!

Anyway, if someday you decide to root your phone don't forget about
us :P We could get these fonts with partial IPA support.

In other hand, could you explain us how do you use X-Sampa? It might
be an interesting solution.

Thanks a lot for your feedback!

Roger Keays

unread,
Jul 13, 2010, 2:11:23 PM7/13/10
to AnkiDroid
X-Sampa is just an ascii mapping of IPA.

http://en.wikipedia.org/wiki/X-SAMPA

I use it to enter IPA already so it isn't too difficult to recognise.
For example, I write the pronounciation of "mươi" (vietnamese for ten)
as

/mɨəi/m1@i/

so I can read it on my computer in IPA and my phone in X-Sampa

Houssam Salem

unread,
May 18, 2013, 6:37:47 AM5/18/13
to anki-a...@googlegroups.com
There is a setting that fixes this. Menu -> Preferences -> Language -> Improve Arabic display. I just tried it on a 2.2 emulator and the characters end up joined and in the correct order, but sometimes the diacritical marks are omitted (I think when it's the last character in the word it doesn't appear). 

On Friday, May 17, 2013 9:01:57 AM UTC+10, Mr Rad wrote:
Hi guys!
I know this thread is from years ago, but those Persian font in edu's post are in reverse order, and I wanted to ask for your help! I use my e-reader which has android 2.2 froyo for my studies with anki. It seems the RTL problem for Hebrew is solved, but Arabic still have this problem.
Isn't there anyway to do the same thing with Arabic as Hebrew?
Sorry if this is not the right place.
to ask.
Thanks

Mr Rad

unread,
May 21, 2013, 9:04:23 AM5/21/13
to anki-a...@googlegroups.com
^
Sorry for the late answer. But that options didn't solve the reverse order in my case :-(

Mr Rad

unread,
May 21, 2013, 10:11:09 AM5/21/13
to anki-a...@googlegroups.com
Hi
I checked it out again and it worked fine. Sorry to bother you beforehand, but I remember it didn't worked the last time, thats odd! Anyway thank you so much Houssam.

And please can you tell me why the cards are not editable in this mode? I mean is there a possiblity for any workaround on this?


& I had a suggestion too! You probably know that Opera mini doesn't support RTL for Arabic and Persian. Yet when my friend put it in his WP phone which doesn't support RTL, Arabic & Persian texts become correct! I tested the same thing in my ereader and it showed everything correct. I guess its like this:
2.2/WP--->reverse order
Opera mini---> reverse order
Thus
2.2/WP + Opera mini = reverse X reverse = correct!
It's just like mathes. Minus X Minus = Plus

Sooo! If we put an option in AnkiDroid to disable its own support for RTL (if there's any) to make Arabic reverse, we may be able to solvent the whole RTL issue. But I don't know if this process is any easier than other methods, just a though and I'll be glad to hear devs opinions on this.
Many thanks again

Houssam Salem

unread,
May 22, 2013, 7:42:26 AM5/22/13
to anki-a...@googlegroups.com
Glad it works! The reason you can't edit your notes is because when you turn on this feature, it modifies the text before it is shown to you. So what you see does not reflect what is stored in the database. If you save using the text that you see, you are effectively corrupting your data. Unfortunately, there is no workaround. You will need a device with a newer version of Android. I think 3.0 introduced proper RTL support, but I'm not certain.
Message has been deleted

Mr Rad

unread,
May 24, 2013, 7:44:28 PM5/24/13
to anki-a...@googlegroups.com
Thank you for ur explanation houssam. I have ICS on my phone already but I only study with my e-reader cause its easier on my eyes, So I guess I should bear with that or wait for e-readers to evolve!


Hi edelinfo.ch! sorry I don't see ur name!

I'm not sure about the full RTL support, but my Xperia had no problem with Persian or Arabic even when I was on gingerbread! Maybe that was Sony's customization for ME. Though still in ICS Persian texts are fixed to left side instead of right, but the order is correct.

Oh so you are learning my native language! I would be glad to help if u had any question :-)
And yea I know that circle bug very well! It would be nice if they split those circles from the actual fields.

Reply all
Reply to author
Forward
Message has been deleted
0 new messages