[WIP] BiDi and shaping support for Font::draw/Font::get_string_size
Created by: bruvzg
Changes Font::draw
, Font::draw_halign
, Font::get_string_size
functions and Label
, LineEdit
controls to support bi-directional text and complex scripts using ICU and HarfBuzz libraries.
Adds Font::draw_paragraph
function, and ShapedString
/ShapedAttributedString
classes for text display and input handling.
🔹 Third-party libraries
🔸 Updates
7 Sep 2018 - Fixed build for ARMv7 Linux, added glyph offsets to get_string_size
calculation.
27 Sep 2018 - Added multiline and rich text shaping APIs.
12 Oct 2018 - Added Label, and LineEdit, text shaping moved from font to separate ShapedString (for plain text), ShapedAttributedString (for rich text)
🔹 TODO list
-
Single line plain text rendering API -
Multiline plain text rendering API -
Multiline spanned text rendering API -
LineEdit control -
Label control -
Char-by-char text in other controls -
RichTextLabel control -
TextEdit control