Provisional bidi and shaping support
commit3bb8743641c398e0807322ea74754d7e54fbbc3d
authorGrigori Goronzy <greg@blackbox>
Wed, 6 Jul 2011 21:19:54 +0000 (6 23:19 +0200)
committerGrigori Goronzy <greg@blackbox>
Wed, 6 Jul 2011 21:24:30 +0000 (6 23:24 +0200)
treee922f720492f52868fa7031fcbb63c18299714b1
parent87d472953d5eb58a0e0b8d6414e7ffcd3678d83a
Provisional bidi and shaping support

Adds fully working bidirectional text and simple shaping support.
The following works:
- bidirectional text according to the Unicode Bidirectional Algorithm
- simple shaper for mirrored forms (brackets, etc.) according to
  rule L4 of the Unicode Bidirectional Algorithm
- reordering into visual order with correct line wrapping

However, the implementation certainly needs efficiency improvements
(caching, less malloc'ing), a proper shaper (HarfBuzz) needs to be
hooked up and various bugs with karaoke and positioning need to be
fixed.
libass/Makefile.am
libass/ass_render.c
libass/ass_render.h
libass/ass_shaper.c [new file with mode: 0644]
libass/ass_shaper.h [new file with mode: 0644]