Cos’è un Ghostscript?

Nonostante il suo nome, Ghostscript non è uno script. È una suite di programmi software in grado di interpretare il linguaggio Postscript creato da Adobe Systems Inc. Attraverso questi programmi, un utente può convertire file in linguaggio Postscript in diversi formati di elaborazione di immagini raster (RIP) per la stampa e la visualizzazione o interpretare un file Postscript per una stampante che non dispone di funzionalità Postscript integrate. Questa suite di software può eseguire le stesse funzioni per i file PDF (Portable Document Format) e ha la capacità di convertire i file Postscript in PDF o viceversa.

L. Peter Deutsch ha creato la suite Ghostscript nel 1986 per il progetto GNU’s Not Unix (GNU) per fornire un mezzo per i sistemi Unix® open source per interpretare il linguaggio Postscript. Sebbene fosse destinato a essere un software open source, Deutsch aveva anche in programma di creare una versione commerciale, e quindi mantenne il copyright sul codice sorgente. Di conseguenza, il software ha finito per cadere sotto i confini di molte licenze diverse che ne limitavano l’uso in vari modi.

Deutsch formò la società Aladdin Enterprises, che prese la suite originale e ne pubblicò una versione chiamata Aladdin Ghostscript. Sebbene lo scopo di questo rilascio fosse quello di iniziare a lavorare su una versione commerciale, parte dell’accordo con il Progetto GNU prevedeva anche il rilascio di una versione gratuita. Deutsch ha quindi rilasciato una versione della General Public License (GPL) per GNU, e una versione di Aladdin Enterprises è stata rilasciata sotto quella che è stata chiamata la Aladdin Free Public License (AFPL), che era più restrittiva della GPL. Questa versione in seguito divenne semplicemente nota come AFPL Ghostscript.

La società Easy Software Products (ESP) ha sviluppato nel 1993 una versione chiamata ESP Ghostscript, anch’essa coperta da GPL. Questa versione è stata creata per essere compatibile con ESP Common Unix Printing System (CUPS). Nel 2006, quando CUPS è diventato un punto fermo per Linux® e altri sistemi operativi Unix®, ESP Ghostscript e la versione GPL si sono fusi per creare GNU Ghostscript del progetto GNU. In definitiva, tutti questi nomi, biforcazioni del codice sorgente del software e conflitti di licenza sono importanti da notare poiché due versioni sono emerse dalla mischia: Ghostscript, che è un software protetto da copyright di proprietà di Artifex Software Inc. e concesso in licenza per uso commerciale, e GNU Ghostscript , mantenuto dal Progetto GNU e dotato di una versione GPL.

Come interprete, lo scopo principale di questo software è prendere i comandi di descrizione della pagina Postscript e tradurli in un formato che può essere visualizzato sul monitor di un computer o su carta da una stampante. Quando viene eseguito, l’interprete visualizza un prompt per l’utente. Il linguaggio Postscript può quindi essere inserito direttamente nell’interprete o tramite un file di testo che contiene il linguaggio Postscript. Il metodo più comune è tramite un file di testo o un documento Postscript. Nella maggior parte dei file system del computer, i file Postscript sono identificati dal suffisso .ps.

Questo noioso metodo da riga di comando per l’utilizzo di Ghostscript è abbastanza inaccessibile per l’utente comune di computer, quindi sono emersi numerosi progetti software che utilizzano il software come back-end per visualizzare o stampare file Postscript e PDF. Il più comune è un programma chiamato GSview, che fornisce un’interfaccia utente grafica (GUI). Date le origini del software e la fornitura da parte di Adobe Systems Inc. di interpreti Postscript e PDF per molti sistemi operativi commerciali, la maggior parte del software GUI disponibile per lavorare con Ghostscript è sviluppato per funzionare con sistemi operativi gratuiti simili a Unix®.
Lo stesso Ghostscript, tuttavia, è stato portato per essere eseguito su numerosi sistemi operativi, incluse praticamente tutte le varianti simili a Unix®, Linux®, Macintosh®, Microsoft Windows™, oltre a una miriade di altri sistemi operativi. La ragione di ciò è probabilmente la capacità del software di agire come un RIP. In tali casi d’uso, Ghostscript funziona come un servizio, o demone, e agisce come un filtro di input per un dispositivo prendendo Postscript ed elaborandolo per una stampante o un display. Come motore per i dispositivi RIP, quindi, deve essere in grado di funzionare senza problemi con uno dei diversi sistemi operativi su cui sono costruiti i dispositivi RIP.