Salve a tutti,
come richiesto nella discussione sottolineato reperibile all’indirizzo <http://www.guit.sssup.it/phpBB2/viewtopic.php?t=396>, ho provato a scrivere un ambiente per un’enfasi «molto forte» per una porzione di documento, che si capisse subito essere di grande rilievo e che saltasse subito all’occhio; pensavo di risolvere in quattro e quattr’otto, e invece non ho cavato un ragno dal buco, in quanto sono saltati fuori più problemi che soluzioni. Ci sono rimasto male.Un ambiente di questo tipo me l’ero immaginato come un blocco di testo racchiuso in un riquadro. Questo era un esempio di prova (non ridete per l’ambiente «center», so che non si dovrebbe usare, ma questa era solo una prova; fossi stato in grado di realizzare l’ambiente finale «enfasiForte» avrei richiamato «\centering»):
`Testo normale\begin{center}
{\fboxsep=.5em\fbox{\begin{minipage}{.9\linewidth}\setlength{\parindent}{1.5em}
Testo importanteTesto importante
\end{minipage}}}
\end{center}Testo normale
`
Non c’è niente di male a usare l’ambiente center. Non va usato all’interno di un ambiente figure o table, ma è un’altra faccenda.
L’esempio che avete appena visto, funziona. L’unico problema (fin qui) che non sono stato in grado di risolvere è che l’ambiente «minipage» azzera «\parindent»; da <http://www.eng.cam.ac.uk/help/tpl/textprocessing/teTeX/latex/latex2e-html/ltx-267.html>:
There is no paragraph indentation in the minipage environment. That is, LaTeX sets \parindent to zero; however, you may override this with a \setlength command.
Bel suggerimento, ma quanto vale «\parindent»? un «\the\parindent» esplicito nel corpo mi ritorna 15.0pt, ma dubito seriamente che nei sorgenti di LaTeX (o di TeX) questa grandezza sia stata definita in modo non elastico. Come potete vedere sopra, ho provato a cavarmela «a occhio» con 1.5em, ma se qualcuno sa riportarmi la definizione di «\parindent» (o dirmi in quale file si trova) gliene sarò eternamente grato.
Vale quanto vale 🙂 Di sicuro non è una lunghezza elastica, non avrebbe senso.
Detto ciò, ho provato a passare alla definizione di un ambiente apposito:
`\newenvironment{enfasiForte}{%
\par\medskip\centering{\fboxsep=.5em\fbox{\begin{minipage}{.9\linewidth}\setlength{\parindent}{1.5em}%
}%
{%
\end{minipage}}}\par\medskip%
}`
che, naturalmente non funziona.
No, non funziona. Non puoi aprire una graffa nella prima parte e chiuderla nella seconda. L’unico modo è di usare l’ambiente lrbox, ideato proprio per questo.
`\newsavebox{\eFbox}\newlength{\eFlen}
\newenvironment{enfasiForte}{%
\par\medskip
\setlength{\eFlen}{\parindent}% memorizzo la dimensione del rientro
\centering % prima di dare \centering che la azzera
\fboxsep=.5em
\begin{lrbox}{\eFbox}%
\begin{minipage}{.9\linewidth}
\setlength{\parindent}{\eFlen}%
}
{%
\end{minipage}%
\end{lrbox}
\fbox{\usebox{\eFbox}}%
\par\medskip
}`
Ciao
Enrico