US

Transformations d'objets

L'extension graphics offre toute une série de commandes permettant de réaliser des transformations d'objets, par exemple une rotation, une mise à l'échelle, ...

Les transformations s'appliquent sur des objets, c'est-à-dire du texte, des formules, des dessins, ... Il faut néanmoins savoir que pour voir le résultat de ces commandes, il faudra une visionneuse capable de le faire. L'exportation vers PDF avec pdflatex ou la conversion vers un fichier ps avec dvi2ps vous permettra d'utiliser ces commandes.

Pour toutes les commandes qui suivent, vous devrez donc importer le package graphics.

Mise à l'échelle et déformation : scalebox

La première commande est la commande scalebox qui permet d'effectuer une mise à l'échelle d'un certain facteur. La commande prend deux paramètres : le premier précise le facteur d'agrandissement et le second l'objet à transformer.

1 
2 
3 
4 
5 
\scalebox{2}{Texte agrandi deux fois}
 
\scalebox{1}{Texte normal}
 
\scalebox{0.5}{Texte deux fois}
listing l11.5 La commande scalebox
La commande scalebox
fig l11.4 La commande scalebox

On peut également utiliser une option de la commande afin de préciser un facteur de mise à l'échelle vertical différent. Dans un tel cas, l'objet redimensionnée perdra sa proportion originale comme le montre l'exemple suivant :

1 
\scalebox{1.5}[2]{ quelconque}
listing l11.6 Redimensionnement non proportionnel
Redimensionnement non proportionnel
fig l11.5 Redimensionnement non proportionnel

Cette boite peut-être utilisée pour créer de beaux effets sur du texte pour des titres personnalisés par exemple.

Redimensionnement : resizebox

On peut obtenir exactement les mêmes effets avec la commande resizebox. Voici la forme générale de la commande.

1 
\resizebox{Largeur}{Hauteur}{Objet}
listing l11.7 La commande resizebox

Cette commande crée donc une boite avec les dimensions spécifiées et fait en sorte que l'objet occupe toute la surface de la boite. Si on remplace la hauteur ou la largeur par un point d'exclamation ! alors, l'objet sera redimensionné du même facteur dans les deux directions, et restera ainsi proportionnel à l'original.

1 
: \resizebox{3cm}{1cm}{non-proportionnelle} et \resizebox{3cm}{!}{proportionnelle}.
listing l11.7 La commande resizebox
La commande resizebox
fig l11.9 La commande resizebox

Rotation : rotatebox

On peut également effectuer une rotation d'un objet en utilisant la commande rotatebox qui prend deux paramètres : le premier est un angle de rotation exprimé en degré dans le sens trigonométrique (anti-horloger) et le second est l'objet sur lequel il faut appliquer la rotation.

1 
Rotations \rotatebox{50}{de 50 \degres} ou \rotatebox{150}{de 150 \degres}
listing l11.8 La commande rotatebox
La commande rotatebox
fig l11.10 La commande rotatebox

La rotation de l'objet se fait toujours par rapport au coin inférieur gauche de la boite contenant l'objet dont il faut effectuer une rotation comme le montre la figure l11.10.

Rotation standard
fig l11.11 Rotation standard

Symétrie verticale : reflectbox

La dernière transformation possible via une commande du package graphics permet d'effectuer un effet miroir vertical. L'objet subira une symétrie orthogonale selon un axe vertical.

1 
\reflectbox{Miroir} Miroir
listing l11.9 La commande reflectbox
La commande reflectbox
fig l11.12 La commande reflectbox

Vous aurez peut-être remarqué que l'effet produit par la commande reflectbox peut être obtenu avec la commande scalebox comme le montre le listing suivant :

1 
\scalebox{-1}[1]{Miroir} Miroir
listing l11.10 Symétrie vertical avec scalebox

Composition de transformations

On peut évidemment composer les différentes transformations que nous venons de rencontrer afin d'en crée d'autres. Par exemple pour produire une symétrie orthogonale d'axe horizontal, on peut effectuer une symétrie verticale suivie d'une rotation de 180 degrés. Il faut pour terminer remonter la boite sur la ligne de base en utilisant la commande raisebox vue au chapitre 9.

1 
2 
Miroir \\
\raisebox{\depth}{\rotatebox{180}{\reflectbox{Miroir}}}
listing l11.11 Composition de transformations
Composition de transformations
fig l11.13 Composition de transformations
  • Espace membre
  • Learning Center
  • Les forums
  • Livre d'or
  • Imprimer
  • Boutique
  • Info
  • Règlement
  • Erreur
  • Newsletter