J'utilise des marqueurs XSL-FO pour générer des têtes de chapitre, et j'ai du mal à récupérer le titre du livre. J'ai trouvé une solution de contournement, mais je me suis dit qu'il devait y avoir une solution plus élégante. Comme le titre du livre n'apparaît sous forme de texte qu'au début du livre, mon marqueur ne se trouve pas dans la même séquence de pages que mon contenu statique. Existe-t-il un mécanisme permettant de récupérer un marqueur hors séquence de pages ?
J'utilise XSLT Formatter V 4.3 pour ma génération de PDF, mais je n'y suis pas attaché.
Un exemple XML très simplifié :
<book>
<bktitle>Alice in Wonderland</bktitle>
<chapter>
<chaptitle>Chapter 1</chaptitle>
<para>This is the story of Alice in Wonderland.</para>
</chapter>
</book>
Extraits du XSL-FO :
<fo:page-sequence master-reference="fm">
<fo:title>Alice in Wonderland</fo:title>
<fo:flow flow-name="xsl-region-body">
<fo:block font-variant="small-caps">
<fo:marker marker-class-name="book">Alice in Wonderland</fo:marker>Alice in Wonderland</fo:block>
</fo:flow>
</fo:page-sequence>
<fo:page-sequence master-reference="body">
<fo:title>Chapter 1</fo:title>
<fo:static-content flow-name="header">
<fo:block><fo:retrieve-marker retrieve-class-name="book"/></fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block font-variant="small-caps">
<fo:marker marker-class-name="chapter">Chapter 1</fo:marker>Chapter 1</fo:block>
<fo:block>This is the story of Alice in Wonderland.</fo:block>
</fo:flow>
</fo:page-sequence>