Ciao walrus.
walrus ha scritto:
ho inserito nel mio documento Latex una serie di circa 10 immagini consecutive usando ripetutamente questo codice:
[...]
tra un'immagine e un'altra io vorrei inserirci del testo, ma Latex me lo inserisce prima della prima immagine, e non dove io vorrei. Dove sta il problema?
Il problema sta nel fatto che gli ambienti figure e table sono considerati da LaTeX ambienti mobili, e pertanto è il sistema stesso a decidere dove posizionarli, non tu, anche se cerchi di specificare delle opzioni di posizionamento.
Di conseguenza, se desideri posizionare a mano i tuoi oggetti, non devi usare questi ambienti.
Una semplice soluzione per questo problema è quella di usare l'ambiente center e basta, ammesso che tu voglia che le immagini risultino centrate:
Codice: Seleziona tutto
Testo prima delle figure
\begin{center}
\includegraphics[width=13.7cm, height=8.2cm]{Figure22.eps}
\end{center}
Testo in mezzo alle figure
\begin{center}
\includegraphics[width=13.7cm, height=8.2cm]{Figure23.eps}
\end{center}
Testo dopo le figure
Se vuoi, puoi vedere il tutto anche in modo più astratto; nel preambolo puoi definire un ambiente apposito per le immagini:
Codice: Seleziona tutto
\newenvironment{immagine}{
\begin{center}
}{
\end{center}
}
Questo ambiente può essere richiamato nel corpo nel modo seguente:
Codice: Seleziona tutto
Testo prima delle figure
\begin{immagine}
\includegraphics[width=13.7cm, height=8.2cm]{Figure22.eps}
\end{immagine}
Testo in mezzo alle figure
\begin{immagine}
\includegraphics[width=13.7cm, height=8.2cm]{Figure23.eps}
\end{immagine}
Testo dopo le figure
Se desideri che anche all'interno di questo ambiente si possa fare riferimento alle immagini, nell'indice delle figure e nel corpo del documento, carica il pacchetto caption nel preambolo:
In questo modo puoi usare il comando \captionof nel corpo:
Codice: Seleziona tutto
\begin{immagine}
\captionof{figure}[Testo corto]{Testo lungo}\label{fig:sigla}
\includegraphics[width=13.7cm, height=8.2cm]{Figure22.eps}
\end{immagine}
C'è purtroppo un effetto collaterale: se non usi gli ambienti mobili figure e table ma gestisci la situazione a mano, come ti ho fatto vedere io, c'è il rischio che se piazzi l'immagine verso la fine della pagina, la didascalia si trovi in una pagina e la figura in un'altra. Per evitare questo, l'autore del pacchetto caption consiglia di inserire il comando \captionof all'interno di un comando \parbox o di un ambiente minipage. In questo modo, la situazione diventa però più complicata da gestire. Ecco perché sarebbe meglio fare affidamento sugli ambienti mobili, anche se talvolta questo significa che le figure e le tabelle non vanno a finire proprio dove vorremmo noi...
Alcune note sul codice che hai suggerito tu:
Codice: Seleziona tutto
\begin{figure}[htbp]
\begin{center}
\includegraphics[width=13.7cm, height=8.2cm]{Figure22.eps}
\caption{Water Depth Raster Map generated by flooding2 with 8 neighbors for each cell (input: 20cubic meters per cell).}
\label{Water Depth Raster Map generated by flooding2 with 8 neighbors for each cell (input: 20cubic meters per cell).}
\end{center}
\end{figure}
- l'ambiente center dentro a figure o a table inserisce dello spazio extra sopra e sotto alla figura, spesso non voluto; se desideri solamente che la figura venga centrata orizzontalmente, puoi usare il comando \centering;
- al giorno d'oggi si tende ad utilizzare sempre di meno il formato EPS e l'approccio di composizione che coinvolge LaTeX, Dvips e Ghostscript. È più comune invece usare pdfLaTeX per comporre, e passare quindi dal sorgente LaTeX direttamente al formato PDF. In questo caso, le immagini da includere nel documento vanno salvate in formato PDF se sono vettoriali, e nel formato JPG o PNG se sono raster. In quest'ultimo caso, i file grafici pesano molto di meno rispetto al formato EPS. Inoltre non è necessario specificare l'estensione dei file. L'unica ragione per continuare ad usare il vecchio approccio di composizione è la dipendenza da certi pacchetti, come psfrag e/o pstricks. Quindi vedi tu se questo è il tuo caso;
- forse è meglio mettere la didascalia prima dell'immagine e non dopo, così quando si clicca sull'indice e si viene portati alla figura, si vede la descrizione sintetica fornita dalla didascalia e subito sotto l'immagine vera e propria;
- se usi un indice per le figure, la didascalia che fornisci tu è un po' troppo lunga per comparirvi; meglio usare la forma \capion[Testo breve]{Testo molto molto più lungo}, così la corrispondente voce dell'indice sarà più leggibile;
- anziché chiamare i file con nomi del tipo Figure22, non è meglio dare dei nomi che rispecchino il loro contenuto (es. waterdepth)? Questo, tra l'altro, perché se hai duecento immagini e in posizione cinquanta ti rendi conto che ne devi inserire ancora una, che cosa fai, ti metti a cambiare il nome di ciascuna (anche se forse questa cosa la potresti gestire con uno script...)?
- l'etichetta per la didascalia è troppo lunga; di norma si usa un suffisso di pochi caratteri che dovrebbe codificare il tipo di oggetto che si desidera rappresentare (es. cha per i capitoli, sec per le sezioni, tab per le tabelle, fig per le immagini ed eq per le equazioni) seguito da un carattere di due punti e da una stringa sintetica (es. depth).
Se desideri usare il codice per gli ambienti mobili, ti consiglio un possibile miglioramento del tuo codice:
Codice: Seleziona tutto
\begin{figure}[htbp]
\centering
\caption[Water Depth Raster Map]{Water Depth Raster Map generated by flooding2 with 8 neighbors for each cell (input: 20cubic meters per cell).}
\label{fig:depth}
\includegraphics[width=13.7cm, height=8.2cm]{Figure22}
\end{figure}
Ciao e a presto!