I noted that. but i have got a great fix, free and works well for both unity and NGUI (with a bit of tweaks...)
i'm using this to flip the strings:
https://www.assetstore.unity3d.com/#/content/2674
Even using a RTL plugin does not solve this issue. The way UILabel (or the Unity logic underneath it) renders its Text is from left to right, doesn't matter if the string is RTL or not.
What this does cause is that, when there is more than one line, the actual beginning of the sentence is at the bottom right. Thus, the sentence end is on the top-left side. In other words: It is written bottom-to-top.
This is because UILabel begins rendering on the LTR beginning (the first char in the Text string) and goes on rendering rightwise until a new line is needed. Even if right alignment is picked.
As an example, this following sentence:
متعدد الوجوه مع 6 وجوه. حيث الوجوه التي تشكل المكعب هي مربعات. بجانب كونها متعددة الوجوه عادية، فإنه يمكن أيضا أن تصنف على أنها متوازية ، ومتوازية المستطيلات، ومنشور مستقيم مع قاعدة مربعة.
Is rendered as seen in the attached screenshot. Notice that the "6" is at the beginning (right side) of the sentence, but it is rendered at the bottom of the UILabel.
So, what I was getting to with this:
Arenmook, do you think there is a way to fix this without heavily modifying your UILabel?
If there is not, any method I can begin looking at? (I'm guessing in NGUIText)
Even more so, is this even related to UILabel or do I have to look into Unity's library?
Thank you for your attention, and excuse me if re-bumping this old post wasn't the right approach.