appel d'un template xsl-fo ! - XML/XSL - Programmation
Marsh Posté le 23-08-2008 à 10:46:06
J'avoue que je comprends pas trop ce que tu veux faire... ceci dit j'ai fait pas mal de xsl:fo...
Il faut pas essayer de tout goupiller dans un template qui va rapidement devenir monstrueux. Il faut par contre bien maîtriser les transformations xslt avant de s'attaquer à xslfo...
|
Le template racine ( "/" ) est idéal pour déclarer la mise-en-page comme tu l'as fait également. Après la déclaration on amorce la transformation en sélectionnant un élément de l'xml. Dans le template de l'élément on peut ensuite détailler...
|
Pour bien saisir la philosophie fo il ne faut pas hésiter à consulter les nombreux exemples disponible sur le net et de commencer avec des transformations simples. La syntaxe fo est assez obscure et 'verbeuse' ce qui la rend moins évidente à maîtriser.
Je t'apprends sans doute rien en disant qu'il est possible de convertir ensuite le fichier fo en pdf avec FOP...
Marsh Posté le 18-08-2008 à 15:08:50
bonjour...
je cherche comment appeler le templates suivant dans un endroit precis :
<?xml version="1.0"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:s="http://www.stylusstudio.com/xquery">
<xsl:template match="/">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="default-page" page-height="11in" page-width="8.5in" margin-left="0.1in" margin-right="0.013in" margin-top="0.01in" margin-bottom="0.1in">
<fo:region-body/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="default-page">
<fo:flow flow-name="xsl-region-body">
"je voudrais appeler ce templates dans cet endroit"
<fo:block>
<fo:block>
<fo:block>
<fo:inline font-size="16pt" font-weight="bold">
<xsl:text>Liste des clients :</xsl:text>
</fo:inline>
</fo:block>
<fo:block>
<xsl:text> </xsl:text>
</fo:block>
<fo:block>
<xsl:for-each select="/file/personne[NATURE=4]">
<xsl:value-of select="PERS_LIB"/>
</xsl:for-each>
<fo:block>
<xsl:text> </xsl:text>
</fo:block>
</fo:block>
</fo:block>
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
</xsl:template>
</xsl:stylesheet>
le but et de concevoir plusieurs feuilles de styles pour par la suite les assembler dans une seule feuille de style.
merci bien.