[
https://issues.apache.org/jira/browse/FOP-1840?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13530458#comment-13530458
]
Luis Bernardo commented on FOP-1840:
------------------------------------
you need to have the <fo:block span="all" /> for the balancing algorithm to
kick in (you can check that without it computeDemerits() never gets called).
without it means you don't want balancing.
regarding the example balance-4.fo, I agree that at first is puzzling but upon
close inspection one sees that although there are span="all" blocks they are
not in the right place and the balancing algorithm is not called at all for the
content that matters. the result is the same as not having them at all. see
attached edited balance-4-*.fo.xml files.
> [PATCH] Region-Body Column balancing incorrect if content is table with header
> ------------------------------------------------------------------------------
>
> Key: FOP-1840
> URL: https://issues.apache.org/jira/browse/FOP-1840
> Project: Fop
> Issue Type: Improvement
> Components: page-master/layout
> Affects Versions: 1.0
> Environment: Operating System: All
> Platform: PC
> Reporter: a.kovacs
> Assignee: fop-dev
> Attachments: b49801_dirty_hack.patch, b49801.fo,
> balance-2-expected.pdf, balance-2.fo, balance-2.pdf, balance-3.fo.xml,
> balance-4.fo.xml, balance-4.pdf, balancing-fos.zip, fix.diff, fo.xml,
> patch.diff, test-after.pdf, test-before.pdf
>
>
> To reproduce bug please do the following:
> Use:
> <fo:region-body region-name="PageBody" column-count="2" />
> Fill the region-body with content like :
> <fo:block span="none" > ...(content is table with header) ..
> <fo:block span="all"> ... (one line (summary)) ..
> If the content is made of normal blocks the columns are balanced before the
> span="all" summary line.
> like:
> 123456 456789
> 234567 567890
> 345678 678901
> Summary: 1234567890
> If the content is a table without headers the columns are balanced correct.
> like:
> 123456 456789
> 234567 567890
> 345678 678901
> Summary: 1234567890
> If the content is a table with header the columns are not balanced correct.
> (the right one is shorter.)
> Header Header
> 123456 567890
> 234567 678901
> 345678
> 456789
> Summary: 1234567890
> The "computeDemerits()" algorithm is wrong in class
> "BalancingColumnBreakingAlgorithm".
> The "fullLen" value is to short. Exactly the replicated header width is
> missing. In the "par" list the header is contained only once although the
> header is displayed in every column. (in the example twice)
> Solution could be to place the header as many times in the "par" list as many
> columns exist, or to count the existing one header as many times as needed.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira