Jump to content
You must now use your email address to sign in [click for more info] ×

Right to Left Support for Hebrew and Arabic


Recommended Posts

  • 5 weeks later...
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 comment
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 comment
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 comment
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 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
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 comment
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 comment
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 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
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 comment
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 comment
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

MacBookAir 15": MacOS Ventura > Affinity v1, v2, v2 beta // MacBookPro 15" mid-2012: MacOS El Capitan > Affinity v1 / MacOS Catalina > Affinity v1, v2, v2 beta // iPad 8th: iPadOS 16 > Affinity v2

Link to comment
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.

MacBookAir 15": MacOS Ventura > Affinity v1, v2, v2 beta // MacBookPro 15" mid-2012: MacOS El Capitan > Affinity v1 / MacOS Catalina > Affinity v1, v2, v2 beta // iPad 8th: iPadOS 16 > Affinity v2

Link to comment
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 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
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

 

MacBookAir 15": MacOS Ventura > Affinity v1, v2, v2 beta // MacBookPro 15" mid-2012: MacOS El Capitan > Affinity v1 / MacOS Catalina > Affinity v1, v2, v2 beta // iPad 8th: iPadOS 16 > Affinity v2

Link to comment
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
Designer, Photo, and Publisher V1 and V2 at latest retail and beta releases
PC:
    Desktop:  Windows 11 Pro, version 23H2, 64GB memory, AMD Ryzen 9 5900 12-Core @ 3.00 GHz, NVIDIA GeForce RTX 3090 

    Laptop:  Windows 11 Pro, version 23H2, 32GB memory, Intel Core i7-10750H @ 2.60GHz, Intel UHD Graphics Comet Lake GT2 and NVIDIA GeForce RTX 3070 Laptop GPU.
iPad:  iPad Pro M1, 12.9": iPadOS 17.4.1, Apple Pencil 2, Magic Keyboard 
Mac:  2023 M2 MacBook Air 15", 16GB memory, macOS Sonoma 14.4.1

Link to comment
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 comment
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.

MacBookAir 15": MacOS Ventura > Affinity v1, v2, v2 beta // MacBookPro 15" mid-2012: MacOS El Capitan > Affinity v1 / MacOS Catalina > Affinity v1, v2, v2 beta // iPad 8th: iPadOS 16 > Affinity v2

Link to comment
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

Terms of Use | 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.