- From: Arved Sandstrom <asandstrom@accesswave.ca>
- Date: Fri, 22 Mar 2002 23:24:20 -0500 (EST)
- To: "'Www-Xsl-Fo" <www-xsl-fo@w3.org>
Hi, all I've got a question related to keeps. Let's say that I have 2 simple-page-masters defined: one called "small", with a fairly small region-body, and one called "large", with a larger region-body. The flow content looks like <fo:block break-after="page">NOT MUCH STUFF</fo:block> <fo:block keep-together.within-page="1"> .... QUITE A LOT OF STUFF .... </fo:block> The fo:flow, for sake of simplicity, contains these only. Simple-page-master (SPM) "small" cannot accommodate the second block, but SPM "large" can. Furthermore, the containing page-sequence maps to <fo:page-sequence-master master-name="psm"> <fo:single-page-master-reference master-reference="small"/> <fo:single-page-master-reference master-reference="small"/> <fo:repeatable-page-master-reference master-reference="large"/> </fo:page-sequence-master> With this you can probably already see where I am going. :-) Now, without casting aspersions on RenderX, I used the latest XEP to test this out, and I see an initial page, laid out using simple-page-master (SPM) "small", containing the areas generated by the first block, and a second page laid out using SPM "large", containing the areas generated by the first block, as a result. _I_ expect to see a SPM "small", with content from block 1, a blank page using SPM "small", and a third page using SPM "large", that contains (and is designed to contain) all the areas generated by block 2. The reason I expect to see this is because, number one, the spec (in Section 6.4.7) states that "A page-sequence satisfies the constraint determined by an fo:page-sequence-master if (a) it can be partitioned into a sequence of sub-sequences of pages that map one-to-one to an initial sub-sequence of the sequence of sub-sequence-specifiers that are the children of the fo:page-sequence-master and, (b) for each sub-sequence of pages in the partition, that sub-sequence satisfies the constraints of the corresponding sub-sequence specifier. The sequence of sub-sequences of pages can be shorter than the sequence of sub-sequence-specifiers." Clause (a) indicates that we MUST make use of SPM "small" exactly twice: one-to-one mapping to an _initial_ subsequence. Or we don't make use of the page-sequence-master at all; I figure a reasonable fallback is to switch to SPM "large" for all pages but I don't know one way or the other. The Recommendation section on keeps also makes it clear that the keep condition on block 2 MUST be satisfied - there are no breaks, or stronger keeps, that conflict. And it can be satisfied by starting block 2 on page 3. I submit that my expected result is the logical conclusion of spec constraints, as jarring as it may be to have that blank page 2. Counter-arguments? Comments? Proofs that I really should be asleep by now? :-) Thanks. AHS ______________________________ Arved Sandstrom Sr Software Developer Platform Products Group Halifax R&D Office Hummingbird Ltd
Received on Saturday, 23 March 2002 07:12:54 UTC