Ghostscript je
neverjetno pomemben program za tiskanje v Linuxu. Večina
tiskalniškega programja sistemov Unix ustvarja postscript, ki tipično
zahteva 100 dolarjev vreden dodatek k tiskalniku. Ghostscript je, po drugi
strani, prost program in lahko ustvari jezik vašega tiskalnika iz
postscripta. Ko ga zvežete z vašim vhodnim filtrom za lpd
,
vam daje navidezni postscriptni tiskalnik in vam neznansko poenostavi
življenje.
Ghostscript je dostopen v dveh oblikah. Komercialna različica ghostscripta, imenovana Aladdin Ghostscript, se lahko prosto uporablja za osebno rabo, a ne sme biti razširjana s komercialnimi distribucijami Linuxa. Na splošno je približno leto dni pred prostim ghostscriptom; trenutno, na primer, podpira številne barvne brizgalnike, ki jih starejši ghostscripti ne, in ima malo boljšo podporo PDF.
Prosta različica ghostscripta je GNU Ghostscript in je preprosto postarana različica Aladdin Ghostscripta. Ta nekoliko čudni dogovor je omogočil podjetju Aladdin, da je postalo projekt prostega programja, ki se v celoti financira sam; najnovejše različice napišejo L. Peter in nekaj zaposlenih, in so licencirane, da jih izdelovalci strojne in programske opreme lahko uporabijo v komercialnih izdelkih. Ta shema je omogočila, da se je L. Peter mnoga leta nepretrgoma ukvarjal z ghostscriptom, žal pa je zavrla sodelovanje širše skupnosti prostega programja. Posebej avtorjem gonilnikov se zdi tak dogovor slab. Načrti L. Petra za upokojitev narekujejo večjo vpletenost skupnosti v projekt, zato razmišlja o spremembah licence in je ustanovil projekt na SourceForge.
Karkoli že počnete s programom
gs
, preverite, ali ste ga
pognali z izbiro za preprečitev dostopa do
datotek (-dSAFER
). Postscript je polno funkcionalen jezik in
slab program v postscriptu vam lahko povzroči precejšen glavobol.
Ko smo že pri PDF, Adobovem formatu za prenosljive dokumente (angl. Portable Document Format), ta je (vsaj do 1.3) pravzaprav le malo več kot organiziran postscript v stisnjeni datoteki. Ghostscript lahko obvlada vhod v PDF prav tako, kakor lahko obvlada postscript. Torej ste lahko prvi v ulici, ki ima tiskalnik, zmožen tiskati PDF.
Tipično se ghostscript
požene s katerimkoli magičnim filtrom,
za katerega se odločite (priporočam apsfilter
ali svoj lastni
lpdomatic
, če vaš dobavitelj ni dodal ničesar, kar bi vam
ustrezalo), a zaradi razhroščevalnih namenov ga je pogosto priročno
pognati neposredno.
gs -help
vam izpiše kratek informativni seznam izbir in
dostopnih gonilnikov (bodite pozorni na to, da je to seznam
gonilnikov, podprtih ob prevajanju, ne celoten seznam vseh dostopnih
gonilnikov).
Za poskus lahko poženete gs
takole:
gs <izbire> -q -dSAFER -sOutputFile=/dev/lp1 test.ps
Marsikaj lahko storite, če niste zadovoljni z
izhodom programa gs
(pravzaprav lahko storite, karkoli se vam
prekleto ljubi storiti, saj imate izvirno kodo).
Nekatere od teh izbir so poleg drugih opisane v knjigi ghostscript
User Guide (datoteka
Use.htm v
distribuciji ghostscripta), verjetno nameščena v /usr/doc
ali
/usr/share/doc
v vašem sistemu) in so izvrstni kandidati za
gonilniške izbire v vašem filtrirnem sistemu ali deklaraciji gonilnika
PDQ.
Položaj, velikost in aspect ratio slike na strani, se nadzoruje v ghostscriptu z gonilnikom, odvisnim od tiskalnika. Če se vam zdi, da prihajajo vaše strani iz tiskalnika prekratke ali predolge ali dvakrat prevelike, boste morda želeli pogledati modul z izvirno kodo za vaš gonilnik in nastaviti parametre, da bodo ravno pravšnji za vas. Žal je vsak gonilnik drugačen, tako da vam ne morem točno povedati, kaj morate nastaviti, a večina kode je razumno dobro komentirana.
Večina nelaserskih tiskalnikov trpi zaradi dejstva, da so njihove
pike precej velike. Rezultat je pretemna slika. Če imate take težave,
morate uporabiti svojo prenosno funkcijo (angl. transfer function).
Preprosto ustvarite naslednjo datoteko v knjižničnem imeniku
ghostscripta in dodajte njeno ime v klicu gs
prav pred pravo
datoteko. Morda boste morali preskušati prave vrednosti, ki ustrezajo
vašemu tiskalniku. Manjše vrednosti dajo svetlejši izpis. Zlasti, če
vaš gonilnik uporablja Floyd-Steinbergov algoritem rasterizacije barv,
so nizke vrednosti (0.2--0.15) verjetno dobra izbira.
---8<---- odrežite in posnemite kot "gamma.ps" ----8<--- %! %prenosne funkcije za CMYK (cian, škrlatna, rumena, črna) {0.3 exp} {0.3 exp} {0.3 exp} {0.3 exp} setcolortransfer ---8<------------------8<---
S temi nastavitvami je mogoče tudi popraviti tiskalnike, ki imajo
nekakšne barvne napake. Če naredite kaj takega, priporočam uporabo
datoteke colorcir.ps
, ki jo dobite poleg ghostscripta (v
podimeniku examples/
) kot testno stran.
Za mnoge od novejših gonilnikov za barvne brizgalnike so na voljo izbire v ukazni vrstici ali različne gonilniške datoteke UPP, ki izvedejo gama popravke in druge spremembe, da prilagodijo tiskalnik različnim vrstam papirja. To bi si morali ogledati, preden se igračkate s postscriptom, da bi popravili to ali ono.
Privzeto stresanje barv (angl. color dithering) v ghostscriptu je optimalizirano za naprave nizke ločljivosti. Barve bo stresalo bolj čudno , da bi izdelalo izhod 60 ppi (ne dpi, ppi -- ,,navidezne`` barvne pike na inč, ki jih dobite po stresanju barv). To naredi bolj klavrn izhod na sodobnih barvnih tiskalnikih; brizgalnikih s fotopapirjem, posebej, so sposobni dosti boljših nastavitev ppi.
Da to nastavite, uporabite izbiro -dDITHERPPI=x
, pri čemer je
x
vrednost, ki naj se uporabi. Morda boste tako dosegli
želeni učinek z vsemi gonilniki ali pa tudi ne; številni sodobni
gonilniki (npr. gonilnik stp
za Epson Stylus) izvajajo
lastno stresanje barv in se ne ozirajo na to nastavitev. Nekateri
gonilniki lahko uporabljajo bodisi običajno ghostscriptovo ali
za gonilnik specifično stresanje barv (npr. gonilnik bjc600
za
Canon Bubblejet).
Stresanje barv v ghostscriptu je pravzaprav zelo osnovno. Marsikaj, kar je potrebno za dober izhod na sodobnih tiskalnikih, preprosto ni na voljo v jedru ghostscripta. Različni projekti, da bi popravili to stanje -- in svet prostega programja ima programje za to že pripravljeno -- so blokirani zaradi licenčnega stanja ghostscripta in posledično ,,katedralskega`` razvojnega sloga. Od dogodka Open Source Printing Summit 2000 naprej pa se vsi potrebni ljudje pogovarjajo o tem, zato lahko pričakujete, da se bo to v kratkem izboljšalo.