This is possible with a bit of inovation.
Thanks to the support of markers and svg.
The only problem is that the message will appear on all pages except the
last page, unless someone knows how to solve this.

The idea is to put the message in the static area and also have a marker
that is placed in the same position as the message. The marker contents
simply has an svg rect that is white so it hides the message.

Find the examples below.

Also note that I noticed a bug with the markers, the first problem is that
it doesn't like it if there is white space before the marker (so it thinks
it is not the first child in the block) and the second problem is that an
npe results from the first error due to the log being null, my fault.

--------------
<?xml version="1.0" encoding="UTF-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format";>
  <fo:layout-master-set>
    <fo:simple-page-master
  margin-right="1.5cm"
  margin-left="1.5cm"
  margin-bottom="2cm"
  margin-top="1cm"
  page-width="21cm"
  page-height="29.7cm"
  master-name="first">
      <fo:region-before extent="1cm"/>
      <fo:region-body margin-top="1cm"/>
      <fo:region-after extent="1.5cm"/>
    </fo:simple-page-master>
  </fo:layout-master-set>

  <fo:page-sequence master-name="first">
    <fo:static-content flow-name="xsl-region-before">
<fo:block-container height="1cm" width="15cm" top="0cm" left="0cm"
position="absolute">
    <fo:block>
WARNING THIS IS NOT THE LAST PAGE  <fo:page-number-citation
ref-id="end-of-document"/>
      </fo:block>
</fo:block-container>
<fo:block-container height="1cm" width="15cm" top="0cm" left="0cm"
position="absolute">
    <fo:block>
      <fo:retrieve-marker retrieve-class-name="term"
      retrieve-boundary="page"
      retrieve-position="last-ending-within-page"/>
      </fo:block>
</fo:block-container>
    </fo:static-content>

    <fo:static-content flow-name="xsl-region-after">
    <fo:block text-align="start"
      font-size="10pt" font-family="serif" line-height="1em + 2pt">
      Page (<fo:page-number/> / <fo:page-number-citation
ref-id="end-of-document"/>)
      </fo:block>
    </fo:static-content>

    <fo:flow flow-name="xsl-region-body">

  <fo:block text-align="start" font-size="12pt" font-family="sans-serif">
flow stuff
  </fo:block>

<fo:block id="end-of-document"><fo:marker
    marker-class-name="term">
<fo:instream-foreign-object>
<svg xmlns="http://www.w3.org/2000/svg"; width="15cm" height="1cm"
xml:space="preserve">
     <rect style="fill:white;stroke:white" x="0" y="0" width="15cm"
height="1cm"/>
</svg>
</fo:instream-foreign-object>
</fo:marker>
  </fo:block>

    </fo:flow>
  </fo:page-sequence>
</fo:root>


----------------

add this after first block in flow to get two pages

  <fo:block break-before="page" text-align="start" font-size="12pt"
font-family="sans-serif">
flow stuff
  </fo:block>



On Wed, 19 Sep 2001 15:51:20 [EMAIL PROTECTED] wrote:
> Hi, 
> 
> perhaps someone have a response to my problem:
> 
> On top of the first page I would like to make a warning output (e.g.
> "This
> document contains 10 pages!"), but only if the document has more than one
> page. If the document has exactly one page, no warning should appear. Is
> this possible ?
> 
> I have try something like this:
> 
>     <xsl:param name="PAGES"><fo:page-number-citation
> ref-id="end-of-document"/></xsl:param>
> 
>     <xsl:if test="$PAGES>1">
>     <!-- or <xsl:if test="$PAGES &gt; 1"> , but no more success --> 
>         <fo:block>
>             This document contains <fo:page-number-citation
> ref-id="end-of-document"/> pages!
>         </fo:block>
>     </xsl:if>
> 
>     [... ]
> 
>     <fo:block id="end-of-document" />
> 
> but this does't work.
> 
> Greetings
> Viktor Keimes

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to