Tu peux charger d’autres systèmes de couleur, pour augmenter le nombre de couleur prédéfinie :
dvipsnames : 68 couleurs prédéfinies (cymk) ;
svgnames : 150 couleurs prédéfinies (rgb) ;
x11names : 317 couleurs prédéfinies (rgb) ;
Tu fais appel à ces systèmes par une commande du type :
\usepackage[dvipsnames]{xcolor}
ou plusieurs en même temps
\usepackage[svgnames,dvipsnames]{xcolor}
Je te donne, page suivante, la liste pour dvipsnames, pour les 2 autres je te renvoie à la documentation d’xcolor pages 38–40.
Attention aux majuscules qui sont obligatoires.
Écrire en couleur
\color{nom de la couleur}
Cette commande te permet de modifier la couleur du texte de ton document. Pour comprendre son fonctionnement voici un document en couleur et son fichier LaTeX :
\documentclass{scrartcl} \usepackage[T1]{fontenc} \usepackage[latin1]{inputenc} \usepackage{lmodern} \usepackage{graphicx} \usepackage{xcolor} \usepackage{fancyhdr} \usepackage[frenchb]{babel} \lhead{L’entête} \chead{} \rhead{\textsc{\leftmark}} \rfoot{\small\textsl{Page \thepage}} \cfoot{} \color{red} \begin{document} \pagestyle{fancy}%pour avoir entête et bas de page \section{Première section}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum. \subsection{première subsection}
Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est, iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Curabitur auctor semper nulla. \color{blue} Donec varius orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum. \section{deuxième section}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida mauris. \begin{figure}[h] \centering \includegraphics{images/marmotte.png} \caption{Jeux de marmottes, jeux de vilains} \end{figure}
Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius orci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum. \subsection{subsection}
Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius orci eget risus. \color{green} Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orci dignissim rutrum. \end{document}
La couleur rouge est définit dans le préambule du document (avant le \begin{document}). Elle va donc affecter l’intégralité du document et pas uniquement le texte mais également : l’entête, le pied de page, les divisions, et toutes les légendes.
La commande \color{blue} qui met le texte en bleu, étant placé après le \begin{document}, n’affecte que le texte et est sans effet sur l’entête, le pied de page et les légendes. Le changement de couleur s’effectue à partir de sa déclaration, jusqu’a la fin du document, sauf si une nouvelle commande \color{nom couleur} intervient et prend le relais, ce qui arrive dans ce document avec la commande \color{green}.
Une portion de texte en couleur
Tu as deux possibilités pour mettre une portion de texte en couleur. En reprenant la commande \color{nom couleur} en limitant sa porté à l’aide de { } :
Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. {\color{magenta} Un texte magenta}. Curabitur auctor semper nulla.
Une deuxième solution à l’aide de la commande
\textcolor{nom couleur}{le texte}
Avec cette méthode tu ne peux mettre en couleur qu'un petit groupe de mots sans saut de paragraphe.
Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla. \textcolor{nom couleur}{Un texte violet}. Curabitur auctor semper nulla.
La feuille en couleur
Pour changer la couleur de la feuille (en blanc par défaut sous LaTeX), tu dois utiliser la commande :
\pagecolor{couleur}
La portée de cette commande commence à la page courante où a été déclarée la commande jusqu’à la fin du document ou à une nouvelle commande \pagecolor{couleur}. Pour affecter tout le document place la commande dans le préambule (avant le \begin{document}).
Les boites en couleur
Texte sur un fond de couleur
Tu utilises la commande
\colorbox{Couleur de fond}{texte}
par exemple :
\colorbox{red}{texte}
Et évidemment, pour mettre un texte en couleur sur fond de couleur, il suffit de combiner les deux commandes précédentes :
\colorbox{couleur de fond}{\textcolor{couleur du texte}{le texte}}
par exemple :
\colorbox{blue}{\textcolor{red}{le texte}}
Avec un cadre coloré
\fcolorbox{couleur de la bordure}{couleur du fond}{texte}
Un exemple
\fcolorbox{red}{cyan}{texte}
Si tu veux le texte en couleur tu fais comme avec \colorbox.
Réglages
La commande suivante permet de modifier l’épaisseur du trait
Pour de plus grandes plages de texte, tu peux insérer dans des boites en couleur des environnements minipage qui permettent les sauts de paragraphe :
Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi. Morbi auctor lorem non justo. \par \fcolorbox{red}{cyan}{\begin{minipage}{7cm}
Nam lacus libero, pretium at, lobortis vitae, ultricies et, tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna, vitae ornare odio metus a mi. Morbi ac orci et nisl hendrerit mollis. Suspendisse ut massa. Cras nec ante. Pellentesque a nulla. \end{minipage}}\par Nulla ullamcorper vestibulum turpis. Pellentesque cursus luctus mauris.
Cette boite ne peut pas s’étaler sur plusieurs pages.
Les listes de couleurs prédéfinies ne te conviennent pas et tu préfères définir toi même tes couleurs, pas de problème, c’est possible. Avec xcolor tu peux :
créer tes couleurs ;
changer leur intensité ;
les mélanger ;
les mixer.
Créer tes couleurs
Avant de commencer et sans entrer dans le détail, il faut que tu saches qu’il existe plusieurs codages de couleurs, xcolor en utilise 4 :
les niveaux de gris du blanc au noir ;
le codage rgb les 3 couleurs fondamentales, Red, Green, Blue en anglais, (rvb en français) ;
la quadrichromie CMJN (cyan, magenta, jaune, noir) et en anglais CMYK, (cyan, magenta, yellow, black).
Teinte Saturation Valeur TSV, et les termes anglais HSV (hue, saturation, value) ou HSB (hue, saturation, brightness), c’est ce dernier terme que reconnait xcolor.
La commande pour créer sa propre couleur est :
\definecolor{nom}{modèle}{taux}
Tu places cette commande avant \begin{document}. Le nom c’est toi qui le défini, après tu l’utilises comme le nom des couleurs prédéfinies (par exemple \textcolor{macouleur}). Si tu utilises cette couleur qu’une seule fois tu peux aussi l’employer directement \textcolor{modèle}{taux}{le texte à mettre en couleur} ou bien \color{modèle}{taux}.
LaTeX est anglo-saxon, le séparateur décimal est donc le point, la virgule sert à séparer les différentes valeurs.
Il y a plusieurs modèles, voici les quatre que j’utilise le plus souvent :
gray : taux de gris. Il est défini par un nombre décimal compris entre 0 et 1 inclus, 0 correspondant au noir et 1 au blanc.
\definecolor{mongris}{gray}{0.75}
donne :
rgb : correspond aux taux de rouge 1,0,0, vert 0,1,0 et bleu 0,0,1.
Chaque taux correspondant à un nombre décimal compris entre 0 (absence de couleur) et 1 inclus. Par exemple
\definecolor{monOrange}{rgb}{0.97,0.35,0.04}
donne :
RGB : idem que ci-dessus mais les taux sont compris entre 0 et 255. La même couleur que ci-dessus, s’écrit :
\definecolor{monOrange}{RGB}{249,89,10}
cmyk : cyan 1,0,0,0, magenta 0,1,0,0, jaune 0,0,1,0, et noir 0,0,0,1. Ce sera cette fois quatre nombres décimaux compris entre 0 et 1 inclus. La même couleur que ci-dessus, s’écrit :
\definecolor{monOrange}{rgb}{,0.64,0.96,0.02}
Bébert le magicien
Là tu te demandes comment je sais que {249,89,10}, donne de l’orange. Eh bien parce que je suis balèze ! En faite non, enfin si, je suis balèze, mais surtout, j’ai utilisé « gcolor2 », qui est une pipette de couleur permettant d’obtenir le code rgb d’une couleur (sous Linux).
\color{red} Un texte en rouge et \color{red!50} un texte avec 50\% de rouge.
\color{blue} Un texte en bleu et \color{blue!25} un texte avec 25\% de bleu.
Mélanger les couleurs
20% de bleu avec 80% de rouge s’obtient par :
\color{blue!20!red}
Mixer les couleurs
3 parts de vert avec 1 part de jaune et 2 de rouge
\color{rgb:green,3;yellow,1;red,2}
Il ne faut pas oublier de préciser le type de système de couleur au début (rgb,cmyk).
Couleur complémentaire
le signe – pour la couleur complémentaire
\color{-blue!20!red}
\color{-yellow}
Dégradé, liste de couleur
Faire un texte en dégradé de couleur
Pour ce faire on va créer une commande qui diminue l’intensité de la couleur courante. La couleur courante est la dernière utilisée. Pour xcolor c’est « . » (le point) qui remplace la couleur courante. Donc la commande
\color{.!80}
diminuera de 20% l’intensité de la couleur courante. Il suffit d’appliquer ceci à une variable et l’on obtient la commande suivante (je te renvoie à la fiche sur la création de commandes pour les explications) :
Tu peux bien entendu changé dans la commande la valeur du dégradé en changeant la diminution d’intensité par exemple avec une valeur de 50% :
Les listes de couleur
C’est assez compliqué à mettre en œuvre, enfin ça m’est apparut compliqué, certainement dû à mon niveau d’anglais et au nombre important d’options. Voici ce que j’en ai retenu. Imaginons que tu veuilles une série de couleurs comprises entre le rouge et le vert. Tu définis ta série par la commande :
\definecolorseries{nomChoisi}{modeCouleur}{méthode}{couleur de départ}{couleur d'arrivée}
Pour notre exemple on va utiliser les noms des couleurs (red et green) mais tu aurais très bien pu définir tes couleurs de départ et de fin. Quand on définit une couleur d’arrivée on utilise la méthode last.
\definecolorseries{nomChoisi}{modeCouleur}{last}{couleur de départ}{couleur d'arrivée}
Avec un nombre de pas de 4 ( \resetcolorseries[4]{rougeVert})
Avec un nombre de pas de 15 ( \resetcolorseries[15]{rougeVert})
Plus le nombre de pas est élevé plus la transition est douce. Tu peux te servir de cette méthode pour affiner le dégradé vu dans la première partie de ce chapitre.
Je ne vais pas entrer dans le détail des autres méthodes, je vais juste te montrer des exemples. La méthode step qui permet de définir une couleur de départ et un vecteur d’augmentation.
\definecolorseries{nomChoisi}{modeCouleur}{step}[modeCoulDép]{couleur de départ}[modeCoulArriv]{vecteur d’augmentation}
Dans cet exemple \color{maCouleur!!+} vaudra [rgb ]{0.5,0.7,0.7} la suivante [rgb]{0.6,0.9,0.8} et ainsi de suite.
Par exemple avec
\resetcolorseries[8]{maCouleur}
Il existe aussi la méthode grad mais je te renvoie à la doc de xcolor.
Conclusion
Voila je pense que tu as assez d’éléments pour peinturlurer tes œuvres LaTeXiènes. Il reste encore quelques aspects à aborder comme la couleur dans les
tableaux par exemple mais on verra ça plus tard, après la sortie de la fiche sur les tableaux.