Advertisement

You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Using Arabic Scripts With Blender

23

Like many other apps, Blender does not work well with Arabic or other right-to-left written languages. ArabBlend writer Islam Abofarha explains how to work around this.

Islam writes:

When i started using blender i tried to use Arabic letters but unfortunately i found that blender is not fully equipped by the tools to append Arabic scripts.

I found the problem in two things :

  • Right to Left characteristic of Arabic.
  • Arabic Letters are connected to each other .

The same problem i faced in some softwares like 3d Studio Max and Old versions of Photoshop. I overcame it by using programs which has its own fonts. These fonts are Latin fonts in origin but there characters are replaced by Arabic characters and inverse the order of the sentence letters to be from the left to right.

I could use these softwares but the problem it can not used with Linux platform .It's for windows only .

So , i found a better way which will be compatible with all platforms by simulating its work using BLENDER and these fonts directly.

Links

About the Author

Avatar image for Bart Veldhuizen
Bart Veldhuizen

I have a LONG history with Blender - I wrote some of the earliest Blender tutorials, worked for Not a Number and helped run the crowdfunding campaign that open sourced Blender (the first one on the internet!). I founded BlenderNation in 2006 and have been editing it every single day since then ;-) I also run the Blender Artists forum and I'm Head of Community at Sketchfab.

23 Comments

  1. myselfhimself on

    Hi
    I don't speak arabic at all.. but this still seems complicated. Maybe there should be some python script for this, which would type the letters in reverse order and find the right linking characters, I don't know.

  2. i think it's not hard to do it .the problem is i didn't get the chance to learn python :(

    but i will learn .... :)

  3. myselfhimself on

    hey
    I had a look on wikipedia for how arabic gets written.
    Letters change shape if they are at the beginning, in the middle, at the end of a word or isolated.
    If there's a python script, it could see very easily for each letter which shape (beginning,middle,end,isolated) has to be used, and then pick the right character in the alphabet (and have no need to add a small separated ligature character). Do your fonts file have beginning,middle,end,isolated shapes ? or is that just isolated shapes that you have to complete with some ligature ?

  4. The Font file has all shapes of every letter .there is another thing you have to notice, the keyboard layout had changed in these fonts .so the layout of the font must be considered also .
    it is not hard to do it just choosing right shapes , translate layout and inverse the order and u get the sentence u want .
    i can program it in c++ but python i didn't focus on it when i learned programming .

  5. I think it would also interest graphist from the CKJ zone (China, Korea, Japan) because people write not only left-to-right, but also right-to-left, top-to-bottom and bottom-to-top...

    :p Maybe it's time to enhance the text functions in blender... (thinking international) as it could be use for TV jingles or titles everywhere...

  6. I think u r right aws357 .many GNU programs support internationalization .i'm using Ubuntu which is great OS .it's arabic fully supported.Also GIMP i can use arabic with it too.

  7. The simplest way I see of writing arabic or any other
    language with the same graphic properties seems to
    write the text (or import a scan of it)in a vector drawing software like Inkscape, export it in SVG format and
    import it into Blender...

  8. @ROUBAL
    Does inkscape handle all the special cases of arabic text right? I heard that pango applications + fonts have some limitations (that can only be compensated by a gtk overhaul which will happen/is already in progress).

  9. Bravo, Islam. I have always found Arabic writting beautiful, but don't know how to read it. I did not know the letters change depending on where they are in a word. Thank you for your work.

  10. Good. Arabic is a very pretty written language, and users who need this function will be glad to know there's a way to do it. Thanks.

  11. There is a free editor to write semitic languages from right to left & adjust keyboard bindings BOTH for MSWindows and Xwindows (Linux):

    http://www.yudit.org/download.html

    leads you to a page where you can download both source & binaries.

    You can adjust/edit/compose your own arabic fonts and modify existing ones by using
    Fontforge, which is also free & platform independent (fantastic program BTW, merits a four star rating !)

    Why duplicate work already done ? And don't underestimate the effort of adjusting to the different letterforms in dependance of their in-text positions (Yudit will do this AUTOMATICALLY !); even for a Python crack will it be a major undertaking .... and there are other projects which are in more dire need of (Pythonite's) help ;-) ...

    just my 2 cents ....

  12. Hi
    thx for ur intrest guys it's nothing.
    i think Yudit and inkscape are good ideas too
    but i'm just wondering why blender can not support non latin character writtings directly .are there projects around to do that ?
    i hope so .as i think this will help alot and non latin language users can help to perform that .

  13. @islam
    As I understand it, blenders codebase needs major refactoring to make such features possible. But major refactorings are scheduled for blender 2.50, so maybe after 2.50 such a feature will be implemented. Again, this is only what I "heard", nothing I know for sure.

  14. Hi all, thanks b@rt for this article, in fact I always found this lack of handling complex scripts languages in blender somewhat limiting.
    But I found my own workaround I do write my text in Inkscape or in gimp and transform it to path then import it in blender, and this works fine for me, though results are better with Gimp (no need for any adjustment after import ).
    But indeed it would be great to have this feature in blender.

  15. @islam, thank you for the interesting article (I read the English
    version). As some people have pointed out, a Python script for
    Complex Text Layout (CTL) would be helpful.

    This idea reminded me that I had tried the same thing in Skencil,
    a vector drawing program that allows plug-ins to be written in
    Python. The results of my trials and errors are available as an
    experimental Skencil plug-in named PolygloText:
    http://www.asahi-net.or.jp/~rd6t-kjym/sketch/#PolygloText
    I achieved CTL by means of the m17n library. The Skencil plug-in
    may be a little bit out of date, since it uses an older version of
    the m17n library.

    I believe, however, this Skencil plug-in would be a good start point
    for a script for CTL in Blender. I don't have enough time and
    knowledge to implement it at the moment. So if someone is willing
    to do that, please feel free to ask me for help. My e-mail address
    is shown in the documentation of PolygloText.

  16. *hello
    *i have used gimp for the font that you can export to jpg or another graphic format then opened the file with inkscape
    *inkscape will convert the bitmap to a path and then saved work as svg file
    *imported that svg to blender
    *et voilà...

Leave A Reply

To add a profile picture to your message, register your email address with Gravatar.com. To protect your email address, create an account on BlenderNation and log in when posting a message.

Advertisement

×