[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico] [volume] [parte]
Il formato PDF (Portable document format) è una derivazione del PostScript, con meno pretese di quel formato. Tuttavia, lentamente, il formato PDF tende a prendere il posto di quello PostScript.
Teoricamente, lo stesso Ghostscript dovrebbe essere in grado di elaborare i file PDF, sia per convertire questi in PostScript, sia per fare l'operazione opposta. In pratica, nella maggior parte dei casi, queste operazioni falliscono. Attualmente, sembra siano utilizzabili solo i programmi del pacchetto Xpdf, composti essenzialmente da un visualizzatore in anteprima, accompagnato da un paio di programmi di conversione.
xpdf [opzioni] [file_pdf [n_pagina]]
xpdf (1) è un programma per l'ambiente grafico X, in grado di visualizzare il contenuto dei file in formato PDF. Può essere avviato semplicemente, senza indicare argomenti; in tal caso sarà possibile caricare un file PDF attraverso il menù che si ottiene premendo il terzo tasto del mouse. Se si indica un file nella riga di comando, questo viene aperto immediatamente; eventualmente può anche essere aggiunto un numero di pagina che rappresenta il punto da cui si vuole iniziare la visualizzazione.
La stampa del file PDF può essere ottenuta selezionando il tasto che rappresenta la stampante. Il programma propone il nome di un file PostScript nel quale salvare le pagine desiderate; se si indica una pipeline nella forma |comando, senza lasciare spazi prima e dopo la barra verticale, si inviano queste pagine nello standard input del comando specificato (per esempio |lpr per richiamare la stampa).
-ps file_ps
Permette di specificare il file predefinito per l'uscita PostScript. In pratica si tratta del file che viene proposto quando si chiede di stampare.
$
xpdf prova.pdf
Carica il file prova.pdf
e inizia a visualizzare la prima pagina.
$
xpdf -ps '|lpr'
Avvia xpdf senza caricare alcun file PDF, ma specificando che il file PostScript da utilizzare per le stampe è una pipeline diretta al comando lpr.
pdftops [opzioni] file_pdf [file_ps]
pdftops (2) converte file dal formato PDF in PostScript. Se viene omessa l'indicazione del nome del file PostScript nella riga di comando, questo viene determinato sostituendo l'estensione .pdf
con .ps
.
-fn_pagina_iniziale
Permette di specificare il numero della pagina iniziale del gruppo da convertire.
-ln_pagina_finale
Permette di specificare il numero della pagina finale del gruppo da convertire.
$
pdftops prova.pdf prova.ps
Converte il file prova.pdf
in prova.ps
.
$
pdftops -f10 -l20 prova.pdf prova.ps
Estrae dal file prova.pdf
le pagine da 10 a 20, generando il file prova.ps
in formato PostScript.
pdftotext [opzioni] file_pdf [file_txt]
pdftotext (3) converte file dal formato PDF in testo puro, con tutte le limitazioni che ciò significa. Se viene omessa l'indicazione del nome del file di testo nella riga di comando, questo viene determinato sostituendo l'estensione .pdf
con .txt
.
Le opzioni già descritte a proposito di pdftops funzionano anche con questo programma. Naturalmente ne sono disponibili altre, come descritto nella documentazione pdftotext(1).
Allo stato attuale, un filtro in grado di convertire un file PDF allo scopo di inviarlo alla stampa, deve passare necessariamente per la conversione in PostScript. In generale, il programma migliore per questo è pdftops, del pacchetto Xpdf, come è già stato indicato.
Nella realizzazione di uno script del genere, occorre tenere presente che pdftops ha bisogno di accedere al file PDF in modo non sequenziale (e lo stesso varrebbe comunque anche per Ghostscript), per cui questo non può essere fornito attraverso lo standard input. Quello che segue è uno script che cerca di ovviare all'inconveniente:
#!/bin/sh # Definisce il nome di un file temporaneo. FILE_PDF=`tempfile` # Trasferisce lo standard input nel file temporaneo. cat > $FILE_PDF # Trasforma il file PDF in PostScript, emettendo il risultato attraverso # lo standard output. /usr/bin/pdftops $FILE_PDF -
Volendo intervenire nella configurazione di Magicfilter, si può sostituire la direttiva riferita al formato PDF, che di solito fa uso di Ghostscript come si vede qui,
# PDF 0 %PDF fpipe \ /usr/bin/gs -q -dSAFER -dNOPAUSE -r600 -sDEVICE=ljet4 -sOutputFile=- $FILE
in modo che utilizzi pdftops:
# PDF 0 %PDF fpipe /usr/bin/pdftops $FILE -Appunti di informatica libera 2003.01.01 --- Copyright © 2000-2003 Daniele Giacomini --
daniele @ swlibero.org
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome pdf.html
[successivo] [precedente] [inizio] [fine] [indice generale] [violazione GPL] [translators] [docinfo] [indice analitico]