IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[XSL-FO] ajouter une page blanche avant nouveau chapitre, si nécessaire


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre averti Avatar de titouille
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    353
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 353
    Points : 356
    Points
    356
    Par défaut [XSL-FO] ajouter une page blanche avant nouveau chapitre, si nécessaire
    Bonjour à tous !!!

    ça fait un petit moment que je me démène pour trouver une solution, mais pour l'instant, nada...

    Je suis en train de générer un catalogue. Ce dernier contient différents chapitres. Chaque chapitre à une page d'entête, et est suivi d'une page blanche. Chaque page d'entête est placé dans une "page-sequence", identique pour tous.
    La page d'entête de chapitre se doit de commencer sur une page impaire, et d'être suivie d'une page blanche. Pour ce faire, la propriété "initial-page-number" de chaque node "page-sequence" est valorisée à 1, et il y a un "break-after='page'" pour créer une page blanche juste après.


    Ok, jusqu'ici, tout va bien. Maintenant, le problème est le suivant :*je prend comme exemple les chapitres 1 et 2. Dans mon chapitre 1, je ne sais pas exactement le nombre de pages qui contiennent du texte... il se peut que ça soit 10 pages, il se peut que ça soit 11 pages... terminé sur pair ou impair, je n'en sais rien.
    Et c'est là que se situe mon problème... Sachant que ma page d'entête de section commence sur une page impaire (initial-page-number='1'), si le chapitre précédent se termine sur une page paire (admettons 22), la page d'entête va commencer sur la page impaire suivante (donc 23). Au contraire, si le chapitre précédent se termine sur une page impaire (admettons 21), alors la page d'entête doit commencer sur la page impaire suivante (la 23 toujours). Et entre la 21 et la 23, il doit bien y avoir la 22, qui devra être une page blanche. Mon second problème, c'est que les pages de texte ont un layout particulier avec du contenu statique. Si je mets un break-after='odd-page' sur la dernière page du chapitre, il va me rajouter une page qui va afficher le contenu statique, même si le contenu dynamique n'existe pas...

    J'ai testé de mettre un break-before='odd-page' sur l'entête de section, mais il me rajoute 2 pages blanches lorsque la dernière du chapitre précédent est paire.
    J'ai testé le break-after sur la dernière page du chapitre, mais à ce moment là, comme expliqué ci-dessus, le contenu statique est affiché sur la page...

    Bref... C'est problématique pour moi, et je ne vois pas trop comment m'y prendre pour ajouter une page blanche uniquement dans certaines conditions. Si une âme charitable pouvait m'orienter ça serait très sympathique de sa part :-)


    D'avance merci pour les suggestions.


    Cordialement.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 120
    Points : 56
    Points
    56
    Par défaut
    j'avais une problématique un peu comme ça mais je l'ai résolu en mettant ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <fo:page-sequence-master master-name="PSM.chapitre">
    <fo:repeatable-page-master-alternatives>
    <fo:conditional-page-master-reference master-reference="SPM.note" odd-or-even="even" page-position="last" blank-or-not-blank="blank"/>
    <fo:conditional-page-master-reference master-reference="SPM.d" odd-or-even="odd" />
    <fo:conditional-page-master-reference master-reference="SPM.g" odd-or-even="even"/>
    </fo:repeatable-page-master-alternatives>
    </fo:page-sequence-master>
    Avec ce code j'arrive à ajouter si nécessaire une page de note entre deux chapitre pour que deuxième chapitre commence tjr à droite.
    j'espère que ça peut t'aider

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/05/2009, 00h10
  2. Réponses: 7
    Dernier message: 15/05/2007, 12h05
  3. CR10 : insérer une page blanche sur les ruptures pages paire
    Par speed034 dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 07/09/2005, 18h09
  4. Internet Explorer m'affiche une page blanche
    Par poof65 dans le forum IE
    Réponses: 10
    Dernier message: 15/08/2005, 22h50
  5. [CR] Avoir seulement une page blanche qd la base est vide???
    Par littleChick dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 13/08/2002, 18h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo