Aller au contenu principal

En-têtes et pieds de page

Les objets header et footer définissent le contenu qui se répète sur chaque page du document. Les deux prennent en charge le contenu texte avec des jetons de numéro de page, une règle de délimitation visuelle et la possibilité d'ignorer des pages spécifiques.

Propriétés

PropriétéTypeDescription
contentarrayTableau d'éléments de contenu (paragraphes avec formatage en ligne, canevas, colonnes, ...)
hrobjectRègle horizontale séparant l'en-tête/le pied de page du contenu du corps. Utilise la même définition que l'élément hr autonome.
skipPagesnumber[]Tableau de numéros de page basés sur 1 où cet en-tête/pied de page ne doit pas apparaître
offsetnumberRemplissage en points entre la zone et le contenu qui la précède (par défaut 8)

Contenu

Le tableau content fonctionne de la même manière que le tableau principal content du document. Chaque élément supporte la résolution $data et les balises de formatage en ligne telles que [b], [color], [tab], [image].

{
"header": {
"content": [
{ "p": "ShipForge[tab, 400, 0]Rapport trimestriel", "style": "headerStyle" }
]
}
}

Numéros de page

La numérotation des pages utilise les jetons globaux $global.PAGE et $global.NUMPAGES, résolus au moment du rendu à l'intérieur de n'importe quel paragraphe d'en-tête ou de pied de page. Consultez Globaux pour la liste complète.

{
"footer": {
"content": [
{ "p": "Page [b]$global.PAGE[/b] sur $global.NUMPAGES", "style": "footerStyle" }
]
}
}

Les Codes courts fonctionnent à l'intérieur du paragraphe de numéro de page comme n'importe quel autre contenu.

Règle de délimitation

La propriété hr trace une règle horizontale entre la zone d'en-tête/pied de page et le corps de la page. Elle accepte les mêmes propriétés que l'élément hr autonome.

{
"header": {
"content": [
{ "p": "ShipForge[tab, 400, 0]Rapport trimestriel", "style": "headerStyle" }
],
"hr": { "borderStyle": "solid", "height": 0.5, "color": "#CCCCCC" }
}
}

Tout borderStyle supporté par hr fonctionne ici -- solid, dashed, dotted, double, groove, ridge, inset, outset, dashedFixed, ou none.

Ignorer des pages

Utilisez skipPages pour supprimer un en-tête ou un pied de page sur des pages spécifiques. Les numéros de page sont basés sur 1 -- couramment utilisés pour masquer l'en-tête sur une page de titre.

{
"header": {
"content": [ "..." ],
"skipPages": [1]
}
}

Exemple complet

{
"header": {
"content": [
{ "p": "ShipForge[tab, 400, 0]Rapport trimestriel", "style": "headerStyle" }
],
"hr": { "borderStyle": "solid", "height": 0.5, "color": "#CCCCCC" },
"skipPages": [1]
},
"footer": {
"content": [
{ "p": "[color, #CC0000]CONFIDENTIEL[/color]", "style": "footerStyle" },
{ "p": "Page [b]$global.PAGE[/b] sur $global.NUMPAGES", "style": "footerStyle" }
],
"hr": { "borderStyle": "dashed", "height": 0.4, "color": "#999999" }
}
}

Dans cet exemple :

  • L'en-tête affiche le nom de l'entreprise sur la droite via [tab], séparé du corps par une règle solide, et est masqué sur la première page (page de titre).
  • Le pied de page affiche un avis rouge « CONFIDENTIEL », une règle en tirets et une ligne de numéro de page avec [b]...[/b] gras autour du numéro de page actuel.