https://issues.apache.org/bugzilla/show_bug.cgi?id=49801

--- Comment #4 from Andreas L. Delmelle <adelme...@apache.org> 2011-02-04 
13:18:28 EST ---
Created an attachment (id=26606)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=26606)
altered test case

The fullLen in computeDemerits() is indeed off, because
ElementListUtils.calcContentLength() naively sums box and glue lengths. It just
counts the header box once, and does not contain any logic to take into account
possible special behavior of the penalties. Adding the header box multiple
times to the list will not immediately solve the issue.
Question that needs to be answered in order to do that: how many times would it
need to be duplicated? Answer: the number of times the table is broken plus 1.
But we don't know that number, at that point... That is precisely the reason
the table-layout code only adds the box once.

See also the attached altered test case for a slightly more complicated
example. The first and last table's headers only need to be counted once, while
the header and footer of the second table need to be counted --how many times?
The algorithm currently only breaks once.

Seems like the chicken and the egg... :-/

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

Reply via email to