Dear developers,

I’m interested to use FOP for creating Documentation with complex text layout languages such as Arabic/Persian. I would like to offer my help for the implementation of Bidi Algorithm (Bug 32789)

I search on the FOP-User mailing list and found, this discussion.
http://www.mail-archive.com/fop-users@xmlgraphics.apache.org/msg01575.html

I’ve done the initial steps and establish myself a development environment,
and could render a Unicode String for the Arabic Unicode shaping here is the PDF output and the fo file:

http://user.cs.tu-berlin.de/~kiat/fop/simple.pdf
http://user.cs.tu-berlin.de/~kiat/fop/simple.fo

This test PDF output shows that the words in Arabic/Persian should be rendered for ligature glyphs characters Unicode Arabic Presentation form.
And there is no problem with the Arabic shaping for Text, RTF output.

Is there anyone who works on Bidi implementation?

Should the Bidi Implementation be an awt independent solution?
Could we use jdk 1.4 and classes like java.text.Bidi or java.awt.font.TextLayout?

I looked around for Bidi implementation and found Fribid, http://fribidi.org/wiki/ which is implemented in C.

iText project has also some Bidi classes like
class com.lowagie.text.pdf.ArabicLigaturizer
class com.lowagie.text.pdf.BidiLine
class com.lowagie.text.pdf.BidiOrder

Or we can use Batik classes like
org.apache.batik.gvt.text.ArabicTextHandler.java

I think the first point should be the implementation of

org.apache.fop.fo.flow.BidiOverride.java
org.apache.fop.layoutmgr.inline.BidiLayoutManager.java

And then add some classes for the Arabic character shaping like ArabicLigaturizer. The bidi-Override implementation is very useful for some other projects to be able to
create Persian/Arabic Documentation with PDF output from DocBook files.

Regards,
Kia Teymourian





Reply via email to