Re: Parametri nella terza parte di un newenvironment

#12529
Up
0
Down
::

Ho bisogno di passare il nome di un’immagine come parametro all’interno di un ambiente. Un esempio minimale è riportato sotto.
`\documentclass{article}
\usepackage{graphicx}

\newenvironment{provaT}[1]{Titolo.}{\includegraphics[width=10ex]{#1}}`
La compilazione produce questo errore
`! Illegal parameter number in definition of \endprovaT.

1
l.4 …{Titolo.}{\includegraphics[width=10ex]{#1}}

? `
Qual è il problema?

È un “problema” noto. I parametri # possono essere usati solo nel secondo argomento di \newenvironment (apertura) e non nel terzo (chiusura). Il trucco è semplice: passi l’argomento a una macro.
`\newcommand{\provaTarg}{}
\newenvironment{provaT}[1]
{\renewcommand{\provaTarg}{#1}Titolo.}
{\includegraphics[width=10ex]{\provaTarg}}`
Ciao
Enrico

Go to top