xsl-list
[Top] [All Lists]

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

2003-11-16 12:24:58
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



<Prev in Thread] Current Thread [Next in Thread>