- From: Mike Haarman <mhaarman@infinitecampus.org>
- Date: Wed, 11 Sep 2002 11:10:11 -0500
- To: <www-xsl-fo@w3.org>, "Kuylen Kim" <kku@skynet.be>
> >If you know in advance or can calculate via count() of records, how many > >pages you will be building, you can set your table in a wrapper table which > >controls the border and spans a number of rows sufficient to fill that > >number of pages' body regions. > > Indeed, this could be done, but then I loose some flexibility. For example, > if later on I want to change the font-size......I can start calculating > again ;) > Yes, quite so, but I am unaware of another means of accomplishing the feat. You can get around this by parameterizing the page values and font settings and establishing a variable to hold the number of lines required to toss a page: <xsl:variable name="pageDepthByRows" select="$bodyDepth div $lineHeight"/> In general, FO are insufficiently aware of themselves to be a truly functional typesetting system. Such traction as is available is usually to be found in moving as much information about layout as feasible forward into the XSLT processing pass. This has drawbacks, of course. A most useful set of FO extensions would include functions returning: a) depth within page, region and block at current baseline b) horizontal position vis margins, borders, padding c) the measure of a set of glyphs at given size d) state of various properties (line-height, font size and weight, indents, etc.) These features would help minimize the necessity of layout information existing in the logical layer. Mike
Received on Wednesday, 11 September 2002 12:16:28 UTC