Il y a plusieurs façons de faire qui dépendent du résultat souhaité.
overlays
L'environnement \startoverlay permet d'empiler les éléments strictement les uns au-dessus des autres, ils sont centrés horizontalement et verticalement :
\starttext \startoverlay {\red Bébert} {\green Lafiche} {\blue le roi des fiches} \stopoverlay \stoptext
Bien entendu l'ordre des commandes influe sur l'ordre affiché :
\starttext \startoverlay {\blue le roi des fiches} {\green Lafiche} {\red Bébert} \stopoverlay \stoptext
Bon c'est pas très visible sur cet exemple mais on en verra un exemple plus parlant plus tard.
Cet environnement est surtout utile pour placer un court texte (sans saut de ligne) sur une image :
\starttext \startoverlay {\externalfigure[cow]} {\rotate[rotation=42]{\red Fetchez la vache!}} \stopoverlay \stoptext
\starttext \startoverlay {\rotate[rotation=42]{\red Fetchez la vache!}} {\externalfigure[cow]} \stopoverlay \stoptext
L'influence de l'ordre de saisie est plus perceptible sur cet exemple.
Si tu veux superposer un élément sur un paragraphe de texte il faut employer une autre méthode.
defineoverlay
\defineoverlay[nom][{commandes}]
Les commandes doivent être mise entre {}
Permet de définir des niveaux que tu pourras appliquer à l'aide de l'option backgroud de commandes comme \framed ou \startframedtext.
Je te renvoie à la fiche Mettre un paragraphe en évidence pour une explication de \startframedtext.
Dans l'exemple suivant je vais placer l'élément suivant :
\rotate[rotation=42]{\red Explication}
sur ce texte :
Je vais donc définir un niveau qui contient Explication :
Puis je vais placer mon texte dans une frame et je vais appliquer mon Explication à l'aide de l'option background.
\defineoverlay[expli][{\rotate[rotation=42]{\red Explication}}] \starttext\startframedtext[middle][frame=off,background=expli]
Quel est la réplique exacte du soldat français dans le film des Monthy Python,
Sacré Graal (Holy Grail) ?
"Faites chier la vache !"
"Faites péter la vache !"
"Faites chercher la vache !"
En fait c'est "Fetchez la vache!" du franglais pour "allez chercher la vache" de
"to fetch" en anglais qui veut dire "aller chercher" \stopframedtext \stoptext
On obtient :
Si tu regardes de près, tu te rends compte que le texte est au-dessus de Explication. Pour plus de lisibilité je vais remplacer Explication par une barre rouge :
Une petite explication s'impose. En fait background possède deux autres niveaux implicites :
color : qui correspond à la couleur du fond, qui dans mon n'exemple est la couleur du papier puisque que je ne l'ai pas définie ;
foreground : qui correspond à mon texte.
Regarde ce qui ce passe si je positionne foreground avant expli :
\defineoverlay[expli][{\rotate[rotation=42]{\blackrule[height=1cm,width=5cm,color=red]}}] \starttext \startframedtext[middle][frame=off,background={foreground,expli}]
Quel est la réplique exacte du soldat français dans le film des Monthy Python,
Sacré Graal (Holy Grail) ?
"Faites chier la vache !"
"Faites péter la vache !"
"Faites chercher la vache !"
En fait c'est "Fetchez la vache!" du franglais pour "allez chercher la vache" de
"to fetch" en anglais qui veut dire "aller chercher" \stopframedtext \stoptext
Si j'ajoute un niveau appelé barre défini comme suit :
\defineoverlay[expli][{\blackrule[height=8cm,width=2cm,color=orange]}}] \defineoverlay[barre][{\rotate[rotation=42]{\blackrule[ height=1cm,width=5cm,color=red]}}] \starttext \startframedtext[middle][frame=off,background={ color,barre,foreground,expli},backgroundcolor=green]
Quel est la réplique exacte du soldat français dans le film des Monthy Python,
Sacré Graal (Holy Grail) ?
"Faites chier la vache !"
"Faites péter la vache !"
"Faites chercher la vache !"
En fait c'est "Fetchez la vache!" du franglais pour "allez chercher la vache" de
"to fetch" en anglais qui veut dire "aller chercher" \stopframedtext \stoptext
Si je mets background={color,foreground,barre,expli}, j'obtiens :