Yesterday, I got a question from a customer asking me about the
behaviour of text-indent in the exact case that was described in the
following thread (from fop-users, March 2005):

http://marc.theaimsgroup.com/?t=111558789900018&r=1&w=2

The example from that thread:
<fo:block text-indent="5">

      This is just for testing purpose and this line will be indented.

    <fo:block>this is the nested block </fo:block>

     The text following the nested block is indented as well...not sure if
this is as per spec. since it does not happen in other renderers.

</fo:block>

I went looking into the spec and I think the current behaviour is wrong.
So far, it is assumed that the first line of the text after the nested
block is also indented. But the spec clarifies the definition from CSS:

"The "text-indent" property specifies an adjustment to the start-indent
of the first child L of the first blockarea generated and returned by
the formatting object, provided L is a line-area." (7.15.11 in XSL 1.0)

The first line area generated due to the text after the nested block is
no more the "first blockarea generated and returned by the formatting
object".

The applicable test in our test suite:
http://svn.apache.org/viewcvs.cgi/xmlgraphics/fop/trunk/test/layoutengine/standard-testcases/block_text-indent.xml

Does anyone see this differently? If not, I'm going to change the
expectation and the implementation.

Jeremias Maerki

Reply via email to