Forum Programmation.autre [LaTeX] Créer un style pour des images

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
0
20
jan.
2014

bonjour,

comme d'habitude, dès que je veux faire un truc simple avec LaTeX, ça me prend 2 plombes…

Bref, je voudrais faire une sorte de style personnalisé pour toutes les images dans mon document.

Si je créé un définition pour limiter la largeur des images à 8 cm, ça fonctionne :

\def\MyImages{\includegraphics[width=8cm]}

Si je modifie la définition pour centrer les images, ça ne va plus :

\def\MyImages[1]{\begin{center}\includegraphics[width=8cm]{#1}\end{center}}

Une fois ceci fait, ça imprime le nom de mon image, mais ça n'applique aucun style.

Pourquoi ça bloque ?

  • # \newcommand

    Posté par  . Évalué à 2.

    J'utilise assez peu \def, donc je ne peux pas te dire ce qui ne va pas avec ton code.

    En revanche, en utilisant \newcommand à la place de \def, il n'y a aucune raison que cela ne fonctionne pas. Quelque-chose du genre :

    \newcommand{\MyImages}[1] {
        \begin{center}
            \includegraphics[width=8cm]{#1}
        \end{center}
    }
    

    http://en.wikibooks.org/wiki/LaTeX/Macros

    • [^] # Re: \newcommand

      Posté par  (site web personnel) . Évalué à 2.

      bon, ben écoute merci beaucoup, j'avais lu partout que def et newcommand ça fonctionnait pareil, sauf que newcommand ça faisait plus attention si une commande n'avait pas déjà été utilisée auparavant, mais visiblement la différence ne s'arrête pas là, puisque ton exemple fonctionne bien.

      Comme solution temporaire j'avais utilisé une regex pour remplacer tous les includegraphics par une version avec le \begin{center}\includegraphics … \end{center} mais c'est plus propre avec un newcommand.

      merci encore.

      « I approve of any development that makes it more difficult for governments and criminals to monopolize the use of force. » Eric Raymond

      • [^] # Re: \newcommand

        Posté par  (site web personnel) . Évalué à 2.

        Il me semble que \def est une macro TeX tandis que \newcommand est une macro LaTeX, donc de plus haut niveau. En règle générale, faire du pur TeX n'est pas la bonne voie, à moins que tu veuilles carrément faire un package.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.