« LaTeX/Programmer avec LaTeX » : différence entre les versions

Contenu supprimé Contenu ajouté
m Révocation des modifications de 196.77.35.252 (discussion) vers la dernière version de JackBot
Balise : Révocation
DannyS712 (discussion | contributions)
m <source> -> <syntaxhighlight> (phab:T237267)
 
Ligne 15 :
 
Les commandes personnelles sont des variables de base. Par exemple, on peut définir
<sourcesyntaxhighlight lang="latex">
\usepackage{graphicx}
...
Ligne 23 :
\includegraphics[scale=\echelle]{image2}
\includegraphics[scale=\echelle]{image3}
</syntaxhighlight>
</source>
 
=== Longueurs ===
 
Une longueur doit contenir un nombre, entier ou décimal (le séparateur étant le point) et une unité accolée (cf. ''[[../Éléments de base#Espaces et changements de ligne|Éléments de base &gt; Espaces et changements de ligne]]''). La déclaration d'une longueur se fait avec la commande <code>\newlength</code>, et l'assignation de la valeur se fait avec <code>\setlength</code>, par exemple :
<sourcesyntaxhighlight lang="latex">
\newlength{\malongueur}
\setlength{\malongueur}{1.5em}
</syntaxhighlight>
</source>
crée une longueur <code>\malongueur</code> et lui donne la valeur d'un cadratin et demi. Autre exemple :
<sourcesyntaxhighlight lang="latex">
\usepackage{graphicx}
...
Ligne 42 :
\includegraphics[width=\largeur]{image2}
\includegraphics[width=\largeur]{image3}
</syntaxhighlight>
</source>
 
 
On peut assigner la longueur d'un objet, d'un mot, avec <code>\settowidth</code> :
<sourcesyntaxhighlight lang="latex">
\newlength{\malongueur}
\settowidth{\malongueur}{Bonjour}
</syntaxhighlight>
</source>
la longueur <code>\malongueur</code> aura pour valeur la taille du mot « Bonjour » dans la police courante. La longueur s'utilise ensuite à la place des valeurs dans les commandes, par exemple :
<sourcesyntaxhighlight lang="latex">
\hspace{\malongueur}
</syntaxhighlight>
</source>
On peut ajouter une valeur à une longueur avec <code>\addtolength</code> :
<sourcesyntaxhighlight lang="latex">
\addtolength{\malongueur}{1em}
</syntaxhighlight>
</source>
augmente la longueur <code>\malongueur</code> d'un cadratin.
 
Ligne 80 :
 
Un compteur est une variable entière. Elle est créée par la commande <code>\newcounter</code> et prend la valeur nulle. On peut lui attribuer une valeur autre avec <code>\setcounter</code> :
<sourcesyntaxhighlight lang="latex">
\newcounter{moncompteur}
\setcounter{moncompteur}{4}
</syntaxhighlight>
</source>
On peut afficher cette valeur avec la commande <code>\the</code>:
<sourcesyntaxhighlight lang="latex">
\themoncompteur
</syntaxhighlight>
</source>
On peut l'incrémenter avec la commande <code>\addtocounter</code> :
<sourcesyntaxhighlight lang="latex">
\addtocounter{moncompteur}{2}
</syntaxhighlight>
</source>
ajoute 2 au compteur <code>moncompteur</code>. Les compteurs sont utilisés par LaTeX pour les listes ordonnées et les numérotations de chapitres, sections, sous-sections, …
 
Ligne 99 :
 
L'extension <code>calc</code> permet d'effectuer des calculs arithmétiques sur les compteurs et les longueurs (par défaut, on ne peut que multiplier des valeurs dans LaTeX). Par exemple, pour ajouter deux compteurs « cA = cB + cC » on peut écrire
<sourcesyntaxhighlight lang="latex">
\usepackage{calc}
...
Ligne 107 :
...
\setcounter{cA}{\value{cB} + \value{cC}}
</syntaxhighlight>
</source>
au lieu de
<sourcesyntaxhighlight lang="latex">
\newcounter{cA}
\newcounter{cB}
Ligne 116 :
\setcounter{cA}{\value{cB}}
\addtocounter{cA}{\value{cC}}
</syntaxhighlight>
</source>
Par ailleurs, l'extension permet aussi de multiplier et de diviser avec les symboles standards <code>*</code> et <code>/</code>. Il existe toutefois quelques restrictions ; en particulier, on ne peut — évidemment — pas ajouter un compteur avec une longueur, et un compteur contient toujours un nombre entier (si le résultat est décimal, il est tronqué). Par ailleurs, si l'on veut multiplier une longueur par un nombre, il faut mettre la longueur en premier : <code>1em*2</code>.
 
Ligne 123 :
L'extension <code>multido</code> permet de faire une boucle itérative incrémentale.
==== Exemple ====
<sourcesyntaxhighlight lang="latex">
\usepackage{multido}
...
Ligne 129 :
la valeur est \i{}
}
</syntaxhighlight>
</source>
 
=== Extension <code>ifthen</code> ===