🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fr.comp.text.xml
Article #9044

Re: pieds de page

#9044
From: Thomas Broyer
Date: Tue, 05 Jun 2001 23:02
78 lines
4305 bytes
In <3B1D5A82.2907887B@caramail.com>, JC wrote:

> Bonjour !
> Je suis en train de r�diger un livre, j'ai un petit probl�me de
> formatage de mon pied de page, pour les num�ros de page. Je voudrais
> avoir le num�ro de la page de gauche en bas � gauche, celui e la page de
> droite en bas � droite. Normal, non.

Et c'est pas possible avec XSL-FO directement?
J'ai jet� un rapide coup d'oeil, �a semble �tre le boulot de 
fo:repeatable-page-master-alternatives, son sous-�l�ment 
fo:conditional-page-master-reference et le'attribut odd-or-even de ce 
dernier.

Donc dans ton fo:layout-master-set, tu d�finis 2 fo:simple-page-master's 
(pour les pages paires ou impaires) et (�tant suppos�s que les masters 
ci-avant ont pour master-name "paire" et "impaire") :
  <fo:repeatable-page-master-alternatives master-name="principal">
    <fo:conditional-page-master-reference master-name="paire"
        odd-or-even="odd" />
    <fo:conditional-page-master-reference master-name="impaire" />
  </fo:repeatable-page-master-alternatives>

> J'ai essay� :
>     <fo:static-content flow-name="xsl-region-after">
>       <xsl:variable name="page"><fo:page-number/></xsl:variable>

La variable page est un fragment d'arbre r�sultat (result tree fragment, 
comparable � un node-set -- la distinction dispa�tra d'ailleurs dans XSLT 
2.0) contenant le seul noeud �l�ment fo:page-number.

>       <xsl:if test="$page">

L'ensemble de noeuds n'est pas vide, donc s'�value � vrai.

>         <xsl:choose>
>           <xsl:when test="$page mod 2='0'">

pour convertir un ensemble de noeuds en nombre, on prend sa valeur 
textuelle, qu'on convertit en nombre. La valeur textuelle d'un ensemble de 
noeuds est la valeur textuelle du premier noeuds de l'ensemble dans l'ordre 
du document, donc la valeur textuelle de l'�l�ment fo:page-number. C'est un 
�l�ment vide, sa valeur textuelle est donc une cha�ne de caract�res vide.
Une cha�ne de caract�res vide se convertit en NaN, et NaN mod 2 vaut NaN, 
donc est diff�rent de 0.

>             <fo:block text-align="start" font-size="10pt">X<xsl:value-of
> select="$page"/></fo:block>
>           </xsl:when>
>           <xsl:when test="$page mod 2='1'">

NaN est diff�rent de 1

>             <fo:block text-align="end" font-size="10pt">X<xsl:value-of
> select="$page"/></fo:block>
>           </xsl:when>
>         </xsl:choose>

Il n'y a pas d'alternative par d�faut, donc aucun r�sultat.

>       </xsl:if>
>     </fo:static-content>
> Mais �a n'affiche strictement rien : ma variable "page" ne contient rien
> ! SI j'affiche directement le page-number, il s'affiche.

Il faut bien diff�rencier toutes les phases :
 1. transformation. seuls les �l�ments dans l'espace de noms
    http://www.w3.org/1999/XSL/Transform ont un "sens", les autres -- �
    moins d'�l�ments d'extension -- sont des �l�ments r�sultat litt�raux
    (literal result element).
 2. formattage des FO. C'est seulement ici que les �l�ments de l'espace de
    noms http://www.w3.org/1999/XSL/Format ont un "sens" et sont "�valu�s"

> Quelqu'un saurait comment r�gler ce probl�me ?

Faire les choses l� o� elles doivent �tre faites (cf. d�but du message)

Tom.
Technical Details
Message-ID: <1703271.rtZ34EBddD@ltgt.net>
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fr.usenet-edu.net!usenet-edu.net!wanadoo.fr!proxad.net!feeder2-1.proxad.net!nnrp6.proxad.net.POSTED!not-for-mail
References: <3B1D5A82.2907887B@caramail.com>

Show Full Headers
Complete Article Headers
X-Google-Language: FRENCH,ASCII
X-Google-Thread: 114f60,546f82ae6f1f769
X-Google-Attributes: gid114f60,public
X-Google-ArrivalTime: 2001-06-05 16:02:55 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!fr.usenet-edu.net!usenet-edu.net!wanadoo.fr!proxad.net!feeder2-1.proxad.net!nnrp6.proxad.net.POSTED!not-for-mail
Message-ID: <1703271.rtZ34EBddD@ltgt.net>
From: Thomas Broyer <ptittom+news@free.fr>
Subject: Re: pieds de page
Newsgroups: fr.comp.text.xml
References: <3B1D5A82.2907887B@caramail.com>
Lines: 78
Organization: </>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8Bit
Date: Tue, 05 Jun 2001 23:02:54 GMT
NNTP-Posting-Host: 193.252.183.203
X-Complaints-To: abuse@proxad.net
X-Trace: nnrp6.proxad.net 991782174 193.252.183.203 (Wed, 06 Jun 2001 01:02:54 CEST)
NNTP-Posting-Date: Wed, 06 Jun 2001 01:02:54 CEST