Keiron Liddle wrote:
> As far as I know there is never a case where a finished page should be
> redone. Once a page is complete that is it.
> Those problems should be solved during the layout of a page only and not
> considering furture pages.

Well, if widows="2" and you've laid out a block
and discover there is only one line on the new page,
what do you do? The easiest way seems to be to steal
a line from the previous page.
With an carefully crafted but admittedly esoteric
example you can have this ripple to pages before the
last page, for example consider an A4 landscape page
and a side float as high as the page on the last line
of the page which displaces the text to a small column
at the right margin. After the last line (with the
float) is shifted to the next page due to the widows
condition, the text suddenly turns into two lines,
violating the widows condition itself. Again, I admit
this is even more unlikely to happen than
page-number-citation causing an oscillating layout.

As for a more realistic example, consider
  <fo:block keep-together="3">
    <fo:block id="a" keep-together="always">
    <fo:block keep-together="5">
      <fo:block id="b" keep-together="always">
      <fo:block id="c" keep-together="always">
Suppose blocks a and b are of 1/3 page height and
c is 5/6. Because the whole construct doesn't fit
on one page, a break after a is dutifully considered.
Now, the rest still doesn't fit, and after b there's
also a break inserted. While I think it is legal to
use 3 pages, people *will* complain that a and b
aren't put on the same page.

If we are at it, a brain teaser: suppose there is a
page-sequence-master with odd numbered pages having a
larger body region than even pages, and a block with
keep-together="always" which would fit on odd pages but
not on even ones. In the flow the block starts somewhere
near the end of page one. Would it be shifted to page 3,
leaving page 2 empty, or would it start at the beginning
of page 2, with a forced break or an overflow, or
something else?


To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to