Grazie grazie.. qualcosa sono riuscito a combinare.. ma adex vorrei definire dei comandi per accorciarmi il lavoro…
e mi da questo errore..
`
Runaway argument?
{
! Paragraph ended before \factor was complete.
\par
`e questo è il codice..
`
\makeatletter
\newcommand*{\factor}[1]{\number\numexpr\dimexpr#1/\unitlength\relax}
\makeatother\newcommand{\rectangle}[2]{
\put(\factor{.006\textwidth}-\factor{#1},\factor{#2}){\framebox(\factor{.05\textwidth}, \factor{.025\textwidth})}
}\begin{document}
\setlength{\unitlength}{1pt}
\begin{picture}(\factor{\textwidth},\factor{1.2\textwidth})
\rectangle{\factor{.06\textwidth},\factor{1.1\textwidth}}
\end{picture}\end{document}`
Puoi forse scrivere
`\put(10-5,2){\framebox{aaa}}`
in un ambiente picture? Naturalmente no.
Modifica la definizione di \factor in questo modo:
`\newcommand*{\factor}[1]{%
\number\numexpr\dimexpr#1\relax/\unitlength\relax}`
Non ho tempo di provare, ma dovrebbe riuscire la cosa seguente:
`\newcommand{\rectangle}[2]{%
\put(\factor{.006\textwidth-#1},\factor{#2})%
{\framebox(\factor{.05\textwidth}, \factor{.025\textwidth})}%
}`
Non dimenticarti quei segni % che ho messo.
Aggiungo che stai usando \rectangle a sproposito:
`\begin{picture}(\factor{\textwidth},\factor{1.2\textwidth})
\rectangle{.06\textwidth}{1.1\textwidth}
\end{picture}`
dà ciò che volevi (penso); \rectangle ha due argomenti che devono essere dimensioni, non numeri puri.
Studiati Tikz, che è molto più potente.
Ciao
Enrico