XSL FO alignement en ligne
j'ai besoin d'aligner le texte à droite et à gauche sur la même ligne. Cela devrait être possible, mais je n'arrive pas à trouver un moyen. J'utilise Apache FOP pour convertir xml en pdf.
quelqu'un Peut-il m'aider à obtenir ce droit?
6 réponses
L'élégance n'était pas une exigence énoncée, mais cela devrait convenir:
<fo:block text-align-last="justify">
LEFT TEXT
<fo:leader leader-pattern="space" />
RIGHT TEXT
</fo:block>
Cela fonctionne en justifiant la dernière ligne de texte dans le bloc, de sorte que le texte commence à la gauche de la ligne et se termine à la droite. Le leader, qui est habituellement utilisé sur les pages de la Table des matières, s'étend pour remplir l'espace entre le texte de gauche et le texte de droite. Normalement, il est utilisé comme <fo:leader leader-pattern="dots" />
, qui produit une extension des périodes, mais dans ce cas, il fournit simplement un golfe de l'espace.
Cela va faire l'affaire:
<fo:table>
<fo:table-column />
<fo:table-column />
<fo:table-body>
<fo:table-row>
<fo:table-cell>
<fo:block>LEFT TEXT</fo:block>
</fo:table-cell>
<fo:table-cell>
<fo:block text-align="right">RIGHT TEXT</fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
<fo:inline-container vertical-align="top" inline-progression-dimension="49.9%">
<fo:block>left content</fo:block>
</fo:inline-container>
<fo:inline-container vertical-align="top" inline-progression-dimension="49.9%">
<fo:block>right-content</fo:block>
</fo:inline-container>
Vérifié travail avec FOP 2.0
C'est possible Je ne suis pas sûr de la sortie exacte mais avez-vous essayé:
<fo:block-container>
<fo:block text-align="left">text</fo:block>
<fo:block text-align="right">text</fo:block>
</fo:block-container >
Je n'ai pas fait XSLFO depuis un moment mais je peux certainement recommander Stylus Studio pour le développement XSL-FO (et en général XML), le débogage et la prévisualisation in-app ont sauvé mon cul sur la fin des délais à temps. Vous pouvez également faire fonctionner Stylus avec le processeur Apache FOP.
PS: j'aurais vérifié deux fois si J'avais eu Apache FOP etcetera installé correctement à la maison comme bien.
je n'ai pas le temps maintenant de tester, mais découvrez http://www.w3.org/TR/xsl/#fo_float
float un flotteur droit de l'autre gauche je donnerais un coup de feu si j'étais à la recherche de faire ce que vous décrivez
vous pouvez aussi utiliser un tableau
sauf si par aligné à droite et à gauche vous voulez dire justifié...
je crée deux blocs et sur le deuxième bloc je mets cet attribut:
margin-top="-4mm"
ou ce que votre taille de la police et de la marge d'en bas sont (juste pour les regarder comme ils sont sur la même ligne)