On Tue, Jul 03 2007 08:38:15 +0100, info@xxxxxxxxxx wrote:
...
I declared a local variable where I count the lines and convert them
to [mm] to achieve the height of a certain <section> which includes
several elements.
I know that the print space is 180mm high. Now I want to create a loop
where I count the height of <section> until it is smaller or even than
180mm and insert a page-break afterwards.
The next step should be to check if the rest of the space is 20mm,
40mm, 60mm and so on.
This is what I have written so far.
<xsl:choose>
<xsl:when test="180 - sum($gesamt) = 20">
<xsl:apply-templates/>
</xsl:when>
<xsl:when test="180 - sum($gesamt) = 40">
<xsl:apply-templates/>
</xsl:when>
<xsl:when test="180 - sum($gesamt) = 60">
<xsl:apply-templates/>
</xsl:when>
<xsl:when test="180 - sum($gesamt) = 90">
<xsl:apply-templates/>
</xsl:when>
</xsl:choose>
I think after the page-break the variable $gesamt should be "zero". Is
this possible with ...select="0"?
Does anyone outthere have a hint for me how to solve this problem? If
I use the code above I only receive one block per page.
What you are attempting is not clear to me, at least. It may help if
you can post a bit more of your solution.
Since you use xsl:apply-templates each time, why not just test that
sum($gesamt) <= 180?
I don't know if you expect the variable $gesamt to change, but it won't
be updated once assigned.
What sort of output are you producing? XSL-FO?
Regards,
Tony Graham.
======================================================================
Tony.Graham@xxxxxxxxxxxxxxxxxxxxxx http://www.menteithconsulting.com
Menteith Consulting Ltd Registered in Ireland - No. 428599
Registered Office: 13 Kelly's Bay Beach, Skerries, Co. Dublin, Ireland
======================================================================