Re: immagine su doppia colonna

#86156
OldClaudio
Partecipante
    Up
    0
    Down
    ::


    Una immagine con le dimensioni 28 per 11 portata a larghezza completa del testo può stare in effetti in testa alla pagina, ma non ce ne possono stare due; quindi è evidente che le tue due immaigni a larghezza piena devono stare su pagine diverse; generalmente LaTeX, con il suo algoritmo per costruire la pagina da inviare al file di uscita, mette di default le figure asteriscate all’inizio della pagina successiva a quella dove si trova il testo sorgente che racchiudeva l’ambiente figure*. Dunque quello che ottieni è normale.

    Però può succedere che la seconda delle due figure asteriscate non abbia abbastanza testo dopo, e quindi vada a finire in fondo al capitolo o in fondo al documento. Prova il segiuente esempio minimo compilabile:`% !TEX TS-program = pdflatex
    % !TEX encoding = UTF-8 Unicode

    \documentclass[a4paper,twocolumn]{book}

    \usepackage{lipsum}

    \begin{document}
    \lipsum[1-4]

    \begin{figure*}
    \unitlength=\dimexpr \textwidth/28\relax
    \begin{picture}(28,11)
    \put(0,0){\framebox(28,11){}}
    \end{picture}
    \caption{Prima figura}
    \end{figure*}

    \lipsum[5-8]

    \begin{figure*}
    \unitlength=\dimexpr \textwidth/28\relax
    \begin{picture}(28,11)
    \put(0,0){\framebox(28,11){}}
    \end{picture}
    \caption{Seconda figura}
    \end{figure*}

    \lipsum[9-20]

    \end{document}`

    Se nell’ultimo comando \lipsum lasci così com’è vedi che le due figure compaiono in testa a due pagine consecutive; se invece ne cambi l’argomento facoltatio da [9-20] a [9-12] constati che la seconda figura va in fondo al documento. Perché? perché il primi \lipsum sono quasi tutti consumati dalla prima pagina, e non c’è abbastanza testo nella seconda per rimepirla completamente e rinviare qualche capoverso alla terza pagina. Gia mettendoci 13 al posto di 12, una parte dell’ultimo cpaoverso va nella terza pagina e la figura va al suo posto desiderato in testa alla pagina.

    Credo di averti spiegato l’intero meccanismo. Se vuoi approfondire puoi leggere la Guida GuIT dove in diversi punti si discute o descrive come vengono inseriti gli oggetti mobili (detti anche galleggianti, flottanti, floating bodies, eccetera); l’algoritmo seguito da LaTeX è piuttosto complesso, ma in condizioni normali produce i risultati migliori. In condizioni anomale si possono avere diversi inconvenienti, tra i quli quelli che tu lamenti.

    Se non sai cos’altro scrivere nel tuo testo per mettercene abbastanza da non fare andare la seconda figura in fondo al testo, puoi provare a mettere i due ambienti figure* consecutivi l’uno all’altro, senza metterci nessun testo in mezzo; tanto LaTeX te li sposta altrove, dove tipograficamente stanno bene; tu vi fai riferimento con i label, \fref, \pageref, \vref, e ogni altro comando per la cross reference, quindi in realtà non è importante dove questi oggetti siano veramente; l’importante è che tu non vi faccia riferimento con “… come si vede nella figura seguente …”. Comunque messi vicini nel testo sorgente, diventa facile copiarli in blocco e spostarli assieme un po’ prima o un po’ dopo in modo da ottenere risultati migliori. almeno tipograficamente.

    Dimenticavo: forse lo fai già, e nel mio esempio minimo compilabile non era necessario, ma sarebbe opportuno che quando componi a due colonne usassi sempre il pacchetto fixltx2e che sistema un po’ di difettucci nella composizione a due colonne; se vuoi avere maggiore flessibilità nella collocazione di figure a giustezza piena, usa dblfloatfix (senza caricare fixltx2e) che ti permette di usare anche il codice di posizionamento b anche per le figure a giustezza piena.

    Go to top