Vous êtes ici : Accueil > Equipes de travail > LaTeX > Notes lacunaires, Philippe Cara et son "Phantom"
Publié : 7 janvier 2007

Notes lacunaires, Philippe Cara et son "Phantom"

La commande \phantom permet de generer un espace blanc de la meme
longueur que son argument. Donc plus besoin de mettre soi-meme les
petits points en deuxieme argument.

Voici donc une copie du mail de Philippe :

Mon idée était d’éviter le deuxieme argument dans la commande
\NotesDuProf
La commande \phantom permet de générer un espace blanc de la même
longueur que son argument. Donc plus besoin de mettre soi-même les
petits points en deuxième argument.

La premiere version modifiée est donc

\newcommand{\NotesDuProfBlue}[1] {
 \ifthenelse{\equal{\NotesDuProf}{true}}
       {\textcolor{blue}{#1}}
       {\underline{\phantom{#1}}}
}

J’ai mis \underline pour mettre une petite ligne là où il faut ecrire.

Il se peut que l’espace généré soit trop petit pour l’ecriture de
l’élève moyen. On peut alors vraiment utiliser la machinerie LaTeX pour
mesurer... On definit alors une variable de mesure \LongueurDuProf :-)

\newlength{\LongueurDuProf}
\newcommand{\NotesDuProfRed}[1]
{
 \ifthenelse{\equal{\NotesDuProf}{true}}
       {\textcolor{red}{#1}}
       {\settowidth{\LongueurDuProf}{#1}\rule[-2pt]{2\LongueurDuProf}{.5pt}}
}

Ici j’ai pris deux fois la longueur de #1.


Merci à Philippe.
Petite suggestion de ma part :
Si en effet, espace généré est trop petit pour l’ecriture de l’élève moyen, pourquoi ne pas mettre deux fois la commande "\phantom" ?

Ce qui va donner :

\newcommand{\NotesDuProfBlue}[1] {
 \ifthenelse{\equal{\NotesDuProf}{true}}
       {\textcolor{blue}{#1}}
       {\underline{\phantom{#1} \phantom{#1}}}
}