problemi con ambiente wrapfloat

  • Creatore
    Topic
  • #72153
    Enzo
    Partecipante
      Up
      0
      Down
      ::


      Salve a tutti. volevo un aiuto, se è possibile.

      In pratica sto provando ad inserire una figura “avvolta” da testo con l’ambiente wrapfloat. Ho provato a far funzionare l’ambiente e, in linea generale, mi funziona tutto anche con ottimi risultati. Di fatto il testo si avvolgee perfettamente attorno alla figura senza problemi di paginazione.

      Però come al solito io mi devo complicare sempre la vita ed ho provato ad usare l’ambiente in prossimità di un elenco numerato ed è qui che ho iniziato ad avere problemi. Quello che succede è che l’elenco numerato non si “avvolge” attorno alla figura, ma, bensì, si formano due colonne separare nella pagina dove in una ha luogo la figura e nell’altra il testo!!

      Di seguito riporto un esempio di codice minimale, in modo da rendere più chiaro il tutto:
      `
      \documentclass[a4paper, 12pt, openany]{report}

      %imposta la codifica dei font
      \usepackage[T1]{fontenc}

      %lettere accentate da tastiera
      \usepackage[utf8]{inputenc}

      %per scrivere in italiano e/o in inglese ed altre lingue
      \usepackage[italian]{babel}

      %per impostare i margini
      \usepackage

      {geometry}

      %per impostare l'interlinea ad 1.5
      \usepackage[onehalfspacing]{setspace}

      ….
      ….
      ….

      %questi packages permettono di gestire le immagini
      \usepackage{graphicx, wrapfig, caption}

      \begin{document}

      testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo
      testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo
      testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo testo
      ……………..qui finisce un capoverso.

      \begin{wrapfloat}{figure}{r}{0pt}
      \includegraphics[width=0.4\columnwidth]{Immagine1}
      \caption{\footnotesize{Il ciclo di vita dei sistemi informativi.}}
      \label{fig:ciclo di vita}
      \end{wrapfloat}

      Qui inizia un capoverso lungo un rigo, immadiatamente dopo inizia l'elenco numerato composto da 6 item proprio cosi come
      di seguito:
      \begin{enumerate}
      \item{numero 1}
      testo item 1
      \item{numero 2}
      testo item 2
      \item{numero 3}
      testo item 3
      \item{numero 4}
      testo item 4
      \item{numero 5}
      testo item 5
      \item{numero 6}
      testo item 6
      \end{enumerate}
      …..
      …..
      …..
      \end{document}
      `

      Come dicevo qualche riga fà, accade che l’elenco numerato giace in una colonna della pagina, mentre la figura giace nell’altra colonna separatamente(in questo caso la destra cosi come si puo vedere dal codice). In pratica l’elenco numerato non si avvolge alla figura.

      So che un pò difficoltoso usare oggetti mobili e simili ed in particolare con le figure e con l’ambiente wrapfloat perche ho dato un occhiata in giro qui sul forum ed ho visto decine di discussioni a riguardo ognuna con un problema differente dall’altro. In ogni caso non sono riuscito a risolvere questo problema che ho riscontrato io pur facendo tante prove e “rubando” un po di codice visto
      nelle altre discussioni.

      Qualcuno di voi sarebbe cosi gentile da darmi qualche delucidazioni in merito?

      thanks in advance!
      Enzo.

    Visualizzazione 8 filoni di risposte
    • Autore
      Risposte
      • #72154
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Be’, il pacchetto wrapfig mette a disposizione gli ambienti wrapfigure e wraptable e nella pagina 1 della sua documentazione (texdoc wrapfig) Donald Arsenau dice chiaramnte che co sono dei problemi con le liste; certo si può usare anche l’ambiente wrapfloat, che è il papà anche di wrapfigure e wraptable, e di ogni altro floating environment creabile con altre classi o altri pacchetti però bisogna fare attenzine a certi dettagli, e comunque i problemi con le liste rimangono sempre.


          @dancko
          fai benissimo a sperimentare; ma prima di fare qualunque esperimento leggi le istruzioni, invece di andare a naso per poi andare a cercare sul forum risposte ad problemi che spesso sono diversi da quelli dei tuoi esperimenti; ti assicuro che non perdi tempo, anzi ne guadagni un mucchio. E l’inglese della documentazione di solito è un inglese per stranieri (English as a Foreing Language), per cui non è astruso come certe prose, anche scientifiche, dove si fa grande sfoggio di erudizione lingustica, invece di tentare di essere chiari con parole semplici.

          Naturalmente scagli al prima pietra chi è senza peccato: Io sono il primo a “peccare” e non scaglio pietre.

        • #72155
          Enzo
          Partecipante
            Up
            0
            Down
            ::



            @OldClaudio
            come al solito sei sempre esauriente nelle tue risposte. Grazie infinite.
            I tuoi consigli, ma in generale di tutti voi che siete esperti e colonne portanti del forum, sono sempre ben accetti! Li ascolto molto volentieri.

            Darò uno sguardo alla documentazione di Donald Arsenau.

            Ciao.

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


              Una wrapfig va circondata con testo “puro” e usata solo in circostanze eccezionali, mettendo in conto di investire del tempo in tentativi manuali per avere l’impaginazione desiderata. Queste cose nell’Arte ci sono.

            • #72157
              Up
              0
              Down
              ::

              lorenzo.pantieri” post=71334Una wrapfig va circondata con testo “puro” e usata solo in circostanze eccezionali, mettendo in conto di investire del tempo in tentativi manuali per avere l’impaginazione desiderata. Queste cose nell’Arte ci sono.

              Forse il riferimento a wrapfig potrebbe essere omesso nell’Arte
              o semplicemente abbreviato in una nota (per avvolgere il testo si veda wrapfig)

              Purtroppo figure circondate da testo sono uno delle tante “”esigenze”” che il principiante di LaTeX
              si porta dietro dalla sua nefasta esperienza con Word :D.
              Infatti le prime domande sono: come si allarga l’interlinea? Come si cambiano i margini?
              Come si mettono le figure proprio lì?

              Sarebbe bene che le risposte a queste domande fossero esoteriche.
              Un po’ come i numeri irrazionali ai tempi di Pitagora: c’erano, ma guai a dirlo in giro 😉

              Ciao
              Ivan

              @Enrico Spero di trovarti domani perché vengo apposta 😉

            • #72158
              Enzo
              Partecipante
                Up
                0
                Down
                ::


                Scusatemi, ma non capisco perchè wrapfig non è stato sviluppato in modo che potesse funzionare anche con testo “non puro” ma mischiato con codice come, ad esempio, lo sono gli elenchi numerati.
                Nell’Arte si parla di ragioni estetiche.

                Però volevo fare una considerazione personale a proposito, anche se di tipografia capisco poco anzi proprio nulla non avendola mai studiata che è la seguente, sperando di non dire eresie:
                io, ad esempio, nella mia tesi sto parlando del ciclio di vita dei sistemi informativi, il quale è composto da 6 fasi. Ora se si avvolge l’elenco delle 6 fasi attorno ad una bella foto che mostra le 6 fasi graficamente cosa c’è di strano o antiestetico? Oltretutto, una foto aiuterebbe non poco il lettore, facilitandogli la comprensione.

                Inoltre, alla fine, il risultato che ottengo in output(nel pdf per intenderci) sarà sempre “testo puro” che avvolge la foto. E’ nel file sorgente(il . tex per capirci) che il testo è mischiato con codice( del tipo \begin{enumerate}….testo….\end{enumerate}) ma nel file di output il risultato sarà una foto avvolta da “testo puro”(ovvero stringhe di caratteri), in ogni caso, sia se parliamo di elenchi numerati sia se non.

                Ciao, Enzo.

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

                  dancko” post=71343Scusatemi, ma non capisco perchè wrapfig non è stato sviluppato in modo che potesse funzionare anche con testo “non puro” ma mischiato con codice come, ad esempio, lo sono gli elenchi numerati.

                  Non si tratta (solo) di ragioni estetiche, ma anche TeXniche: il pacchetto richiede testo puro. Con elenchi, codici, titoli di sezione, eccetera il risultato non è garantito, e l’esperienza mostra che in questi casi non funziona (praticamente) mai.

                  Ivan, nell’Arte diciamo chiaramente che il pacchetto va usato in casi eccezionali. Il risultato mi piace, e nell’Arte lo vedo bene, anche perché un tocco “artistico” nella nostra guida ci sta bene. Direi di lasciare l’esempio nell’Arte, ma di calcare la mano sull’eccezionalità dei casi in cui va usato: wrapfig non va mai usato per fare cose “normali” (come quelle di cui parla dancko), ma solo per avere effetti particolari di impaginazione. In altre parole, se alla fine del lavoro si desidera dare un tocco artistico al proprio documento, ecco che (per uno o due oggetti al massimo: perché il tempo richiesto può essere molto), il pacchetto torna utile.

                  Insomma, wrapfig ha non va usato per raggiungere obiettivi funzionali, ma solo come ritocco estetico e decorativo. Questa cosa dobbiamo dirla più chiaramente. Per esempio, ricordo che tempo fa un forumista voleva inserire tutti gli oggetti con wrapfig: ecco, questa cosa non va fatta per nessun motivo!

                  Ciao,
                  L.

                • #72160
                  Enzo
                  Partecipante
                    Up
                    0
                    Down
                    ::


                    lorenzo.pantieri sei stato chiarissimo!

                  • #72161
                    OldClaudio
                    Partecipante
                      Up
                      0
                      Down
                      ::


                      LaTeX, o meglio, il suo programma di composizione pdftex, fa miracoli. Nel TeXbook c’è anche un capoverso sagomanto non mi ricorso se sia a forma di cuore o a forma di bicchiere o semplicemente come un cerchio; è insieriro come nota quasi marginale, nel seso che metà del capoverso è nel margine e l’altra metà è avvolta dal testo normale, che si “ritrae” seguendo il contorno esterno del capverso sagomanto.

                      Si tratta ovviamente di acrobazie fatte solo per mostrare la potenza del programma di composizione, non da usare per davvero! Ma, avrai notato, ho sempre detto “il capoverso” al singolare.

                      Ebbene sì, i motivi tecnici sono che si può specificare la sagoma dei bori di un solo capoverso e, quando questo finisce, vengono ripristinati i margini di default.

                      Wrapfig, se ben ricordo, dovendo ritagliare il capoverso avvolgenre solo secondo un profile rettangolare, riesce in qulache modo a contare quante righe restano per l’inserzione da avvolgere quando il capoverso finisce, e riesce a traferire questa informazione al capoverso successivo. Non ne sono sicuro, ma mi pare di ricordare che sia così.

                      Ammesso e non concesso che si davvero così, gli \item di una lista non sono capoversi “normali”; la loro forma stampata induce a pensare che siano dei normali capoversi, ma non lo sono; e quindi non possono ricevere in eredità dallo pseudo capoverso precedente il resto della sagoma non ancora usata dall’oggetto da avvolgere..

                      Soluzione (ipotetica): se ti pare che una foto, una figura possa aiutare il lettore a capire meglio quanto scritto nella lista, potresti in linea di principio mettere due minipage affiancate, in quella di sinistra, per esempio, componi la lista e in quella di destra includi la figura; naturalmente è meglio che i=tu includa entrambe le minipage affiancate dentro una minipage a giustezza piena, perché non si scomponga il loro assemblaggio, poi devi incrociare le dita affinché quel brano di testo non cada a fine pagina; e a quel punto ti converrebbe usare il pacchetto float, definire un nuovo float da chiamare come ti pare, e poi rendere flottante l’oggetto formato dalle due minipage affiancate, affinche LaTeX lo metta dove c’è posto e a cui fare riferimento con un \label, un \ref e una didascalia.

                      Vedi dunque che anche senza usare wrapfig, che non può funzionare di fianco ad una lista, qualunqe altro metodo per affiancare al figura alla lista richiede acrobazie di altro genere che ne sminuiscono l’efficacia.

                      Soluzione pratica: metti la foto o l’immagine in una figura flottante, e nella frase che introduce la lista, o in quella che la segue subito dopo, metti una frase che dica esplicitamente che quanto scritto nella lista è reso graficamente con la figura “tal.dei.tali” nella pagina “quella.lì”

                    • #72162
                      Enzo
                      Partecipante
                        Up
                        0
                        Down
                        ::


                        OldClaudio come al solito, sarò anche ripetitivo, ma non mi stancherò mai di dirlo, le tue risposte sono eccelse e piu esaurienti che mai.
                        E’ un piacere leggerle, ci si appassiona.

                        A quanto pare la “soluzione pratica”(l’ultima che hai scritto) sembra la più fattibile per due motivi, secondo me, il primo è dovuto al fatto che non sono ancora cosi pratico con LaTeX da saper fare tutte queste acrobazie per poter ottenere il risultato che voglio; la seconda è che, pur se ci riuscissi si snaturerebbe la filosofia di LaTeX, altrimenti esso stesso offrirebbe un metodo più semplice per farlo senza dover ricorrere a “trucchetti” particolari.

                        Ma poi, alla fine, dapperutto, nei testi, articoli, etc. etc. si trovano frasi del tipo, quanto appena detto è alla figura x pag. y, come tu stesso hai detto. Quindi nella mia tesi va più che bene questa soluzione.

                        Grazie infinite!

                        Enzo.

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

                    Go to top