Thank you for you answer! I tried your first approach and it works
fine, but I have some right-to-left alignment problems,
1. TOC, I should have from the right side, first the text, the dots
line and then the page number.
I found the template in fa/toc.xsl, and put it in my customizing layer
and changed it,
but it doesn't work, could not find some variables.
I need to get in my FO output file, in toc part formatting like this:
<fo:block text-align-last="justify" text-align="start"
1. ARABIC TITLE
2. In "calloutlist", "callout" I should put them to the right side,
from there, first the number and then the text.
Can I have them in my customizing layer? I checked the fo/callout.xsl
file, is this the template name="callout-bug"?
3. Everywhere in Stylesheet, when it has text-align="left", it should
be change to "right", and vice versa.
3. Could Stylesheet support fully the @dir attribute? Or the Stylesheet
get too complex to support these features.
I checked all of these with Antenna House and my modified FOP
trunk-version, and is the same.
Thank you indeed!
Bob Stayton wrote:
There are several opportunities in
the stylesheet to set a writing-mode property. It is easier at the
global levels. Here are two options:
1. The root.properties
attribute-set is applied to the fo:root element.
2. The template named
set.flow.properties can be customized to add properties to each fo:flow
I have enabled Arabic and Hebew for
Antenna House using both methods. In one case, I created a
customization for Arabic documents in order to select fonts and adjust
formatting for right-to-left alignment. In that case, I put the
writing-mode and language properties in the root.properties
In another case, I used
set.flow.properties to select a writing mode, based on the document's
lang attribute. I called the template named l10n.language (in
common/l10n.xsl) to convert the document's lang attribute to a standard
form that matches one of the locale filenames in the common directory
(ar for Arabic, for example). Then I used that value to choose a
writing mode. I also made sure the language property was set at the
At the block level, it gets more complicated because there are so many
templates that generate blocks. There is no single place to add
properties for all fo:block elements.
The stylesheet does partially
support the @dir attribute, but only on inline elements. See
fo/inline.xsl for examples.
Original Message -----
Tuesday, November 07, 2006 5:42 AM
Re: [docbook-apps] Persian, Arabic or Hebrew FO output, need to get
thank for your answer! Actually I am working on a patch for Apache FOP
so that fop
will be able to create well-formated Persian, Arabic or Hebrew output
My aim is to have open source documentation system for languages like
with complex text layout writing system.
On my FOP trunk version, I can create Arabic PDF files
like this one
but I should have in my FO files the correct writing system. The
problem is not just having the correct shapes
and glyphs but it should be able to apply Bidi Algorithm on each
Antenna House's XSL Formatter needs also to have writing-mode="rl-tb":
Arabic Arabic Arabic
Can I control this by my customizing layer? Is this implemented
depending on writing-mode "dir" attribute?
Bob Stayton wrote:
It would help if you mentioned
what XSL-FO processor you are using. If it is FOP, then you are out of
luck, because FOP doesn't support writing-mode properties that enable
you to publish Hebrew or Arabic.
If you use RenderX's XEP or
Antenna House's XSL Formatter, then you can publish Hebrew and Arabic,
and it is easier than you think. The Unicode ranges for those
languages identify the glyphs as needing to be set right-to-left, so
the formatter will do so automatically without having to set
writing-mode or use bidi-override.
Original Message -----
Sunday, November 05, 2006 3:48 AM
[docbook-apps] Persian, Arabic or Hebrew FO output, need to get
could you please tell me how can I get in my .FO output file, the
I need to have in my .FO file something like this:
<fo:block font-size="14pt" font-family="Tahoma"
space-after.optimum="12pt" writing-mode="rl-tb" >
I send my XML file with dir="rtl" attribute to the XSLT processor, and the dir="rtl" is just once defined in
the root tag
<book dir="rtl"> or <article dir="rtl">.
Is this feature implemented?
Or should I add this part in my customizing layer?
How can I get <fo:bidi-override> objects in my .FO output? Is bidi-override implemented?