xsl, xsl-fo, running headers

Running Headers

1. Running headers
2. Running Header not working (markers)

1.

Running headers

Nikolai grigoriev

> On my bank statement, I have a table of
> payments and withdrawals.
>
> At the top of each page I see a running
> balance to that date.

This is only possible with the new draft, using fo:marker/fo:retrieve-marker. You assign a fo:marker that contains balance accumulated so far to every row in the table:

<lt;fo:marker marker-class-name="running-balance>May 26: 1000 pounds </fo:marker>

and than use fo:retrieve-marker to paste the contents of the first marker into the header:

<fo:static-content flow-name="xsl-region-before">
  <fo:block font="bold 10pt Helvetica">
    Balance of
    <fo:retrieve-marker retrieve-marker-name="running-balance"
                        retrieve-boundary="page"
                        retrieve-position="first-starting-within-page"/>
  </fo:block>
</fo:static-content>

This works only if the content to put into the running header depends only on the position of a single page break within the file. More complex cases like producing a running subtotal for every page, or enumerating all entries on a page of an enciclopaedia, are (seemingly) still impossible to construct within the current draft (am I right?)

2.

Running Header not working (markers)

Ken Holman


>I have a "running header" contained in the "xsl-region-before".
>...
>              <fo:retrieve-marker retrieve-class-name="sect-head"
>  retrieve-position="first-starting-within-page"
>                                  retrieve-boundary="page" />
>...
>this works fine, and I have a new section title appearing in the page
>header
>whenever section changes. But if the section contains more than 1 page,
>the section
>title will not be repeated on the consecutive pages.

Because of the retrieve-boundary ... use a value of "page-sequence" or "document" instead of page. The default of "page-sequence" would have given you what you needed had you not changed it explicitly to only look for markers found on the page itself.