[xsl] [XSL-FO] big table - table-header : FOP bug or not ?

Subject: [xsl] [XSL-FO] big table - table-header : FOP bug or not ?
From: Philippe Drix <pdrix@xxxxxxxxxxxx>
Date: Sun, 16 Nov 2003 20:24:58 +0100
Hi!
I have a problem with fo:table-header.
My table is a big one (say 2 ou 3 pages long), and I get an extra piece of row beetween the header and the first row, on each page after the first page.


Here what I get:

>...
>top of second page
>------border-top (header)------
>header content
>----border-bottom (header)------
>small vertical space (why ???)
>--------border-bottom of last row of the previous page (why ???)-----------
>data of the first row of the current page
>--------border-bottom (current row)----------------
>next data (second row)
>-------border-bottom (current row)---------------
> etc.

I don't know why I get this small vertical space and the extra border-bottom, but I know how to workaround the problem.

I use FOP 0.20.5.
Below the original xsl-fo code :

<?xml version="1.0" encoding="iso-8859-1"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format";>
<fo:layout-master-set>
<fo:simple-page-master margin-right="1cm" margin-left="1cm" margin-bottom="1cm" margin-top="1cm" page-width="23.999cm" page-height="21.001cm" master-name="atomique-Standard">
<fo:region-body margin-top="0cm" margin-bottom="0cm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence force-page-count="no-force" master-reference="atomique-Standard" id="atomique-Standard">
<fo:flow flow-name="xsl-region-body">


<fo:table table-layout="fixed" text-align="left" inline-progression-dimension="5.001cm+0.001cm">
<fo:table-column column-width="5.001cm"/>


<fo:table-header>
<fo:table-row>
<fo:table-cell padding="0.097cm" border="0.002cm solid #ff0000">


<fo:block color="#000000" font-family="sans-serif" font-size="12pt" font-weight="bold">
Title
</fo:block >


               </fo:table-cell>
            </fo:table-row>
         </fo:table-header>

<fo:table-body>

<fo:table-row>
<fo:table-cell padding="0.097cm" border-top="none" border="0.002cm solid #000000">
<fo:block>
<fo:block color="#000000" font-family="sans-serif" font-size="12pt" font-weight="bold">
data
</fo:block>
</fo:block>
</fo:table-cell>
</fo:table-row>


<!-- insert here the previous <fo:table-row> 60 times -->


</fo:table-body> </fo:table> </fo:flow> </fo:page-sequence> </fo:root>


I can't see what is wrong in this code.


But look at the text data; it is embedded into two nested blocks :
<fo:block>
<fo:block color="#000000" font-family="sans-serif" font-size="12pt" font-weight="bold">
data
</fo:block>
</fo:block>


If I get rid of this extra block (the outer one, which comes from a complex XSLT algorithm), the problem disappears.

My Question : before posting a bug report to Apache/FOP, I would be pleased if somebody could tell me if it is really a bug, or if I have missed something in the XSL-FO spec.



Regards -- Ph D


== Philippe Drix ___________ __| OBJECTIVA |___________________ http://www.objectiva.fr 21-23, rue Aristide Briand - 92170 Vanves tel : +33 1 47 36 60 30 cel : 06 74 78 34 97 fax : +33 1 47 36 61 93



XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Current Thread