xmlgraphics-fop-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From asitha w <int...@gmail.com>
Subject Problem with keep-with-next="always" and keep-with-previous="always" fop 0.20.5
Date Wed, 07 Jul 2010 10:36:58 GMT
Hi every one, I’m facing a problem with keep-with-next="always" and
keep-with-previous="always" properties

The fop version that I’m dealing with is 0.20.5



The problem:

Whenever table contains table header* and if a row contains data that does
not fit to a single page, and if this row is added to a keep-with-next list
or a keep-with-previous, the table get corrupted. Eg: the whole table get
printed in a single page overlapping the footer.



EG

 _________________________________

|   TABLE HEADER                  |

|_________________________________|

|row 1 - keep-with-next="always"  |

|_________________________________|

|row 2 - keep-with-next="always"  |

|_________________________________|

|row 3 - keep-with-next="always"  |

|_________________________________|

|row 4 - keep-with-next="always"  |

|_________________________________|





Seems that when this is the case. all rows are added to a single array list
and finally dropped to the page, and when one row contains a row which is
larger than the page (eg row 2). It creates a one single page overflowing
the page footer to the very end of the page.



And if we disconnect the keep with array. Eg remove keep-with-next from the
 row 1, all works as expected!



It seems that, if the first row of the table is joined with a keep-with list
and if this list contains larger than page row this error will come. Seems
to be that one row must be laid solidly on the page in order to keep-with
larger than page rows to be work.



Did anyone else faced the same when using fop 0.20.5 ?

Can someone point me where in fop code should I look for calculating and
splitting according to the remaining page height vs. largest cell height?

(org.apache.fop.fo.flow. TableRow. Layout ?)



What I want to do is, check if the remaining height is not enough move to
the next page. Print as much as possible then *continue to the next. Whats
happening is it just move to the next page and dump all the content in the
next page.



Thanks in advance

Asitha.

Mime
View raw message