Jump to content

Right to Left Support for Hebrew and Arabic


Recommended Posts

  • 5 weeks later...
  • Replies 101
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Just downloaded Affinity Publisher - any plans to support r-to-l in any of your products? I have many clients who need English and Hebrew support and would value having something other than Adobe to m

Hi, welcome to the forum. The reason we don't have right-to-left support yet is because it's hard and will take a long time to implement (whilst also working on other features and bug fixes). There is

+1 for RTL and Complex Script Layout Support.

On 11/22/2018 at 8:21 AM, Chris26 said:

I have a suggestion, unfortunately I am not a script writer otherwise I would do this.  I installed a RTL script into my adobe creative suite some  years ago.  It works an absolute treat, one simply writes left to right and then presses a shortcut key and it switches to RTL.  Maybe someone could write a quick script    -   this would solve a short term need surely?.  By the way if anyone wants the script I will happily upload it here.

Chris I would LOVE the script - have you tried it with Affinity Designer?

Link to post
Share on other sites
On 10/8/2020 at 6:13 PM, specworkfan said:

I just discovered today there is no support for Hebrew/Yiddish. How hard is it to allow copy paste and the reverse all of the letters? Brute force this at least in an option.

Come on now. 

Simply reversing a string of letters is simple. But if you want kerning, spacing, ligatures, etc., then that is a different matter. For that you need a text engine designed to do that.

I need to type Persian. Simply reversing the letters is not a solution at all. 

Link to post
Share on other sites
On 10/16/2020 at 1:06 AM, Haluna said:

Chris I would LOVE the script - have you tried it with Affinity Designer?

Sorry for extended delay in relying, I will dig it out, I need to get back to my apple for that, it is on CS3, which photoshop version do you have?

Microsoft - Like entering your home and opening the stainless steel kitchen door, with a Popup: 'Do you really want to open this door'? Then looking for the dishwasher and finding it stored in the living room where you have to download a water supply from the app store, then you have to buy microsoft compliant soap, remove the carpet only to be told that it is glued to the floor.. Don't forget to make multiple copies of your front door key and post them to all who demand access to all the doors inside your home including the windows and outside shed.

Apple - Like entering your home and opening the oak framed Kitchen door and finding the dishwasher right in front you ready to be switched on, soap supplied, and water that comes through a water softener.  Ah the front door key is yours and it only needs to open the front door.

 

Link to post
Share on other sites
1 hour ago, Chris26 said:
On 10/16/2020 at 2:06 AM, Haluna said:

Chris I would LOVE the script - have you tried it with Affinity Designer?

Sorry for extended delay in relying, I will dig it out, I need to get back to my apple for that, it is on CS3

I used a RTL script in ID many years ago (before it supported RTL), it was in JavaScript and therefore would not work with Affinity apps as long Affinity doesn't open its script interface.

macOS 10.14.6, Macbook Pro Retina 15" + Eizo 27" // Affinity preferred in Separated Mode + Merged Windows

Link to post
Share on other sites
1 hour ago, thomaso said:

I used a RTL script in ID many years ago (before it supported RTL), it was in JavaScript and therefore would not work with Affinity apps as long Affinity doesn't open its script interface.

Hi, yes, I am assuming that she wants it for Adobe, In Design maybe, since this was my original comment so long ago, to which she replied with the question..  Well I am posting the script that I have used, it worked also on whole paragraphs.  

ReverseText.jsx

Microsoft - Like entering your home and opening the stainless steel kitchen door, with a Popup: 'Do you really want to open this door'? Then looking for the dishwasher and finding it stored in the living room where you have to download a water supply from the app store, then you have to buy microsoft compliant soap, remove the carpet only to be told that it is glued to the floor.. Don't forget to make multiple copies of your front door key and post them to all who demand access to all the doors inside your home including the windows and outside shed.

Apple - Like entering your home and opening the oak framed Kitchen door and finding the dishwasher right in front you ready to be switched on, soap supplied, and water that comes through a water softener.  Ah the front door key is yours and it only needs to open the front door.

 

Link to post
Share on other sites
  • 2 weeks later...
  • 5 months later...

Any plans for when this is to be released yet? 
I can understand that it might seem like a small thing since only 12 languages use the left to right direction.
But one of those languages is Arabic with around 422 million users of that language.
The other is Hebrew and it has around 14 million potential users if you count the Jews in America & Israel.

So I mean getting this feature might give 500 000 affinity sales here for all I know. Seems really worth getting that feature if you ask me :)
 

Link to post
Share on other sites
32 minutes ago, Desmild said:

422 million

32 minutes ago, Desmild said:

14 million

32 minutes ago, Desmild said:

500 000

32 minutes ago, Desmild said:

me :)

Any chance the half billion creates, too? … RTL at least?

macOS 10.14.6, Macbook Pro Retina 15" + Eizo 27" // Affinity preferred in Separated Mode + Merged Windows

Link to post
Share on other sites

Ops I did not mean "left to right direction" but rather right to left. 

Anyway I think its worth getting since you can expect at least 200 000 sales when the marked is open for those languages.

Hire a guy to do it or something. His salary will be paid by the extra sales it will generate. 

 

Link to post
Share on other sites
On 4/3/2021 at 7:44 AM, Weekend said:

if affinity does not want to use this I don't know why they want to reinvent the wheel by not using this.

 

HarfBuzz has its faults. It does not format keshidas correctly or consistently. The snippet below is some Persian poetry set in LibreOffice 7, which uses HarfBuzz. It is a big improvement on LibreOffice 6 (and OpenOffice). But look at the last word of each verse: 'bād'. The word is the same in each, but the lengths are all over the place. Look particularly at the last verse in comparison with the fourth - it looks terrible. Trying to fix this up manually in LibreOffice is extremely tiresome to say the least.

If Affinity just used the HarfBuzz library as is, it might just about be good enough for simple text. But is that 'good enough' for a DTP app? I have to say no.

1100035406_Screenshot2021-04-04at21_37_03.png.8bfa45c518d2c5f6a172feb41b7d68dd.png

The HarfBuzz authors themselves are aware of its limitations: 'It is important to note that if you are implementing a complete text-layout engine you may have other responsibilities that HarfBuzz will not help you with.'

https://harfbuzz.github.io/what-harfbuzz-doesnt-do.html

J.

Edited by LondonSquirrel
Clicked the save button too quickly.
Link to post
Share on other sites
  • 4 weeks later...

Some food for thought…
I don't understand, read or write Arabic, Hebrew or Persian at all, thus I haven't even used any RTL yet. But from the strictly technical point of view, the following workaround might theoretically allow you to use "fake RTL" as live text in Affinity, now.
Inspired by another thread, I had the following idea:

All you need is a font editor (I have TypeTool 3 but any other should do).

  1. flip all characters in your favorite RTL font
    tt_flipped_font.png.a267902a5e7c21489aa83cc0fdc65d43.png
    you might also need to adjust some other font parameters correspondingly, hinting, kerning, whatever…
  2. save the font under a new name; you really should know what you're doing to avoid OS font conflicts
  3. activate your new flipped font
  4. create a text frame in Affinity
  5. flip the text frame
  6. start typing RTL using your flipped font
    apu_flipped_font_for_rtl2.png.bd025fea633aaa00922fefc4faae6a06.png

 

Anyone brave enough to experiment with it further…? :D

 

Edited by loukash
Link to post
Share on other sites
1 hour ago, loukash said:

Anyone brave enough to experiment with it further…? :D

Hahaha! Nice try. But Arabic and Persian are cursive - certain letters must join up. And letters themselves have up to 4 forms: initial, medial, end, and isolated. But your suggestion may work for Hebrew.

Link to post
Share on other sites
Just now, LondonSquirrel said:

But Arabic and Persian are cursive - certain letters must join up. And letters themselves have up to 4 forms: initial, medial, end, and isolated.

I never said it's easy. It's just a proof of concept.
Correctly flipping such a font in a font editor may require quite an amount of work. But if you need RTL in Affinity now, then it's a possible way to do it.
If you don't try, folks, you'll never find out! ;)

2 minutes ago, LondonSquirrel said:

But your suggestion may work for Hebrew.

Having got some roots there – my late grandfather was still somewhat capable to passively read Jiddisch – that was also my initial thought.

Link to post
Share on other sites

What a fancy idea to create an extra font as workaround for a missing application feature. Reminds me to typing text via single character stamps.
If needed I'd rather prefer one of the available websites to flip the character order of my entire text first and maintaining this way the ability to use any Arabic font.

As @LondonSquirrel mentioned Arabic glyphs change depending on their surrounding. So correct Arabic typing is not only 'flipped' but also respects the context of each character and influences the appearance of vowels (as kind of tiny 'markers' around consonants).

macOS 10.14.6, Macbook Pro Retina 15" + Eizo 27" // Affinity preferred in Separated Mode + Merged Windows

Link to post
Share on other sites
6 minutes ago, thomaso said:

What a fancy idea to create an extra font as workaround for a missing application feature. Reminds me to typing text via single character stamps.

  • keep on whining while waiting until Serif implements the feature, and waiting, and whining, and waiting, and whining, and…
  • forget Affinity and go back to Schmadobe
  • use a "fancy" workaround

Make your choice. :P

10 minutes ago, thomaso said:

correct Arabic typing is not only 'flipped' but also respects the context of each character and influences the appearance of vowels (as kind of tiny 'markers' around consonants)

Read again:

5 hours ago, loukash said:

[…] you might also need to adjust some other font parameters correspondingly […]
[…] you really should know what you're doing

 

Link to post
Share on other sites

It would be easier to use one of the 3rd-party applications that will handle the RTL for you. This one was mentioned recently in another thread here:
https://leomoon.com/downloads/desktop-apps/leomoon-parsinegar/

(Edit: I have not tried it myself, but it seems to be free, and could be a lot less work than designing a font :) )

-- Walt

Windows 10 Home, version 20H2 (19042.685),
   Desktop: 16GB memory, Intel Core i7-6700K @ 4.00GHz, GeForce GTX 970
   Laptop (2021-04-06):  32GB memory, Intel Core i7-10750H @ 2.60GHz
, Intel UHD Graphics Comet Lake GT2 and NVIDIA GeForce RTX 3070 Laptop GPU
Affinity Photo 1.9.2.1035 and 1.9.4.1065 Beta   / Affinity Designer 1.9.2.1035 and 1.9.4.1065 Beta  / Affinity Publisher 1.9.2.1035 and 1.9.2.1024 Beta

Link to post
Share on other sites
6 hours ago, loukash said:

Some food for thought…
I don't understand, read or write Arabic, Hebrew or Persian at all, thus I haven't even used any RTL yet. But from the strictly technical point of view, the following workaround might theoretically allow you to use "fake RTL" as live text in Affinity, now.
Inspired by another thread, I had the following idea:

All you need is a font editor (I have TypeTool 3 but any other should do).

  1. flip all characters in your favorite RTL font

    you might also need to adjust some other font parameters correspondingly, hinting, kerning, whatever…
  2. save the font under a new name; you really should know what you're doing to avoid OS font conflicts
  3. activate your new flipped font
  4. create a text frame in Affinity
  5. flip the text frame
  6. start typing RTL using your flipped font
     

 

Anyone brave enough to experiment with it further…? :D

 

I have posted about something similar... you might want to look it up. it's a very old program.

image.png

Link to post
Share on other sites
14 minutes ago, walt.farrell said:

could be a lot less work than designing a font

Been there done that, you know. ;)
I'm a long time FileMaker user. Despite being an Apple subsidiary, FM's typography tools and font support on Mac are
abysmal. (Don't know about the current version though.) Eventually I ended up "remixing" some of my favorite Type 1 and later OTFs fonts to specially "modded" TTF versions that would work in FM the way I need, especially when it comes to Czech diacritics. There simply was no other way, due to – presumably – a bug how FM displays and prints characters in text frames.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Please note there is currently a delay in replying to some post. See pinned thread in the Questions forum. These are the Terms of Use you will be asked to agree to if you join the forum. | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.