Une pile mise en page à la main, cadre par cadre

Le rapport de l’exemple voisin se met en page tout seul : le moteur décide où couper chaque page. Parfois, c’est à vous de choisir les cadres — une colonne à côté d’une image, un panneau de formulaire, l’espace laissé sous un en-tête — et le texte doit les remplir l’un après l’autre.

Ici, un bon de livraison commence dans un premier cadre trop court pour le contenir. Le cadre indique où le bon s’est arrêté, et le second cadre reprend exactement à cet endroit : rien n’est écrit deux fois ni perdu. Une affiche dont l’image est plus haute que n’importe quel cadre est refusée d’emblée plutôt que coupée en deux. Sous chaque cadre, une ligne indique la hauteur occupée, ainsi que le point de départ et d’arrivée du contenu : des valeurs qu’un programme peut vérifier avant de poursuivre.

Ce que montre cet exemple

  • Une pile répartie dans les cadres de votre choix, un par un.
  • Chaque cadre indique où la pile s’est arrêtée, et le suivant reprend à cet endroit.
  • Un bloc plus haut que son cadre est refusé, jamais coupé.

Le code source complet

Rien n’est omis et rien n’est simplifié : c’est le programme exactement tel qu’il tourne, pour le développeur qui utilise cette bibliothèque.

Voir le code Rust Voir le code Python

Le document lui-même

Ouvrir le document en anglais Ouvrir le document en français Ouvrir le document en allemand Ouvrir le document en espagnol Ouvrir le document en italien Ouvrir le document en portugais

Exemples proches de celui-ci

Couper un mot trop long

Un mot plus long que la colonne qui le contient : la bibliothèque le laisse entier, le coupe au bord de la colonne, ou le coupe en finissant la ligne par un trait d’union.

Points de coupure après une barre oblique ou un trait d’union

Une colonne justifiée, quatre fois : des chemins de fichiers et des mots composés qui débordent faute de point de coupure, puis qui passent à la ligne là où une coupure est permise après une barre oblique ou un trait d’union, ensuite partout où leur ponctuation l’autorise, enfin avec des traits d’union insécables qui gardent chaque mot composé entier.

Une police derrière la police

Une même ligne d’états composée deux fois : d’abord dans la police de l’entreprise seule, où les caractères dont elle n’a pas le glyphe sortent en cases vides ; puis avec une seconde police derrière elle, qui trace ces caractères.

Tous les exemples, par sujet