Re: [xsl] 'space-after' combined with 'break-after="page"' generates blank pages

Subject: Re: [xsl] 'space-after' combined with 'break-after="page"' generates blank pages
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxx>
Date: Fri, 28 Jun 2013 11:57:31 -0400
Nancy,

I can't easily determine the cause of the problem from looking at your
code (maybe someone else can), but I can confirm that you are
expecting the correct behavior from space-after; it shouldn't by
itself (under normal conditions) make a page break.

Faced with your issue, I'd debug it by removing any settings that
might reasonably be implicated -- reduce @space-after to 0pt, remove
the space-after and space-before conditionality, etc., reducing the
code to the point where no page breaks are introduced. Then build them
back up again one at a time (or in small controllable sets) to
determine who's the offender.

In particular, that space-before.conditionality="retain" on the first
block inside the table looks suspect to me.

Cheers, Wendell


On Fri, Jun 28, 2013 at 9:26 AM, Nancy <nancylph@xxxxxxxxx> wrote:
> Hi,
>
> I'm having a problem (using XSL 2.0) with a table following a figure.
> I have the XSL mapped so that the figure is set in an <fo:block> with
> space-after="6pt".
>
> Then, the table is set to start with a page break.
>
> However, I'm ending up with an extra page break after the figure,
> before the table's page break, thereby creating a blank page in the
> middle of the document.  The code in the [topic].fo file is as follows
> (first chunk is the figure, second chunk is the beginning of the
> table):
>
>
> <fo:block id="unique_7_Connect_42_A63763" space-after="6pt" space-before="10pt">
> <fo:block>
> <fo:block font-size="10pt" font-style="normal" font-weight="bold"
> keep-with-next.within-column="always" line-height="12pt"
> space-after="8pt" space-before="10pt" start-indent="0pt"
> line-height-shift-adjustment="disregard-shifts" font-family="Frutiger
> 55 Roman,Symbol,ZapfDingbats,Arial Unicode MS">Figure 12: Example
>              Temperature Test Point Location
> </fo:block>
> <fo:inline id="unique_7_Connect_42_image_155C82608E044BCB9F2B7291DBBC5A16"><fo:external-graphic
> content-width="29pc"
> src="url(file:/D:/DITA_OUTPUT/temp/temp127245/12x12_5-tc-measure-point.svg)"/></fo:inline>
> </fo:block>
> </fo:block>
>
> <fo:block break-after="page"/>
> <fo:block xmlns:rx="http://www.renderx.com/XSL/Extensions"; span="all"
> start-indent="0pt">
> <fo:block/>
> <fo:block id="unique_7_Connect_42_A10022" space-after="12pt"
> space-before="6pt"><fo:block start-indent="0pt">
> <fo:table width="100%">
> <fo:table-header end-indent="0pt" start-indent="0pt">
> <fo:table-row>
> <fo:table-cell>
> <fo:block font-size="10pt" font-style="normal" font-weight="bold"
> keep-with-next.within-column="always" line-height="12pt"
> space-after="8pt" space-after.conditionality="retain"
> space-before="10pt" space-before.conditionality="retain"
> start-indent="0pt" line-height-shift-adjustment="disregard-shifts"
> font-family="Frutiger 55 Roman,Symbol,ZapfDingbats,Arial Unicode
> MS">Table 7:  Thermal Impedance
> <fo:retrieve-table-marker retrieve-boundary-within-table="table"
> retrieve-class-name="continued"
> retrieve-position="first-including-carryover"/></fo:block>
>      ...
>
> I had thought that 'space-after' created a space after the object on
> the same page, but it's as though the space-after is going on to the
> next page, and then the table starts on the page after that.
> Otherwise, it seems as if the break-after="page" is putting in a page
> break even though the new table object was already creating a page
> break.
>
> Both Antenna House and RenderX render it the same way, so I'm assuming
> it's my coding rather than any processor problem.
>
> What it is I'm missing here?
>
> Thanks,
> Nancy Harrison
>
> --
> _____________
> Nancy Harrison
> Infobridge Solutions
> nharrison@xxxxxxxxxxxxxxxxxxxxxxxx
>



-- 
Wendell Piez | http://www.wendellpiez.com
XML | XSLT | electronic publishing
Eat Your Vegetables
_____oo_________o_o___ooooo____ooooooo_^

Current Thread