Re: Spec drives me crazy: column-count and blocks with mixed spans
Peter, thanks for the answer. I have always *assumed* that column balancing is implied whenever top-level block children of a flow have different span attributes, because it's the only approach that makes sense. If your second scenario were intended, then the 'span=all' block could not share the page with the previous 'span=none' blocks unless there were less than one column's worth of text. I.e. Yes, that sure makes sense, but it's not really anywhere in the spec, is it? You can still argue the spec makes sense without column balancing - at least you can use span=all blocks before span=none blocks. That leaves open the question of whether, on the last page of a page-sequence, the columns should be balanced. My intuitive approach would be to balance always. However, there seems to be another attribute required for column spill behaviour, especially for the last page of a page-sequence. I assume you really mean the end of the flow (or page-sequence) here, right? last page could also be something like: ABC DDD DDD or even ABC DDD EFG Personally, I'd prefer no balancing for the end of the flow. Reason: For columns that contain mostly text, that looks awfully strange if you can't have at least 2 paragraphs in each column. Since the default behaviour really seems to be unspecified, and since there's no property to specify it, I believe overall less harm is done if you don't balance at the end of the flow. This is because then you can always trick the renderer into balancing by making the end not the end. Just put an fo:block with invisible content and span=all at the end. Of course, a property for that would be nice, but at least then you can have both. How about that? -- Cappelino Informationstechnologie GmbH Arnd Beißner - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Spec drives me crazy: column-count and blocks with mixed spans
From: Arnd Beißner [EMAIL PROTECTED] snip/ Since the default behaviour really seems to be unspecified, and since there's no property to specify it, I believe overall less harm is done if you don't balance at the end of the flow. This is because then you can always trick the renderer into balancing by making the end not the end. Just put an fo:block with invisible content and span=all at the end. Of course, a property for that would be nice, but at least then you can have both. this is how RenderX handle column balancing on the last page. Its off by default and if the user should need it, then they recommend putting an empty block with span=all at the end of the flow as you've suggested. _ Tired of 56k? Get a FREE BT Broadband connection http://www.msn.co.uk/specials/btbroadband - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Spec drives me crazy: column-count and blocks with mixed spans
Arnd Beißner wrote: Peter, thanks for the answer. I have always *assumed* that column balancing is implied whenever top-level block children of a flow have different span attributes, because it's the only approach that makes sense. If your second scenario were intended, then the 'span=all' block could not share the page with the previous 'span=none' blocks unless there were less than one column's worth of text. I.e. Yes, that sure makes sense, but it's not really anywhere in the spec, is it? You can still argue the spec makes sense without column balancing - at least you can use span=all blocks before span=none blocks. No, it's not specified that I can see. However, the restriction above would be highly artificial. That leaves open the question of whether, on the last page of a page-sequence, the columns should be balanced. My intuitive approach would be to balance always. However, there seems to be another attribute required for column spill behaviour, especially for the last page of a page-sequence. I assume you really mean the end of the flow (or page-sequence) here, right? Yes. There's only one flow per page-sequence. last page could also be something like: ABC DDD DDD or even ABC DDD EFG Personally, I'd prefer no balancing for the end of the flow. Reason: For columns that contain mostly text, that looks awfully strange if you can't have at least 2 paragraphs in each column. Since the default behaviour really seems to be unspecified, and since there's no property to specify it, I believe overall less harm is done if you don't balance at the end of the flow. This is because then you can always trick the renderer into balancing by making the end not the end. Just put an fo:block with invisible content and span=all at the end. Of course, a property for that would be nice, but at least then you can have both. How about that? Very sensible. I had in mind my preferred method of dynamic balancing, but even with that model, it is simple enough to undo the balancing on the last page of a sequence. Peter -- Peter B. West http://www.powerup.com.au/~pbwest/resume.html - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Spec drives me crazy: column-count and blocks with mixed spans
Arnd Beißner wrote: Hi, I just decided that I can't figure out what - according to the standard - should exactly happen if you have multiple columns in your body region and mix top-level fo:blocks of span=all with others of span=1. Perhaps one of you already found something... I can see how the span-reference-areas need to be spaced horizontally (let's assume western writing modes for simplicity). And I can see that mixing top-level fo:blocks of different spans (at least 1 and all) is allowed, though only for fo:blocks that direct children of fo:flow. In fact, none and all. But as for stacking the areas into the columns? Let's say we have scenario 3 (see below). Let's further assume that all content *could* fit on one page. But from how I read the spec, what would just happen is that first blocks are stacked into the first column until it's full. Then blocks are stacked into the next column. Let's say the second column would become about half full. Now for the following fo:block with span=all. There's no way to get a fitting area from that page - except of course if the block areas in the columns would be rearranged so that each of the columns is about half full. With FOP, this is roughly what seems to happen (not exactly, tough). But why? The spec doesn't seem to specify (or even allow) that. Any ideas? Scenarios: (always column-count=3) Scenario 1 (just blocks with span=all): ABC ABC ABC ok, no problems. Scenario 2 (block with span=all, then blocks with span=1) AAA BCD BCD clear so far. Scenario 3 (blocks with span=1, THEN 1 block with span=all Does this happen (let's assume content for the columns is able to fill about half the page): ABC ABC DDD or this? ABC ABC ABC + next page: DDD Arnd, I have always *assumed* that column balancing is implied whenever top-level block children of a flow have different span attributes, because it's the only approach that makes sense. If your second scenario were intended, then the 'span=all' block could not share the page with the previous 'span=none' blocks unless there were less than one column's worth of text. I.e. A B C DDD (Scenario none-all) This is because column spill from the first column on the page could not happen until the first column had filled. quote The main-reference-area has as its children a sequence of span-reference-areas. These are reference-area block-areas with zero border and padding, whose inline-progression-dimension is equal to that of the main-reference-area, and which are normally stacked within the main-reference-area. /quote I.e. there may be multiple span-reference-areas in a single main-reference-area, and those S-R-As may have different numbers of normal-reference-area children, depending on the column-count attribute of the region-body and the span attribute of the block children of the flow. This doesn't seem to make sense for the scenario none-all case above, unless column balancing is assumed. That leaves open the question of whether, on the last page of a page-sequence, the columns should be balanced. My intuitive approach would be to balance always. However, there seems to be another attribute required for column spill behaviour, especially for the last page of a page-sequence. Peter -- Peter B. West http://www.powerup.com.au/~pbwest/resume.html - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]
Re: Spec drives me crazy: column-count and blocks with mixed spans
Peter B. West wrote: Arnd Beißner wrote: ... Scenarios: (always column-count=3) Scenario 1 (just blocks with span=all): ABC ABC ABC ok, no problems. Scenario 2 (block with span=all, then blocks with span=1) AAA BCD BCD clear so far. Scenario 3 (blocks with span=1, THEN 1 block with span=all Does this happen (let's assume content for the columns is able to fill about half the page): ABC ABC DDD or this? ABC ABC ABC + next page: DDD ... If your second scenario were intended, (that should be, the second option of Scenario 3) then the 'span=all' block could not share the page with the previous 'span=none' blocks unless there were less than one column's worth of text. I.e. A B C DDD (Scenario none-all) Peter -- Peter B. West http://www.powerup.com.au/~pbwest/resume.html - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]