Page 1 sur 1

Macros TeX

MessagePublié: 12 Avr 2010 18:01
par P.Fradin
En principe le contenu d'un environnement texgraph est considéré comme du verbatim, cela a en particulier plusieurs conséquences, dont:

  • Tout ce qui suit \end{texgraph} est ignoré jusqu'à la fin de la ligne.
  • On ne peut pas utiliser un environnement texgraph comme argument dans une commande.

Depuis la version [test] 1.95, il est possible d'utiliser des macros TeX dans un environnement texgraph, celles-ci seront exécutées par TeX avant que le source soit passé à TeXgraph. Comme l'antislash a déjà une signification pour TeXgraph, j'ai choisi le caractère # à la place, pour annoncer une macro TeX.

Exemple:

Code: Tout sélectionner
\documentclass[10pt,frenchb]{article}
\usepackage[utf8]{inputenc}
\usepackage{fourier}
\usepackage{pgf}
\usepackage[export=pgf]{texgraph}
\usepackage{babel}
\begin{document}

\newcommand {\style}[1]{Color:=#1, LineStyle:=solid, Width:=8}

\begin{texgraph}[name=essai]
Axes(0,1+i), #style{red}, Cartesienne(3*sin(x))
\end{texgraph}

\end{document}


Voci le code source réellement lu par TeXgraph:

Code: Tout sélectionner
14#image#[
Axes(0,1+i), Color:=red, LineStyle:=solid, Width:=8, Cartesienne(3*sin(x))
]##


D'un autre côté, on peut demander à TeXgraph de créer des macros TeX dans le fichier exporté (tex, pst, pgf ou tikz), lorsque ce fichier est lu par TeX, la macro est créée, cela peut permettre de communiquer à TeX des données calculées par texgraph. Par exemple:

Code: Tout sélectionner
\documentclass[10pt,frenchb]{article}
\usepackage[utf8]{inputenc}
\usepackage{fourier}
\usepackage{pgf}
\usepackage[export=pgf]{texgraph}
\usepackage{babel}
\begin{document}

\begin{texgraph}[name=essai]
view(-5,3,-1,5), Marges(0,0,0,0), size(8), Axes(0,1+i), Cartesienne(exp(x)),
LineStyle:=dashed, Ligne([1,1+i*e,i*e],0),
Special("\gdef\approxExp{\[exp(1)\]}")
\end{texgraph}

Une valeur approchée de $e$ est $e\approx\approxExp$.

\end{document}


La macro est écrite dans le fichier exporté grâce la commande Special.

Voici ce que l'on voit dans le document compilé:

approxExp.png
approxExp.png (10.02 Kio) Consulté 7557 fois