Avanti Indietro Indice

5. Mettere insieme testo e grafica con dvips.

In generale questa sezione si applica ad un documento TeX o LaTeX in cui siano presenti testo e grafica. teTeX, come la maggior parte delle distribuzioni TeX, è predisposto per richiedere i font Computer Modern. Quando vengono stampati documenti con font scalabili Type 1 o grafica, la resa dei font e della grafica è compito di dvips. dvips può usare sia font Computer Modern bit-mapped che scalabili Type 1, o una combinazione dei due. Come prima cosa ci concentreremo sulla stampa e la visione in anteprima della grafica.

In generale occorrerà seguire questa procedura ogni volta che un sorgente LaTeX contiene l'istruzione

 
\includepackage{graphics}
nel proprio preambolo. Questa istruzione fa sì che LaTeX includa il testo del pacchetto graphics.sty nel sorgente. Ci sono altri comandi che servono per eseguire operazioni relative alla grafica, e le istruzioni in documenti in TeX puro possono non suggerirti che c'è bisogno di usare dvips. La differenza sarà evidente comunque quando il documento sarà stampato senza figure o altri elementi grafici.

Quindi per ora ci concentreremo sulla stampa di documenti che usano il pacchetto LaTeX graphics.sty. Probabilmente vuoi dare un'occhiata al sorgente TeX originale. Non è incluso nella distribuzione teTeX, ma lo puoi trovare a

~CTAN/macros/latex/packages/graphics/grfguide.tex.
Incluso nella distribuzione teTeX c'è invece il file .dvi già elaborato da TeX. C'è una ragione per questo, ed ha a che fare con la necessità di includere font Type 1 perché il documento possa essere stampato correttamente. Se vuoi elaborare grfguide.tex con LaTeX leggi la prossima sezione. Per ora, comunque, faremo in modo di ottenere con dvips un output utilizzabile.

Il file grfguide.dvi si trova nella directory

texmf/doc/latex/graphics
Il primo passo per poter ottenere qualcosa di utile da grfguide.dvi consiste nel tradurlo in PostScript. Il programma dvips serve a questo scopo. Fa esattamente quello che il suo nome suggerisce. Ci sono molte opzioni con le quali può essere chiamato, ma la forma più semplice (o quasi) è

dvips -f -r <grfguide.dvi >grfguide.ps
Lo switch -f dice a dvips di lavorare come un filtro, cioè leggere dallo standard input e scrivere sullo standard output. dvips può anche essere configurato per inviare il suo output direttamente a lpr.

Se puoi stampare file PostScript sulla tua stampante con il comando lpr puoi digitare semplicemente

dvips -r grfguide.dvi
L'opzione -r dice a dvips di produrre le pagine in ordine inverso così che vengano impilate nell'ordine giusto in uscita dalla stampante. Usalo se questo è utile per la tua stampante.

dvips e metafont possono dover creare o no i nuovi font di cui grfguide.dvi ha bisogno, dipende se hai ancora i font che dvilj2 ha prodotto elaborando l'ultimo documento. Alla fine, comunque, dvips scriverà l'elenco delle pagine che ha tradotto in PostScript e avrai così un file PostScript pronto per essere inviato a qualunque dispositivo tu abbia.

Se sei fortunato (e ricco) allora hai una stampante in grado di capire direttamente il PostScript che potrà stampare direttamente grfguide.ps. Puoi inviare il file alla coda di stampa usando lpr. Se per qualche ragione il tuo software di stampa non funziona correttamente con i file PostScript puoi semplicemente inviare il file alla stampante con

cat grfguide.ps >/dev/lp0
o a qualunque altra porta la tua stampante è collegata. Comunque questo non è il metodo raccomandato per l'uso quotidiano.

Se vuoi o devi eseguire Ghostscript manualmente questa è la procedura standard per usarlo. La prima cosa da fare per eseguire Ghostscript è vedere quali sono gli argomenti della linea di comando, e si può fare così:

gs -help | less
Vedrai una lista dei dispositivi che Ghostscript supporta e molti altri comandi. Scegli il dispositivo che corrisponde maggiormente alla tua stampante. In genere stampo testo in bianco e nero e uso il driver cdjmono, che controlla una stampante a colori Deskjet in modo monocromatico (bianco e nero).

La linea di comando che uso è:

gs -dNOPAUSE -sDEVICE=cdjmono -sOutputFile=/tmp/gs.out grfguide.ps -c quit
Questo mette il mio output compatibile HP nella directory /tmp. È una buona idea usare una directory come /tmp, perché gs può essere un po' difficile riguardo ai permessi di accesso, e non puoi (né dovresti) contare sul fatto di essere sempre collegato come root quando effettui queste operazioni. Adesso puoi stampare il file:
lpr /tmp/gs.out
Ovviamente puoi mettere tutto in uno script della shell. Sul mio sistema ho due semplici script, pv e pr che inviano il file PostScript rispettivamente allo schermo o alla stampante. È possibile avere un'anteprima su schermo senza usare X, ma non è la cosa migliore. Quindi vale sicuramente la pena installare XFree86 per mostrare il documento sullo schermo.

L'ordine dei comandi in un comando gs è importante, perché alcune delle opzioni dicono a Ghostscript di cercare parti di codice PostScript nella sua libreria.

È importante ricordare che grfguide.dvi richiede sia font bit mapped Computer Modern che font scalabili Type 1. Se sei capace di mettere insieme font scalabili e bit mapped in un documento, sei sulla buona strada per diventare un TeXnico.

5.1 E se la mia stampante non è supportata?

La distribuzione teTeX ha solo una selezione limitata di driver DVI: dvips, driver per le stampanti Hewlett Packard LaserJet, e niente di più. Se hai una stampante non compatibile con le LaserJet hai due possibilità: puoi usare dvips e Ghostscript, cosa che raccomando comunque per le ragioni di cui ho già parlato, o puoi cercare altri driver DVI.

Alcuni driver DVI sono stati riscritti per Linux e sono disponibili già compilati. Si trovano nell'archivio Linux sul sito ftp://sunsite.unc.edu/pub/Linux/apps/tex/dvi/.

Il sito principale su cui viene mantenuta una libreria di driver DVI si trova all'Università dello Utah. Se non riesci a trovare là un driver che supporta la tua stampante è molto probabile che non esista. Puoi anche scrivere da solo il tuo driver DVI usando degli schemi disponibili là. L'URL del sito è ftp://ftp.math.utah.edu/pub/tex/dvi/.


Avanti Indietro Indice