Help Adding Arabic Support to NST

Search This thread

dark_hawk

Senior Member
May 31, 2004
168
57
Hello,

Arabic, like Hebrew, is a Right to left Language.
Android 2.1 does not have support for RTL languages.

This developer here made an application to modify Framework.jar to add RTL support : http://xdaforums.com/showthread.php?t=907635

The problem for Arabic is that unlike Hebrew letters are connected in some cases (most cases actually).

Another developer here add support for Arabic reshaping:
http://code.google.com/p/arabicresh...com/AzizHuss/ArabicRehaper/ArabicReshape.java

Arabic support usually is done through modifying libskia.so and libwebcore.so located at /system/lib.

I don't have any knowledge of how to modify those files and add the ArabicReshaper code to those files.

Can someone please help with this little project?

Thanks in advance.
 

dark_hawk

Senior Member
May 31, 2004
168
57
Have they already figured out Hebrew support then? I would love to have both.

To add Hebrew you just need to replace the font DroidSansFallback.ttf with any font supporting Hebrew, like for example the DejaVu fonts
http://dejavu-fonts.org/wiki/Main_Page
Rename the DejaVuSans.ttf to DroidSansFallback.ttf and push it the device /system/fonts.
But you won't have RTL support, you'll also get Arabic but without the letters connecting nor the RTL support, it's not much but it's a start.
 

dark_hawk

Senior Member
May 31, 2004
168
57
Aha. Does the linked-to app for modifying your framework work for RTL for Hebrew at least, even if Arabic is still an issue because of the connecting letters?

I don't think it will work.

[B said:
Compatibility[/B]
This program is intended for use with custom DEODEXED roms of Android versions 2.1 and above. The program will inform you if your build is not deodexed.
The program will allow you to either push the fix directly to the device or flash via recovery.

I don't think the NST is Deodexed.
You can try of course, but make a backup of your system first.
 
  • Like
Reactions: max hd

dark_hawk

Senior Member
May 31, 2004
168
57
Would something like the following effectively deodex the nook? If it'll allow me to poke around a little more then I'd have no problem trying it (properly backed up of course):
http://xdaforums.com/showthread.php?t=765270

I didn't try it, but I think it would work. The nook is like any Android phone and I don't find any reason why this wouldn't work. If the application can not connect to ADB through wifi you can try connecting it through USB with this: http://xdaforums.com/showpost.php?p=19339163&postcount=11 or http://xdaforums.com/showpost.php?p=19342931&postcount=12
 
  • Like
Reactions: max hd
Guys - there are no odex files on the NST. No deodexing necessary. Confirm that the RTL Auto-patcher works, except, weirdly, for text in html <select> tags in Opera. Also, sometimes diacritical vowels in Hebrew show up on the wrong side of the letter, but I'm not sure if we can chalk this up to DejaVu or what. I know other Hebrew fonts that are superior, but don't know if they'd have English in them as well.
Nothing going in the reader as I don't think we know how to use custom fonts for that just yet...or do we??? The sans serif fonts for the reader are useless for me and I'd love to replace them with things that are useful. (At least two different fonts for Hebrew and one for Arabic).

In the meantime, we could always embed fonts in epub. It's a chore, but it'll work...
 
Last edited:
Or not. Just tried embedding this font. Calibre's ereader worked fine with it (wasn't perfect, like in my browser, but serviceable), but the nook just gave the same gibberish :(
I think I might be doing something wrong though; some guys are trying to use 'embedded' fonts (just a reference to the filesystem in the stylesheet) on the Nook Tablet, I think with success. If that works there's no reason fonts actually embedded in the epub file.
Will try and see what happens with DejaVu at some pt, maybe...
 
Last edited:

dark_hawk

Senior Member
May 31, 2004
168
57
Glad to know RTL is working and no deodexing is necessary.

The developer of the Auto Patcher admits that are still some issues with the application.

Did you try another reader rather than the Stock reader. I find Cool Reader rather superior (Partial refresh, user fonts, style sheet over riding) you can alter anything you want including the fonts, just push the fonts you need to /system/fonts/ and use it in the Cool Reader.

I don't think you'll have problems with Hebrew because as I understand it's letters are not connected.
 
  • Like
Reactions: max hd
Glad to know RTL is working and no deodexing is necessary.

The developer of the Auto Patcher admits that are still some issues with the application.

Did you try another reader rather than the Stock reader. I find Cool Reader rather superior (Partial refresh, user fonts, style sheet over riding) you can alter anything you want including the fonts, just push the fonts you need to /system/fonts/ and use it in the Cool Reader.

I don't think you'll have problems with Hebrew because as I understand it's letters are not connected.

Thanks brother, I'll definitely try it out. I like the regular reader for Latin language stuff but have no qualms using something else for Hebrew and eventually (I mean, I'm learning still...) Arabic texts. Oh wait - do the page-turn buttons work with it?
 

dark_hawk

Senior Member
May 31, 2004
168
57
Thanks brother, I'll definitely try it out. I like the regular reader for Latin language stuff but have no qualms using something else for Hebrew and eventually (I mean, I'm learning still...) Arabic texts. Oh wait - do the page-turn buttons work with it?

Yes.
After trying Cool Reader I didn't find any reason to go back to the stock reader.

On a side note, you can still read Arabic ( and I think Hebrew) correctly using pdf files with any pdf reader. And using Opera Mini, but as Opera Mini does not open locally stored files, you can upload the html to your dropbox, get a public link, open it in Opera Mini and save it through Opera.
 
  • Like
Reactions: max hd

max hd

Senior Member
Jan 12, 2012
67
4
CAIRO
I WANT TO THANK U FOR HARD WORKING FOR ADDING ARABIC TO NST,
AND IF U DON'T MIND I HAVE A QUESTION

I HAVE SEEN ARABIC SUPPORT IN ANOTHER POST HERE

http://xdaforums.com/showthread.php?t=1414312

CAN ANYONE SHOW ME SCREEN SHOTS OF HOW IT LOOKS

AND DOES NST SUPPORT ARABIC IN PDF FILES NAMES EVEN WITH NOT CONNECTED LETTERS

THANK YOU
 

max hd

Senior Member
Jan 12, 2012
67
4
CAIRO
We still waiting for an answer, we really want to know, my nook will arrive within days

---------- Post added at 01:11 AM ---------- Previous post was at 01:07 AM ----------

ARE YOU THERE dark_hawk ? I NEED YOUR HELP ABOUT THAT

---------- Post added at 01:18 AM ---------- Previous post was at 01:11 AM ----------

ARE YOU THERE dark_hawk ? I NEED YOUR HELP ABOUT THAT
 

max hd

Senior Member
Jan 12, 2012
67
4
CAIRO
OPERA

SOME USERS SAID :

Opera Mobile has hardware acceleration and renders the pages better than Opera Mini. Mini is great when I have a slow network connection and need the data compressed.
 

dark_hawk

Senior Member
May 31, 2004
168
57
Some users reported problems with Opera Mobile, While Opera Mini is perfect for NST.

As for how to add Arabic, I'll add a guide soon, it involves patching the Framework.jar only, as I found that patching the lib files causes crashes in the anything related to the stock browser , like gmail and such. But all in all, You'll have Arabic in everything else.
 
  • Like
Reactions: max hd

max hd

Senior Member
Jan 12, 2012
67
4
CAIRO
thank you brother , i will be waiting for you ^_^

---------- Post added at 03:26 PM ---------- Previous post was at 03:22 PM ----------

i hope to see some screenshots soon , and thank you again.

i sent you a message.

---------- Post added at 03:33 PM ---------- Previous post was at 03:26 PM ----------

i hope to see some screenshots soon , and thank you again.

i sent you a message.
 

dark_hawk

Senior Member
May 31, 2004
168
57
Here are some screenshots:

Moon Reader (The RTL version):
screen201202141926.png


Google Reader:
screen201202141931.png

Opera Mini:
screen201202141929.png
 
  • Like
Reactions: max hd

Top Liked Posts

  • There are no posts matching your filters.
  • 7
    Sorry for adding the guide so late, been a little busy.

    Adding Arabic support usually involves patching both Framework.jar and libwebcore.so files.

    I found that patching libwebcore.so file causes crashes with the default browser, Gmail and Google reader. I've tried to patch the libwebcore.so manually and automatically using the method mentioned in this website : http://blog.devasque.com/?page_id=11
    But it does not work. Also, Default android browser is buggy at best, so using Opera Mini which supports Arabic won't be a problem.

    1-First you need to have your device rooted with any of the methods here in XDA. Also make sure you have the 1.1 version as I didn't try to add Arabic to 1.0 version.

    2-Make a backup of your whole system using the method found here just in case: http://xdaforums.com/showthread.php?t=1142983
    You can also try CWM backup, but I didn't try it.

    3-Download this file:
    https://rapidshare.com/files/2199861553/Arabic_Support_for_NST.rar
    Extract it, and Using Root Explorer copy the file framework.jar for /system/framework/, and copy the libandroid_runtime.so and libicuuc-arabic.so to /system/lib/
    System might restart during copying files, try again after system has restarted.
    Or
    You can try the CWM flashable zip file:
    https://rapidshare.com/files/1924264561/flashable_cwm_framework.zip
    copy the zip file to sd, boot in CWM, flash file from sd.
    Didn't try the CWM flashable file, but I don't find any reason why it won't work.

    3- Add the Arabic font, I use the DejaVuSans. Can be found here : https://rapidshare.com/files/2414620233/DroidSansFallback.rar
    Using Root Explorer copy the file to /system/fonts/ overwriting the exiting file. Reboot.
    If you don't like the font, use any other Arabic Enabled DroidSansFallback.
    All credits go to madmack.
    2
    Hello,

    Arabic, like Hebrew, is a Right to left Language.
    Android 2.1 does not have support for RTL languages.

    This developer here made an application to modify Framework.jar to add RTL support : http://xdaforums.com/showthread.php?t=907635

    The problem for Arabic is that unlike Hebrew letters are connected in some cases (most cases actually).

    Another developer here add support for Arabic reshaping:
    http://code.google.com/p/arabicresh...com/AzizHuss/ArabicRehaper/ArabicReshape.java

    Arabic support usually is done through modifying libskia.so and libwebcore.so located at /system/lib.

    I don't have any knowledge of how to modify those files and add the ArabicReshaper code to those files.

    Can someone please help with this little project?

    Thanks in advance.
    2
    Have they already figured out Hebrew support then? I would love to have both.

    To add Hebrew you just need to replace the font DroidSansFallback.ttf with any font supporting Hebrew, like for example the DejaVu fonts
    http://dejavu-fonts.org/wiki/Main_Page
    Rename the DejaVuSans.ttf to DroidSansFallback.ttf and push it the device /system/fonts.
    But you won't have RTL support, you'll also get Arabic but without the letters connecting nor the RTL support, it's not much but it's a start.
    2
    dark_hawk

    Thank you a lot for these information, I pray for you to get all you wishes..
    I am finally able to post here..
    Please help me,
    http://xdaforums.com/showpost.php?p=22846906&postcount=1

    I don't really understand what you want. If you're more comfortable writing in Arabic, send me a private message.
    2
    thank you brother, i replaced the font with Aljazeera font v2 , and it looks beautiful, one last thing , i tried to add Arabic keyboard ( actually i tried 3 different apps, but with nothing, what do you think ?


    Try Go Keyboard from the market.

    Download it, move the file apk from data/app/ to system/apps/. The use Nook color tools to switch the keyboard. Then install Arabic Go keyboard for the market.