-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Comments
@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. |
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. |
I really need this for my app. If I can help, I'll. |
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. |
@Gillibald |
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. |
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. |
@Gillibald great. I'd be happy to help out. Please feel free to let me know whenever you needed something! |
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. |
I will definitely play with your shaping engine when I have more time to spare. |
Feel free to borrow anything else useful in the codebase in the interim. |
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 |
@Gillibald can it be closed now? RTL is available in nightly builds. |
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. |
im kinda new to C# libs, so how do i pull an installation from git? (i come from haxe, there its |
Full details on how to do this here: https://github.com/AvaloniaUI/Avalonia#bleeding-edge-builds |
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 فعل.
The text was updated successfully, but these errors were encountered: