Here is a complete example I made to test fo:marker :
XML file :
<?xml version="1.0" encoding="iso-8859-1"?>
<document>
<page>Page 1</page>
<page>Page 2</page>
<page>Page 3</page>
</document>
XSL file :
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:svg="http://www.w3.org/2000/svg">
<xsl:output method="xml" version="1.0" encoding="ISO-8859-1" indent="yes"/>
<xsl:attribute-set name="page.dimensions">
<xsl:attribute name="page-width">297mm</xsl:attribute>
<xsl:attribute name="page-height">210mm</xsl:attribute>
<xsl:attribute name="margin-top">1cm</xsl:attribute>
<xsl:attribute name="margin-bottom">1cm</xsl:attribute>
<xsl:attribute name="margin-left">1cm</xsl:attribute>
<xsl:attribute name="margin-right">1cm</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="region.header">
<xsl:attribute name="extent">3cm</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="region.body">
<xsl:attribute name="margin-top">3cm</xsl:attribute>
<xsl:attribute name="margin-bottom">3cm</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="region.footer">
<xsl:attribute name="extent">2cm</xsl:attribute>
<xsl:attribute name="background-color">#DDDDDD</xsl:attribute>
</xsl:attribute-set>
<xsl:template match="/">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<!-- ============================================================
-->
<fo:simple-page-master master-name="model"
xsl:use-attribute-sets="page.dimensions">
<fo:region-before xsl:use-attribute-sets="region.header"/>
<fo:region-body xsl:use-attribute-sets="region.body"/>
<fo:region-after xsl:use-attribute-sets="region.footer"/>
</fo:simple-page-master>
<!-- ============================================================
-->
</fo:layout-master-set>
<!-- ============================================================ -->
<fo:page-sequence master-reference="model">
<!-- ============================================================
-->
<fo:static-content flow-name="xsl-region-before">
<fo:block text-align="start">Page header</fo:block>
</fo:static-content>
<!-- ============================================================
-->
<fo:static-content flow-name="xsl-region-after">
<fo:block>
<fo:retrieve-marker retrieve-class-name="footer"
retrieve-position="last-ending-within-page"
retrieve-boundary="page-sequence"/>
</fo:block>
</fo:static-content>
<!-- ============================================================
-->
<fo:flow flow-name="xsl-region-body">
<xsl:apply-templates/>
<xsl:call-template name="svg.example"/>
<xsl:call-template name="footer.last"/>
</fo:flow>
</fo:page-sequence>
<!-- ============================================================ -->
</fo:root>
</xsl:template>
<xsl:template match="page">
<fo:block font-size="16pt"
break-before="page">
<xsl:value-of select="."/>
<fo:marker marker-class-name="footer">
<xsl:call-template name="footer.standard"/>
</fo:marker>
</fo:block>
</xsl:template>
<xsl:template name="footer.standard">
<fo:block>General footer</fo:block>
<fo:block text-align="center">
Page <fo:page-number/>
of <fo:page-number-citation ref-id="last-page"/>
</fo:block>
</xsl:template>
<xsl:template name="footer.last">
<fo:block>
<fo:marker marker-class-name="footer">
<fo:block>Footer of the last page</fo:block>
<fo:block text-align="center">
Page <fo:page-number/>
of <fo:page-number-citation ref-id="last-page"/>
===> This is the last.
</fo:block>
</fo:marker>
<fo:block id="last-page"/>
</fo:block>
</xsl:template>
<xsl:template name="svg.example">
<fo:block>
<fo:instream-foreign-object>
<svg:svg width="60" height="40" xml:space="preserve">
<svg:g style="fill:red;stroke:black">
<svg:rect x="0" y="0" width="40" height="40"/>
</svg:g>
</svg:svg>
</fo:instream-foreign-object>
</fo:block>
<fo:block>
<fo:instream-foreign-object>
<svg:svg width="100pt" height="100pt">
<svg:circle cx="50pt" cy="50pt" r="30pt" style="fill:blue;"/>
</svg:svg>
</fo:instream-foreign-object>
<fo:inline>
<fo:instream-foreign-object>
<svg:svg width="150pt" height="150pt">
<svg:g style="fill:green;stroke:black">
<svg:rect x="20pt" y="20pt" width="100pt" height="100pt"/>
</svg:g>
<svg:line x1="20pt" y1="20pt" x2="120pt" y2="120pt"/>
<svg:line x1="120pt" y1="20pt" x2="20pt" y2="120pt"/>
<svg:text x="20pt" y="150pt">Hello SVG!</svg:text>
</svg:svg>
</fo:instream-foreign-object>
</fo:inline>
</fo:block>
</xsl:template>
</xsl:stylesheet>
Hope this help.
Regards
A. ROY
----- Original Message -----
From: <[EMAIL PROTECTED]>
Date: Mon, 30 Aug 2004 10:20:00 +0200
To: <[EMAIL PROTECTED]>
Subject: AW: Create special Last Page
> Hi,
>
> i used footnote as Britta Bargel has described. I canÂt use this workaround,
> because the footer must always positioned at the end of the page.
> My content is flexilble, so i never know the position of my last entry and
> therefore if there is enough space on the bottom for the footer text. As i
> use page-break as Britta said, it is possible that the footer text will be
> print on next page without any content.
>
> Could you tell me please a little bit more about the workaround with markers?
>
> Regards
> Martin
>
> -----UrsprÃngliche Nachricht-----
> Von: J.Pietschmann [mailto:[EMAIL PROTECTED]
> Gesendet: Freitag, 27. August 2004 21:08
> An: [EMAIL PROTECTED]
> Betreff: Re: Create special Last Page
>
>
> [EMAIL PROTECTED] wrote:
> > i need to create a special last page which is different to the other ones.
> > So i want to use page-position="last" and page-position="any" within the
> > conditional-page-master.
> > Now i read in the list that page-position="last" is not really implemented.
> >
> > Has anyone a workaround for this issue?
> > How is it possible to create a separate last page?
>
> There are several workarounds, depending on the actual
> requirements. A specific footer can be implemented using
> markers or a footnote.
>
> J.Pietschmann
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
--
___________________________________________________________
Sign-up for Ads Free at Mail.com
http://promo.mail.com/adsfreejump.htm
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]