Buona sera
Dispongo di due figure, una quadrata, una rettangolare con base maggiore dell’altezza.
Le vorrei affiancare e per questo mi sono rivolto al pacchetto subfig.
Utilizzando la sintassi standard
`\begin{figure}%
\centering
\subfloat[didascalia1]{\includegraphics[width=.45\textwidth]{figura grande}} \hfill%
\subfloat[didascalia2]{\includegraphics[width=.45\textwidth]{figura piccola}}
\caption{dida comune}
\end{figure}`
ottengo le figure affiancate ma con la figura piccola allineata in basso come la figura grande, con un ampio spazio bianco sopra.La documentazione del pacchetto subfig (questa) alle pagine 44-45-46 mostra un esempio che fa esattamente al caso mio (figura 96).
Io, però, ho semplicemente copiato il codice suggerito e l’ho riempito con i miei campi, così:
`\newsavebox{\tempbox}
\begin{figure}%
\centering
\sbox{\tempbox}{\includegraphics[width=.45\columnwidth]{scarico_2}}%
\subfloat[Big figure]{\usebox{\tempbox}}%
\qquad
\subfloat[Small figure]{\vbox to \ht\tempbox{\vfil\includegraphics[width=.45\columnwidth]{controforza}\vfil}}%
\caption{Two more sub-floats.}
\label{fig:vertcenter}
\end{figure}`
e… le figure finiscono una sotto l’altra anziché affiancarsi (la figura bassa è però correttamente contenuta in una “scatola” alta come l’altra figura).
Ho provato a sostituire \qquad con \hfill ma non è cambiato nulla. Tra l’altro, come si vede, ho impostato la laghezza di ciascuna figura al 45% della larghezza del testo, quindi lo spazio fisico per affiancarle dovrebbe esserci…
L’unico tentativo che ha avuto un mezzo successo è stato togliere \qquad e \hfill, lasciando cioè
`\subfloat[]{}%
\subfloat[]{}`
e ottengo le figure correttamente affiancate con le didascalie allineate in basso, ma se la figura 1 è giustamente allineata a sinistra con il testo, la figura 2 è mooolto spostata a destra, finisce fuori dai margini fin quasi a limite pagina lasciando uno spazio orizzontale enorme tra sè stessa e la figura 1…spero di essere stato chiaro.
Per la cronaca, nel mio prembolo c’è, tra l’altro:
`\documentclass[a4paper,titlepage,oneside,12pt]{article}
…
\usepackage{graphicx}
\usepackage[font=small]{caption}
\usepackage[a4paper,top=3cm,bottom=3cm,left=3.5cm,right=3.5cm,]{geometry}
\usepackage{floatrow,subfig}`
La documentazione trascura un fatto piuttosto importante: che il “…figure code…” va inserito in una \hbox:
`\subfloat[Small figure]{\vbox to \ht\tempbox{
\vfil
\hbox{\includegraphics[width=.45\columnwidth]{controforza}}
\vfil}}`
Naturalmente tutta questa roba va più utilmente messa nel preambolo:
`\newdimen\templen
\newcommand{\measure}[1]{{\sbox0{#1}\global\templen=\ht0 }}
\newcommand{\adjustheight}[1]{\vbox to\templen{\vfil\hbox{#1}\vfil}}`
Il tuo codice per le figure diventerebbe
`\begin{figure}
\centering
\measure{\includegraphics[width=.45\columnwidth]{scarico_2}}%
\subfloat[Big figure]{\includegraphics[width=.45\columnwidth]{scarico_2}}%
\qquad
\subfloat[Small figure]{\adjust{\includegraphics[width=.45\columnwidth]{controforza}}}
\caption{Two more sub-floats.}
\label{fig:vertcenter}
\end{figure}`
Dentro \measure puoi mettere qualsiasi cosa, non necessariamente il codice per la figura più grande, e puoi usare \adjust anche per più sottofigure.
Ciao
Enrico