Formati di file grafici

LATEX e PDFLATEX

PDFLATEX, quando usato con i pacchetti graphics o graphicx, può compilare correttamente i file PNG e JPG nei DVI e PDF, ma non è in grado di gestire i file EPS. Di converso, il processo di compilazione LATEX in DVI e conversione a PS e infine PDF supporta EPS, ma non supporta PNG e JPG.

Molti utenti vogliono creare dei documenti PDF, ma vogliono anche usare l'ottimo pacchetto Pstricks per creare grafica PostScript®, o vogliono usare i grafici PostScript® prodotti da programmi matematici e scientifici come Mathematica, Maple o MuPAD. Questi utenti di LATEX devono prima compilare in PostScript®, anche se vogliono creare documenti PDF, perché questi programmi producono del codice PostScript® che non può essere gestito da PDFLATEX. Però non è così difficile, perché Kile può aiutare.

Conversione della grafica

Per superare questa impasse, quando vuoi includere sia codice PostScript® che file PNG o JPG, hai a disposizione una serie di soluzioni:

  • Se hai bisogno di un file in formato PS, ma hai file grafici JPG o PNG, puoi semplicemente prima produrre un DVI con PDFLATEX, e poi usare dvips per creare il file PS. PDFLATEX è un'ottima scelta, se il sorgente non contiene nessun codice PostScript®.

  • Puoi convertire i file EPS a PNG o altri formati con applicazioni come Gimp o ImageMagick, e quindi usare PDFLATEX.

  • Un modo preferibile è convertire la grafica EPS in PDF con il comando epstopdf, presente in ogni distribuzione di TEX, e quindi usare PDFLATEX. Produce grafica di alta qualità, e puoi anche controllarne il risultato con alcune delle seguenti opzioni:

    -dAutoFilterColorImages=false
            -dAutoFilterGrayImages=false
            -sColorImageFilter=FlateEncode
            -sGrayImageFilter=FlateEncode
            -dPDFSETTINGS=/prepress
            -dUseFlateCompression=true
    

    Ancora meglio, se il sistema permette shell-escape, la conversione può essere fatta al volo. Tutto quello che devi fare è includere il pacchetto epstopdf, che fa parte delle distribuzioni TEX, con il comando \usepackage{epsdopdf}. Supponendo che il codice sia

            \includegraphics[width=5cm]{prova.eps}
    

    Quando chiami PDFLATEX con l'opzione --shell-escape, il file grafico prova.eps viene convertito automaticamente in prova.pdf.

    Questa conversione avverrà ogni volta che esegui PDFLATEX. Se il comando grafico viene dato implicitamente con:

            \includegraphics[width=5cm]{test}
    

    epstopdf controllerà se c'è già un prova.pdf disponibile, in modo da poter saltare la conversione.

  • Puoi convertire nell'altro senso, e usare LATEX e la conversione PS-PDF. Questa non è sempre una buona idea, perché l'incapsulazione EPS di file JPG o PNG può produrre file più grandi, che a loro volta producono documenti inutilmente grandi; questo però dipende molto dall'applicazione grafica che usi, perché EPS può incapsulare altri file grafici, ma non tutte le applicazioni supportano perfettamente questa possibilità. Alcune potrebbero anche cercare di ricostruire l'immagine JPG con vettori e vari script, che risulterà in file giganteschi. La conversione di tutti i file grafici in EPS può essere fatta con ImageMagick. Un altro semplice programma che fa correttamente questo processo è jpg2ps.

  • Puoi anche usare una conversione automatica. Tutti i file grafici sono convertiti al volo in EPS, e inseriti nel documento PS. Questa è una modalità comoda, ma devi impostare correttamente il sistema. Ciò viene discusso nella sezione sulla grafica EPS.

Usa il formato giusto per la grafica giusta

  • EPS è una specie di linguaggio vettoriale, che descrive tutte le linee e punti di cui l'immagine è composta; non perde molto quando viene ingrandito oltre la sua dimensione predefinita, e si adatta al meglio ai diagrammi e alla grafica vettoriale prodotta nativamente in EPS, che hanno un aspetto chiaro e netto pur mantenendo una dimensione molto ridotta.

  • PNG (o lo sconsigliato GIF) è un formato senza perdita, con buone compressione e qualità. È molto buono per diagrammi, scansioni di disegni, o qualsiasi cosa di cui vuoi mantenere la definizione. È a volte esagerato per le foto.

  • JPG è un formato con perdita, che comprime i file meglio di PNG al prezzo di qualche perdita nei dettagli delle immagini. Questo è normalmente irrilevante per le foto, ma potrebbe causare una cattiva qualità per diagrammi e disegni, e potrebbe far sparire del tutto le linee più sottili; in questi casi usa EPS o PNG.

Ma ricorda sempre il principio di conservazione della rumenta: nessuna conversione abbellirà una cattiva immagine.