« Programmation XML/XSL-FO » : différence entre les versions
mAucun résumé des modifications |
|||
Ligne 1 : | Ligne 1 : | ||
{{Programmation XML}} |
{{Programmation XML}} |
||
⚫ | |||
== Introduction à XSL-FO == |
== Introduction à XSL-FO == |
||
'''XSL-FO''' ({{lang|en|eXtensible Stylesheet Language - Formatting Objects}}) dans la recommandation [[../XSLT|XSL]] du {{w|W3C}} est le vocabulaire qui décrit les mises en forme de documents XML quel que soit le support : écran, papier mais aussi dispositifs mobiles ou audio... |
'''XSL-FO''' ({{lang|en|eXtensible Stylesheet Language - Formatting Objects}}) dans la recommandation [[../XSLT|XSL]] du {{w|W3C}} est le vocabulaire qui décrit les mises en forme de documents XML quel que soit le support : écran, papier mais aussi dispositifs mobiles ou audio... |
||
Ligne 14 : | Ligne 16 : | ||
Ces commandes sont dans des balises <fo: et on les enregistre dans des documents .xfo, .fo ou .fob. |
Ces commandes sont dans des balises <fo: et on les enregistre dans des documents .xfo, .fo ou .fob. |
||
⚫ | |||
== Un document "Bonjour le monde" == |
== Un document "Bonjour le monde" == |
||
Ligne 21 : | Ligne 21 : | ||
<source lang="xml"> |
<source lang="xml"> |
||
<?xml version="1.0" encoding="UTF-8"?> |
<?xml version="1.0" encoding="UTF-8"?> |
||
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> |
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> |
||
<fo:layout-master-set> |
<fo:layout-master-set> |
||
<fo:simple-page-master master-name="A4"> |
<fo:simple-page-master master-name="A4"> |
||
<fo:region-body /> |
<fo:region-body /> |
||
</fo:simple-page-master> |
</fo:simple-page-master> |
||
</fo:layout-master-set> |
</fo:layout-master-set> |
||
<fo:page-sequence master-reference="A4"> |
<fo:page-sequence master-reference="A4"> |
||
<fo:flow flow-name="xsl-region-body"> |
<fo:flow flow-name="xsl-region-body"> |
||
<fo:block>Hello world</fo:block> |
<fo:block>Hello world</fo:block> |
||
</fo:flow> |
</fo:flow> |
||
</fo:page-sequence> |
</fo:page-sequence> |
||
</fo:root> |
</fo:root> |
Version du 3 février 2014 à 02:06
Introduction à XSL-FO
XSL-FO (eXtensible Stylesheet Language - Formatting Objects) dans la recommandation XSL du W3C est le vocabulaire qui décrit les mises en forme de documents XML quel que soit le support : écran, papier mais aussi dispositifs mobiles ou audio...
XSL-FO est un langage d'une haute technicité qui s'adresse principalement aux typographes afin de fournir avec les outils de gestion de documents, un outil typographique du niveau attendu par les publications imprimées.
L'objectif de XSL-FO est de créer un arbre d'aires où une aire est une zone d'affichage (visuelle ou auditive).
Les aires sont de deux types :
- Les aires de blocs s'empilent les unes sur les autres,
- Les aires en-ligne s'empilent les unes à côté des autres.
XSL-FO fournit l'ensemble des commandes de contrôle de chaque aire : présentation du contenu, direction de l'empilement (écriture de gauche à droite ou inversement, de haut en bas...).
Ces commandes sont dans des balises <fo: et on les enregistre dans des documents .xfo, .fo ou .fob.
Un document "Bonjour le monde"
Le résultat du code suivant est Hello world[1] :
<?xml version="1.0" encoding="UTF-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="A4">
<fo:region-body />
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
<fo:flow flow-name="xsl-region-body">
<fo:block>Hello world</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
Le modèle des aires
Modèle d'une page simple
Format du tableau : ------------------------------------ -- | | 1 | ------------------------ | -- | | | | 2 | ------------------------ | -- | | | | | | 3 | | | ------- | | | -- | | | | | | | | 4 | | | | | | | | | | | | | | | | | | | | | | | | | | | ------- | | | -- | | | | | | 5 | ------------------------ | -- | | | | 6 | ------------------------ | -- | | 7 ------------------------------------ -- | 1 | 2 | 3 | 4 |5| 6 | 7 |
Page viewport area | I margin-top | |||||
region-before region viewport area |
||||||
|
||||||
___ |
Region-body region viewport area |
___ | ||||
|
||||||
region-after region viewport area |
||||||
I margin-bottom |
L'affinage et la résolution des propriétés
Les objets de mise en forme
Les propriétés de mise en forme
Références
Liens externes
La dernière vérification concernant les liens externes a été effectuée le le 25 janvier 2006.
- anglais w3.org Recommandation du W3C.
- français yoyodesign.org Traduction de la recommandation du W3C version 1.0 du 15 octobre 2001.
- anglais w3schools.com Apprendre XSL-FO avec w3schools (tutorial, documentation...)
- anglais xml.apache.org FOP, le moteur XSL-FO d'Apache
- FOP est une application Java qui accepte un document FO et génère une page dans différents formats : PDF, PCL, PS, SVG, XML, Print, AWT, MIF and TXT. Le principal format de sortie étant le PDF.