[reportlab-users] RTL Patch Committed

Yoann Roman yroman-reportlab at altalang.com
Thu Nov 19 10:56:21 EST 2009


Hosam Aly wrote...

> I have committed a patch to the "rtl-support" branch, adding partial

> RTL support in "src/reportlab/pdfgen/textobject.py" and

> "src/reportlab/platypus/paragraph", based on pyfribidi.


Thanks! I certainly appreciate the time you're putting into this, and
I'm sure many others do as well.


> There is still the issue of connecting letters, but that's more

> related to Complex Text Layout (CTL) than it is to supporting

> BiDirectional rendering. I'll try to tackle that issue next. I am

> thinking of using PyICU instead of PyFriBiDi, but I still have to read

> more about it.


When I last looked into it, ICU did the same type of shaping as Fribidi;
that is, it uses the legacy Arabic Presentation Forms blocks. These
don't provide adequate coverage for Arabic script languages other than
Arabic itself.

See:
http://icu-project.org/apiref/icu4c/ushape_8h.html#1f89291c5a24a50b8f6dcad5eb4
668f7

Modern Arabic shaping, as indicated in the above page, uses font glyph
selection instead of replacing Unicode characters (which, among other
things, affects text searches). In my research, the only library with
Python bindings that *appears* to use this approach is Pango, but I
haven't had time to test it out yet.

--
Yoann Roman



More information about the reportlab-users mailing list