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
Fix very long fragmentParts not wrapping in chat render #424
Conversation
I've sorted out all the issues and edge cases I can think of with LTR characters. @HellbringerOnline also requested that I add wrapping on the last |
I wonder how I should go about adding RTL support. I believe in arabic script the shape of a character changes depending on what comes after it, meaning word wrap could alter the readability right? |
I hope that I can help with RTL (Arabic speaker) |
|
Yes it will stay that way, but in the case that a word needs to be split to multiple lines due to length it can be pretty complicated in select languages. I'm trying to work on those select languages, which are primarily RTL. Thanks for the help with arabic |
I was able to confirm the RTL is wrapped correctly |
I was able to partially fix RTL outlines. For example Hebrew looks perfect, but Arabic's outlines are quite significantly wider than the drawn text. I tried scaling the outlines to the text width but the issue is the character kerning/fontface |
I've realized what the issue is now, and it's an issue with SkiaSharp.
|
I compiled your branch and tested a chat render. |
Fixes #421
Fixed a few memory leaks - i.e. after rendering about ~800 RTL messages, 3GB of memory had leaked
Fixes #229 - fixed most RTL outlines1
Footnotes
RTL scripts with adapting characters (like Arabic) do not render outlines properly. This is an issue with SkiaSharp, not us. See code comment for more details ↩