Problema dell’ultima ora…
Con il codice che hai creato, le didascalie, a volte, rimangono isolate dalla tabella. Ho provato ad aggiungere qualche \nobreak, ma niente.
Ho modificato il codice così:
`\usepackage{ifthen}
\makeatletter
\newsavebox{\ivan@box}
\newcounter{ivan@cntr}
\long\def\ivanvbox#1{\sbox\ivan@box{%
\stepcounter{ivan@cntr}\label{ivan@label\arabic{ivan@cntr}}%
\def\captionof##1##2{\gdef\@thisboxcaption{\captionof{##1}{##2}}\ignorespaces}
\unskip#1}% end of \ivan@box
\ifdim\wd\ivan@box<\columnwidth
\normalivan@box
\else
\bigivan@box
\fi}
\def\normalivan@box{%
\begin{center}%
[color=red]\vbox[/color]{\@thisboxcaption\medskip\unhbox\ivan@box}
\end{center}
}
\def\bigivan@box{%
\begin{center}
[color=red]\vbox[/color]{\@thisboxcaption\medskip
\ifthenelse{\isodd{\pageref{ivan@label\arabic{ivan@cntr}}}}
{\def\ivan@side{l}}{\def\ivan@side{r}}%
\checkivan@wd
\makebox[\columnwidth][\ivan@side]{\box\ivan@box}}
\end{center}
}
\def\checkivan@wd{%
\ifdim\wd\ivan@box>\dimexpr\textwidth+\marginparsep+\marginparwidth\relax
Tabella troppo grande\\
\fi}
\makeatother`
Ho aggiunto un \vbox che racchiude didascalia e tabella. Secondo te può dare qualche problema? A parte problemi di riempimento pagina?
Ciao
Ivan