Problema con file immagine .png (o .jpg) e LaTeX

  • Questo topic ha 10 risposte, 6 partecipanti ed è stato aggiornato l'ultima volta 14 anni fa da Spike.
  • Creatore
    Topic
  • #77725
    Up
    0
    Down
    ::


    Ciao a tutti,
    sto scrivendo una tesi con Kyle e ho un dubbio a riguardo dell’uso dei files .png e .jpg. Premetto che ho letto la pagina del sito in cui si tratta di figure (http://www.guit.sssup.it/latex/figure.php) e so che è sempre meglio usare .eps e sicuramente per grafici e semplici schemi è la miglior soluzione.
    Ma per alcune immagini, come per esempio i risultati di un’analisi cfd, in cui i “punti colorati” sono tanti preferirei usare immagini .png o .jpg perché sono più compatte. Nella pagina linkata sopra si dice che .jpg sono riconosciuti bene da latex.
    In effetti quando compilo con LaTeX il file dvi risulta corretto e include le immagini (uso il pacchetto graphicx che viene incluso nel file .cls).

    Quando poi faccio dvi2ps non dà nessun errore ma le pagine dove le immagini dovrebbero essere sono in continuo caricamento (sia con kdvi che con okular).
    Se poi faccio ps2pdf la conversione si ferma (il motivo ufficiale è che ha trovato link che vanno oltre l’ultima pagina, ma credo che il motivo vero sia l’uso delle immagini .png)

    Sbaglio qualcosa? Che voi sappiate esiste una scappatoia? In realtà almeno fino al file ps speravo di poter arrivare senza problemi.

    Scusate per la domanda da principiante, ma lo sono.
    Grazie in anticipo

    Pietro

Visualizzazione 9 filoni di risposte
  • Autore
    Risposte
    • #77726
      robitex
      Amministratore del forum
        Up
        0
        Down
        ::


        Tranquillo, usa liberamente i formati png e jpg, ma compilando con pdflatex.
        In ogni guida sono descritti i formati grafici supportati dai vari formati di compilazione.
        Io uso spesso i png se sono screenshot dello schermo, e pgfplots se sono grafici, TikZ se sono schemi e disegni al tratto.
        Buon lavoro e benvenuto sul forum.
        R.

      • #77727
        Up
        0
        Down
        ::


        dalla mia esperienza uso immagini .jpg e .png senza problemi, su tutti gli OS.
        inserisco semplicemente il nome dell’immagine senza il suo formato (esempio 01 e non 01.jpg o 01.png)

        il formato .eps è consigliato perchè non “sgrana”, ma personalmente lo utilizzavo solo su mac. su windows dava una marea di problemi e su linux (e quindi usando kyle) a volte si bloccava a volte no. magari dipendendeva da altri fattori, ma per tagliare la testa al toro, meglio gli altri formati, anche perchè, se non devi ingrandire molto, l’effetto “sgranamento” non ti impiccia più di tanto.

        il pacchetto graphicx devi sempre usarlo, a prescindere se carichi .eps, in quanto più completo!

        per quanto riguarda l’immagine con i puntini… io tempo fa creai dei grafi molto fitti in png e dovevo ingrandirli e non sgranavano…

      • #77728
        Up
        0
        Down
        ::


        Grazie delle risposte!
        Naturalmente avevo dimenticato di descrivere un aspetto del problema:
        su alcune immagini .eps uso psfrag per sostituire alcune stringhe con espressioni più complesse e compilando con PDFLatex non mi sembra possibile.

        Questa questione delle immagini mi sembra una coperta corta. C’è sempre un angolo scoperto!

      • #77729
        franen
        Partecipante
          Up
          0
          Down
          ::


          C’è una cosa che non mi torna, forse mi sto perdendo…
          se io provo a compilare con latex (quindi per ottenere un dvi) un documento in cui vorrei includere dei jpg o dei png, ottengo errore. Questo mi torna, perché da quel che so latex accetta solo file eps mentre pdflatex accetta jpg, pdf e png (e dalla TeXlive 2011 gestisce al volo anche i file post script).
          Quindi, com’è possibile che latex generi correttamente un dvi contenente immagini png?

          in linea generale il consiglio è quello di usare sempre pdflatex, se la tua distribuzione è aggiornata riuscirai a includere tranquillamente i file eps.

          Francesco

        • #77730
          Up
          0
          Down
          ::


          Ti assicuro che LaTeX riesce a linkare le immagini jpg o png in modo corretto dentro al file dvi (anche se in teoria, forse, non dovrebbe).
          Tutto si perde dal PostScript in poi!

          Per PDFLatex c’è la limitazione di psfrag a cui accennavo prima.

        • #77731
          robitex
          Amministratore del forum
            Up
            0
            Down
            ::

            ghillo” post=76877Ti assicuro che LaTeX riesce a linkare le immagini jpg o png in modo corretto dentro al file dvi (anche se in teoria, forse, non dovrebbe).
            Tutto si perde dal PostScript in poi!

            Per PDFLatex c’è la limitazione di psfrag a cui accennavo prima.

            Dipende dal tuo ciclo di produzione, ma di solito si preferisce lavorare con pdf.
            Se devi etichettare figure vettoriali lo puoi fare anche con Tikz.
            Ciao

          • #77732
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              Naturalmente non so che cosa fai nei minimi dettagli, ma dalla lettura del dvips.def (l’insieme di definizioni che latex usa per far girare graphicx) il formato png non c’è; e il formato jpg è trattato come un normale file bmp (vi è citato anche il formato msp che non ho mai sentito nominare ed ho il sospetto che si tratti di un errore di battitura al posto di mps (METAPOST) che è notoriamente accettato da dvips, però non escludo di star prendendo una papera colossale).

              Ora il formato jpg non è un formato bitmappaed )bmp) ma è un file compresso, ed eistiono adeguati applicativi per avvolgerlo del debito codice postscript e trattarlo come un normale eps; non escludo quindi che le recenti modifiche a dvips abbiano incluso questa traformaione in modo automatico, ma resta sempre il fatto che il formato png non è nemmeno preso in considerazione.

              Tornando a noi e al tuo problema, vuol dire che tu crei fi file eps con gli agganci a psfrag con un adeguato softaware da disegno. Bene; non c’è niente di male a fare una cosa del genere, ma dopo se vuoi sovrapporre qualcosa scritto con, specialmente simboli o espressioni matematiche, o usi appunto psfrag, oppure sovrapponi detti simboli o espressioni al disegno con un qualunque programma grafico interno al sistema TeX,dal semplicissimo ambiente picture (un po’ laborioso ma usabile) al più moderno e potentissimo TikZ. Tuttavia TikZ è anche capace di fare il disegno direttamante con comandi interni al file .tex sorgente, quindi perché usare un programma esterno? solo perché è interattivo? i assicuro che con i riferimenti simbolici di dove vuoi mettere le varie parti del disegno, la “programmazione” del disegno con TikZ non è affatto difficile; certo bisogna leggere il manuale (texdoc tikz da terminale) perché TikZ non si improvvisa.

              Poi puoi usare anche inkscape, che produce disegni vettoriali e consente l’esposrtazione in formato vettoriale pdf oltre a provvedere alle varie scritte facendo lui stesso l’overlay delle scritte al disegno. Forse un po’ più complicato di TikZ per i vari passaggi da eseguire, ma certamente più semplice da usare grazie alla sua finestra di disegno interattivo.

              In sostanza oggi non c’è nessun bisogno di passare per il formato eps, per altro digerito senza singhiozzi direttamente da pdflatex.

            • #77733
              Up
              0
              Down
              ::


              Grazie mille a OldClaudio e robitex per queste altre risposte.
              Ho letto solo ieri di TikZ e mi ha incuriosito. L’ho installato e sicuramente prima o poi lo guardo, ma attualmente sono veramente in ritardo e sto scrivendo la mia tesi il più velocemente possibile.
              Per quanto riguarda il mio caso attualmente uso Tec360 per visualizzare dei file CGNS (sono essenzialmente dei file standardizzati che contengono risultati di analisi CFD) e mi torna molto bene di esportarli come file eps (che possono essere sia vettoriali che immagine, ma non so in che modo vengano immagazzinati i dati con questa ultima opzione). Una volta esportati li collego nel documento latex e uso psfrag per sostituire stringhe all’interno delle immagini con le espressioni matematiche richieste. Tutto funziona bene.
              Il solo intoppo è quello che ho descritto prima: alcune volte non ho bisogno di corregere con psfrag e le immagini .eps (entrambi i tipi) possono essere inutilmente grandi (dell’ordine del megabyte o più) e mi piacerebbe sostituirle con file png ad alta risoluzione che occupano un decimo o meno dello spazio.

              Credo che per adesso non ci sia nessuna altra soluzione (non ho tempo e non voglio rischiare) che andare di eps. Ho notato che poi nel pdf tutto viene molto compresso rispetto al ps per cui non è così male.

              Un’altra strada (stamattina ho fatto qualche ricerca) consiste nel creare files pdf dagli eps immettendo tutte le modifiche del caso e poi usare questi per compilare direttamente con PDFLatex. Purtroppo è un po’ macchinoso e devo dire che PDFLatex con immagini pdf (come da manuale del bravo utilizzatore) mi dà dei problemi (immagini di dimensioni sballate e altre cose meno gravi) quindi vado la strada ben battuta degli eps.

              Pietro

            • #77734
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::

                Un’altra strada (stamattina ho fatto qualche ricerca) consiste nel creare files pdf dagli eps immettendo tutte le modifiche del caso e poi usare questi per compilare direttamente con PDFLatex. Purtroppo è un po’ macchinoso e devo dire che PDFLatex con immagini pdf (come da manuale del bravo utilizzatore) mi dà dei problemi (immagini di dimensioni sballate e altre cose meno gravi) quindi vado la strada ben battuta degli eps.

                Impossibile che pdflatex ti dia dei problemi con delle immagini pdf; basta che tu regoli le dimensioni usando [tt]\includegraphics[widht=0.7\textwidth]{immagine}[/tt] e l’immagine.pdf ti va a finire dove hai messo il tuo \includegr[hics con la larghezza esatta di 0.7 vole la giustezza del testo.

                Del resto l’editing delle immagini è sempre un problema; l’importante è che el immagini vettoriali restino vettoriali; se apri un file vettoria (eps o pdf) con Gimp, con Photshop, eccetera, puoi modificarlo come ti pare e piace, ma non lo puoi salvare nello stesso formato e perdi la vettorialità.

                Quindi va benissimo salvare i file eps e convertirli in png, ma poi non li puoi importare con latex, che come ti ho detto nel precedente messaggio non importa i png (ho la mia distribuzione aggiornata a due o tre giorni fa, quindi non dispongo di software obsoleto…).

                Io fossi in te sperimenterei meglio: se Tex360 ti permette di esportare in altri formati, diversi da eps, provaci e vedi che estensioni hanno; sicuramente saranno esportati meglio di quanto possa fare un generico software di image editing.

                Non ho esaminato mai il caso di usare il moderno pdflatex (che gestisce bene i file eps) usando anche il pacchetto pdffrag; non escludo che la cosa possa essere compatibile. Se non lo fosse, creati un piccolissimo file .tex che usa psfrag e importa uno solo dei tuoi file .eps; compilalo con latex–>dvips–>ps2pdf; se usi la classe standalone, forse riesci anche ad ottenerlo scontornato, ma non credo che funzioni con latex; se non funziona, aggiungi un passo alla catena di conversioni e chiama anche il comando crop; scrivendoti una piccola procedura bat (su windows) o bash(su Linux, Mac, ecc.) puoi fare tutto da terminale con un unico comando. Quello che ottieni è l’immagine vettoriale originale, arricchita delle espressioni matematiche, e senza contorni bianchi attorno (il rettangolo che include l’immagine è esattamente tangente al suo contenuto, ma è sempre un rettangolo, non è che segua il contorno dell’immagine) e in formato pdf Poi al tuo file della tesi, composto in pdf con pdflatex, fai leggere questi file pdf ottenuti dagli originali eps ma conservando ad ogni momento la forma vettoriale; nulla si sgrana e l’unico problema , semmai, è quello di non rimpicciolire troppo le immagini vettoriali così ottenute, perché se il fattore di scala è troppo piccolo i tratti più sottili, i dettagli più fini, potrebbero sparire. Ma questo non è un problema né di eps, né di pdf, ma dell’inesperienza di chi maneggia le immagini. è possibile scalarle, ma non di troppo, in particolare non devono venire rimpicciolite troppo. Cosa vuol dire troppo dipende dall’immagine e dalla finezza dei suoi particolari, ma direi che una riduzione all’80% sia sempre accettabile; ridurre con un fattore di scala più piccolo può portare alla perdita dei dettagli; dipende anche dalla qualità dell’hinting.

              • #77735
                Up
                0
                Down
                ::

                Dr Spencer Reid” post=76871..su windows dava una marea di problemi e su linux (e quindi usando kyle) a volte si bloccava a volte no. magari dipendendeva da altri fattori, ma per tagliare la testa al toro, meglio gli altri formati

                Mai avuto nessun problema con i file .eps quando compilavo con latex su Windows. Sicuramente oggi la cosa migliore (come già accennato) è sostituire questo formato con il formato .pdf e compilare con pdfLaTeX così da conservare la vettorialità delle immagini, evitando l’effetto “sgranato” (perdita di qualità) quando si ingrandisce la stessa. Magari sul monitor ingrandendo non si nota molto la differenza, ma quando si stampa se le immagini non sono di alta qualità, o vettoriali, l’effetto si nota molto di più.

                Ciao
                Fra

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

            Go to top