cambiare posizionamento immagini (tutte alla fine del testo)

  • Creatore
    Topic
  • #9615
    Up
    0
    Down
    ::


    Ciao a tutti,
    problema:
    sto scrivendo una bozza di un articolo, ho testo, immagini e tabelle. I posizionamenti sono tutti ok, ho imparato ad usare bene i parametri opzionali t b h p e sarebbe tutto perfetto se non che …
    il mio “supervisore” se ne e` uscito con “metti tutte le tabelle e le figure alla fine” … io non ho voglia di tagliare e incollare tutti i comandi per poi, domani, rifare tutto l’opposto. quindi chiedo:

    non c’e` un modo per mettere tutte le figure e i flottanti in fondo al testo (tenendo separate figure e tabelle, cioe` x pagine di testo, y pagine di figure, z pagine di tabelle)??

    spulciando nel forum ho trovato il comando
    `
    \makeatletter
    \def\fps@figure{p}
    \makeatother
    `
    che e` perfetto inquanto mi mette tutte le figure nelle ultime pagine. Forse potrei anche accontentarmi ma volendo mettere anche le tabelle ho provato ad aggiugnere (me lo sono un po’ inventato partendo dal comando precedente)
    `
    \makeatletter
    \def\fps@table{p}
    \makeatother
    `
    purtroppo ho due problemi:
    a) le figure e le tabelle vengono posizionate insieme (come e` poi normale che sia essendo due oggetti flottanti). Cio` e` contro il mio desiderio di avere Figura 1 … N prima e poi Tabella 1 … M dopo
    b) purtroppo non me le mette piu` tutte alla fine, ma mi inserisce delle pagine di flottanti nel testo (forse e` un caso fortuito, dato dalla successione delle dimensioni delle mie figure, che utilizzando l’opzione solo per le figure me le metta tutte alla fine e non appena trova posto per inserire una pagina di oggetti flottanti).

    Che voi sappiate c’e` quindi un modo per appendere in fondo al testo una parte contentente tutte le figure ed una successiva (o precedente) contentente tutte le tabelle ??

    Vi ringrazio moltissimo
    Nucleo

Visualizzazione 9 filoni di risposte
  • Autore
    Risposte
    • #9616
      Up
      0
      Down
      ::


      aggiungo:
      ho verificato che era un caso fortuito che mi mettesse tutte le fig alla fine inerendo
      `
      \makeatletter
      \def\fps@figure{p}
      \makeatother
      `
      perche` ho modificato una tabella e ha trovato il posto per mettere una pagina di oggetti flottanti a meta` con tabelle e figure.

    • #9617
      Up
      0
      Down
      ::


      per quanto riguarda i float alla fine pacchetto endfloat. non so pero’ se permette di separare tabelle da immagini, bisogna guardare la doc
      ciao
      f

    • #9618
      lorenzo.pantieri
      Partecipante
        Up
        0
        Down
        ::


        L’opzione figuresfirst (attiva di default) mette le figure prima delle tabelle, mentre l’opzione tablesfirst fa il contrario.

        Non c’è che dire: LaTeX ha una risposta pronta per ogni esigenza di relatori e supervisori, per quanto peregrina essa sia…

        Ciao,
        L.

      • #9619
        Up
        0
        Down
        ::


        Ciao a tutti,
        ho provato a inserire la macro citata da Nucleo ma non sortisce alcun effetto. Ovviamente anche io ho la stessa necessità di dover mettere tutte le figure alla fine. Cercando un po’ in rete ho trovato la possibile soluzione con il comando \usepackage[noheads,nomarkers]{endfloat} inserito nel preambolo. Ahimè però ricevo il seguente errore:
        `! Package utf8x Error: MalformedUTF-8sequence.

        See the utf8x package documentation for explanation.
        Type H for immediate help.

        l.88 …aga all'indietro fino alle unità nascoste}

        ? `
        credo perché ho usato la a accentata nella didascalia. Ho provato a sostituire il pacchetto utf8x con latin1 o utf8 ma niente. Vi elenco tutti i pacchetti caricati:
        `\documentclass[12pt,a4paper,italian,oneside]{report}
        \usepackage[T1]{fontenc}
        \usepackage{microtype}
        \usepackage[utf8x]{inputenc}
        \usepackage{amsmath,amssymb,amsthm,mathtools,amscd,braket,comment,mathrsfs}
        \usepackage{bbm,dsfont}
        \usepackage[italian]{babel}
        \usepackage[pdftex]{graphicx}
        \usepackage{colortbl,booktabs,caption,float,wrapfig,bmpsize}
        \usepackage[noheads,nomarkers]{endfloat}
        \usepackage{subfig}
        \usepackage{yfonts}
        \usepackage{listings}`

        spero possiate aiutarmi. grazie in anticipo

        Alessandro

      • #9620
        Up
        0
        Down
        ::

        King_Lizard111″ post=82095Ciao a tutti,
        ho provato a inserire la macro citata da Nucleo ma non sortisce alcun effetto. Ovviamente anche io ho la stessa necessità di dover mettere tutte le figure alla fine. Cercando un po’ in rete ho trovato la possibile soluzione con il comando \usepackage[noheads,nomarkers]{endfloat} inserito nel preambolo. Ahimè però ricevo il seguente errore:
        `! Package utf8x Error: MalformedUTF-8sequence.

        See the utf8x package documentation for explanation.
        Type H for immediate help.

        l.88 …aga all'indietro fino alle unità nascoste}

        ? `
        credo perché ho usato la a accentata nella didascalia. Ho provato a sostituire il pacchetto utf8x con latin1 o utf8 ma niente. Vi elenco tutti i pacchetti caricati:
        `\documentclass[12pt,a4paper,italian,oneside]{report}
        \usepackage[T1]{fontenc}
        \usepackage{microtype}
        \usepackage[utf8x]{inputenc}
        \usepackage{amsmath,amssymb,amsthm,mathtools,amscd,braket,comment,mathrsfs}
        \usepackage{bbm,dsfont}
        \usepackage[italian]{babel}
        \usepackage[pdftex]{graphicx}
        \usepackage{colortbl,booktabs,caption,float,wrapfig,bmpsize}
        \usepackage[noheads,nomarkers]{endfloat}
        \usepackage{subfig}
        \usepackage{yfonts}
        \usepackage{listings}`

        spero possiate aiutarmi. grazie in anticipo

        Alessandro

        Non senza un esempio della didascalia che produce l’errore.

        Ciao
        Enrico

      • #9621
        Up
        0
        Down
        ::


        la didascalia c’è nel report dell’errore! la parola incriminata è “unità”

      • #9622
        Up
        0
        Down
        ::

        King_Lizard111″ post=82100la didascalia c’è nel report dell’errore! la parola incriminata è “unità”

        Capisco, ma non era tanto difficile aggiungere qualcosa al tuo esempio, non credi?

        Comunque, è un errore di endfloat che puoi correggere così:
        `\usepackage[noheads,nomarkers]{endfloat}
        \makeatletter
        \renewcommand\efloat@iwrite[1]{%
        \immediate\expandafter\protected@write\csname efloat@post#1\endcsname{}}
        \makeatother`
        Manda un bug report all’autore con il seguente esempio minimo:
        `\documentclass{report}
        \usepackage[T1]{fontenc}
        \usepackage[utf8]{inputenc}
        \usepackage{endfloat}
        \makeatletter
        \renewcommand\efloat@iwrite[1]{%
        \immediate\expandafter\protected@write\csname efloat@post#1\endcsname{}}
        \begin{document}
        \begin{figure}
        \caption{à}
        \end{figure}
        \end{document}`
        dicendo che la definizione originale con [tt]\write[/tt] è scorretta.

        Ciao
        Enrico

      • #9623
        Up
        0
        Down
        ::


        ciao,
        scusami ma non scrivevo dal pc e quindi non avevo il file sottomano. Ad ogni modo il problema era causato proprio dalle lettere accentate, infatti rimuovendole o commentandole, l’errore si spostava alla lettera accentata successiva. Con il tuo comando funziona tutto adesso, grazie! Potresti spiegarmi in breve in cosa consiste? Grazie ancora

        Alessandro

      • #9624
        Up
        0
        Down
        ::

        King_Lizard111″ post=82114ciao,
        scusami ma non scrivevo dal pc e quindi non avevo il file sottomano. Ad ogni modo il problema era causato proprio dalle lettere accentate, infatti rimuovendole o commentandole, l’errore si spostava alla lettera accentata successiva. Con il tuo comando funziona tutto adesso, grazie! Potresti spiegarmi in breve in cosa consiste? Grazie ancora

        Il pacchetto endfloat definisce la macro [tt]\efloat@iwrite[/tt] con [tt]\write[/tt] ed è sbagliato, perché questo comando esegue “l’espansione fino in fondo” del suo argomento; anche un semplice [tt]\emph{parola}[/tt] causerebbe danni. La macro giusta da usare è [tt]\protected@edef[/tt] che si occupa di non espandere la roba “pericolosa”.

        Ciao
        Enrico

      • #9625
        Up
        0
        Down
        ::


        ok, grazie mille. Ciao,

        Alessandro

    Visualizzazione 9 filoni di risposte
    • Devi essere connesso per rispondere a questo topic.

    Go to top