Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing Right-to-Left text support #1809

Closed
GihanSoft opened this issue Aug 14, 2018 · 17 comments
Closed

Missing Right-to-Left text support #1809

GihanSoft opened this issue Aug 14, 2018 · 17 comments

Comments

@GihanSoft
Copy link

Please put FlowDirection property in ui elements. i want to build an app that use languages like Arabic and Persian. but I can't change direction. also characters are separated and is like ل‌ع‌ف but they must be فعل.

@GihanSoft GihanSoft changed the title There is no DIRECTION!!! There is no DIRECTION!!! 🐛 Aug 14, 2018
@GihanSoft GihanSoft changed the title There is no DIRECTION!!! 🐛 There is no DIRECTION!!! Aug 14, 2018
@danwalmsley
Copy link
Member

@cheifmb welcome to avalonia. Would you like to attempt a PR for this we always welcome new contributions. If so we are here to assist.

@jmacato jmacato changed the title There is no DIRECTION!!! Right-to-Left text support Aug 14, 2018
@jmacato jmacato changed the title Right-to-Left text support Missing Right-to-Left text support Aug 14, 2018
@jmacato jmacato added this to the Post-1.0 milestone Aug 14, 2018
@Gillibald
Copy link
Contributor

This needs text shaping support and therefore we need Harfbuzz to support it under Skia. DirectWrite already supports right to left rendering but doesn't support text shaping with our current implementation of TextRenderer. In the end this needs some effort but will improve text rendering a lot.

@GihanSoft
Copy link
Author

GihanSoft commented Aug 27, 2018

I really need this for my app. If I can help, I'll.

@Gillibald
Copy link
Contributor

I could implement FlowDirection for text only. That would mean we need to add FlowDirection support at others places later. This will take some time because it will effect text rendering in general and needs some heavy testing. Don't expect this to be merged soon. Will make some prototyping and we will see how it goes.

@GihanSoft
Copy link
Author

@Gillibald
Thanks.
I mention one more time.
RtL for Arabic and Persian need letters to gather.
This ف‌ع‌ل is not good.
It must be فعل.
Thank you for your great avalonia

@mhmd-azeez
Copy link

mhmd-azeez commented Oct 28, 2021

First, I want to thank you guys for the wonderful job you have done with building the framework. Please keep it up. I understand that this is a huge undertaking and it's not easy, but this is a blocker for me. I am just writing this to help make this ticket's priority higher. You might be interested in ImageSharp's implementation of Font Shaping and Support for Bidrectional text: SixLabors/Fonts#198. Even though I don't have expertise in this area, I volunteered to help ImageSharp's maintainers to verify the output of the text rendering, I'd be more than happy to help you guys in the same manner.

@Gillibald
Copy link
Contributor

I am actively working on BiDi text editing support. That SixLabors work is a good start an we already adapted some of their Unicode related implementations. As it looks like their shaping engine will not be an option because they only implement some of the writing systems and I am more confident in using HarfBuzz.

@mhmd-azeez
Copy link

mhmd-azeez commented Oct 28, 2021

@Gillibald great. I'd be happy to help out. Please feel free to let me know whenever you needed something!

@JimBobSquarePants
Copy link

As it looks like their shaping engine will not be an option because they only implement some of the writing systems and I am more confident in using HarfBuzz.

I reckon someone who reads C++ (I read next to zero) could probably convert the rest of the shapers in a few days at most. All the architecture exists to support them.

@Gillibald
Copy link
Contributor

I will definitely play with your shaping engine when I have more time to spare.

@JimBobSquarePants
Copy link

Feel free to borrow anything else useful in the codebase in the interim.

@Takoooooo Takoooooo removed this from the Post-1.0 milestone Feb 12, 2022
@ShaharMS
Copy link

is this planned to release soon (or present in the master branch)?

I really need RTL and reshaping support for my app, so i just wanna know if i can depend on avalonia/3rd party lib for BiDi

@maxkatz6
Copy link
Member

@Gillibald can it be closed now? RTL is available in nightly builds.

@Gillibald
Copy link
Contributor

This is part of master. You can use a recent nightly build and it should work. There are some text editing issues left for Bidi text but they should not block you from getting a good experience.

@ShaharMS
Copy link

im kinda new to C# libs, so how do i pull an installation from git?

(i come from haxe, there its haxelib git <libname> <git link>)

@Gillibald
Copy link
Contributor

@grokys
Copy link
Member

grokys commented May 18, 2022

Full details on how to do this here: https://github.com/AvaloniaUI/Avalonia#bleeding-edge-builds

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants