Glen,

Comments below.

Glen Mazza wrote:
--- "Peter B. West" <[EMAIL PROTECTED]> wrote:

Such a transaction has a minimum and a maximum
impact. Assuming that we must place the first line of the footnote on the
same page,


The line-area generator would pass this information
up for the decision to be made about committing the transaction to the
page, requesting a transaction with a smaller impact, or declaring the
page full, and passing the request for a new "canvas" area up the
tree to the page factory. In the latter case, the line-area
generator would subsequently iniatiate a transaction involving only the remainder
of the footnote.




Peter,

Both your writing here as well as the XSL spec
indicate that footnotes can extend on to subsequent
pages (as I guess they must be allowed to, should
someone insist on a 47-paragraph footnote).


But, "curiously" missing from the spec (AFAICT) is any
indication that it would be preferable to avoid having
that happen--and I wonder if, consequently, the
algorithms you are thinking of are not capturing that
concern.


Thinking of the traditional way footnotes appear in
books, ordinarily as the footnote grows the author
will choose to shrink the main body of text on that
page to accomodate the larger footnote. I believe
that this is almost invariably deemed preferable to
avoid the eyesore (?) of having the footnote split
onto the second page. (Am I correct here?)

Yes, it is preferable, but splitting is preferable to leaving a chunk of whitespace between the end of the text and the footnote separator. The algorithm I am proposing will accommodate all of the footnote text on the page unless the line impact + the footnote impact exceeds available space. It is then up to the page layout process to decide what to do with the line+footnote. Because we are only ever talking about one line of main text (not taking account of keeps, widows, etc) it may be better if there is only room for a single line of a multi-line footnote, to throw the text line plaus the whole of the footnote onto the next page.


Perhaps adding to the fun here, this shrinking of the
main body of text can also result in subsequent
footnote citations on the page ending up on the next
page, meaning that the size calculations for its
footnote would also need to move.  Will the algorithms
that you are thinking of take care of that?  (I hope
so--it will be a *long* time before I will understand
enough about this in order to help out!)

The main text never needs to shrink. The text and its associated footnotes have already been accommodated on the page, and the columns re-balanced. This happens after every line of main text is added. (The column "re-balancing" is a trivial operation, the point of which is to determine the whether and to what extent the new main text line impacts on the size of the main-reference-area.)


So, when a new text line + footnote is added, all that is required is to decide wheter, and to what extent, the fit onto the line. If they do, the region BPDim is reduced by main b-p-d impact + footnote b-p-d impact. Unless some condition triggers a multi-page backup and re-layout, this need never change, no matter what is subsequently added to the page.

If this does not make sense, please let me know, and I will rewrite the footnotes section until it becomes clear.

Peter
--
Peter B. West  http://www.powerup.com.au/~pbwest/resume.html


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



Reply via email to