Re: [xsl] fun with fo tab formatting

Subject: Re: [xsl] fun with fo tab formatting
From: Eliot Kimber <eliot@xxxxxxxxxx>
Date: Wed, 10 Dec 2003 17:55:58 -0600
Kyle Partridge wrote:

I thought I'd use an empty fo:block to do it...something like:

<fo:block indent-before="0.2in"/>One<fo:block
indent-before="1in"/>Blue<fo:block indent-before="1in"/>Fish

All I want to know is, am I totally barking up the wrong tree?  And if
so, could you recommend an alternative strategy?  I'm willing to do my
own leg-work.

I think you are. The above markup certainly won't give the result expected for several reasons:

1. The text will be positioned below (after) the blocks, not on the sides

2. FO implementations are within the spec to completely ignore blocks with no content, as in this case, and some (if not all) do.

The most reliable approach will be to use tables to emulate the tabbing. You may also be able to get some mileage out of fo:leader, which is the easiest way to get a fixed amount of inline space.

The problem is handling the second and subsequent tabs--there's no inline object that has the semantic of "position at the next absolute offset from the start edge of the current line area" (at least as far as I know).

But it shouldn't be that hard to generate the table.


W. Eliot Kimber
Innodata Isogen

XSL-List info and archive:

Current Thread