Avanti Indietro Indice

3. Printanje ISO 8859-2

Ovdje ću opisati način kako je kod mene riješeno printanje iz LaTeX-a, StarOffice-a i Communicatora. Glede printanja pod Linuxom, trebali biste procitati Printing-HOWTO i Printing-Usage-HOWTO. U svezi naših slova poželjno je pročitati Slovenian HOWTO i pogledati stranicu:

http://sizif.mf.uni-lj.si/linux/cee/printing.html

Dosada sam u Linuxu koristio Epson Stylus 800+ i trenutno HP 6L. Slijedeći redovi odnosit će se, dakle uglavnom na non-postscript printere.

Većina ce instalirati jedan od dva najpopularnija filtera koja dolaze u vašoj distribuciji - apsfilter i magicfilter. Koristim potonji jer je malo jednostavniji (malen /etc/printcap) i odmah je proradio :).

Dakle, želite li magicfilter, upišite kao root:

magicfilterconfig

Instalacija je glatka i intuitivna, jedino izaberite odgovarajući driver, za mene je to ljet4. Isprobajte printanje iz komandne linije s:

lpr nekifajl (ja uvijek koristim tiger.ps :) i obican txt file) bez naših kvačica)

i ako nešto nije u redu, možete izvršiti rekonfiguraciju s:

magicfilterconfig --force

Naravno, podrazumijeva se prije svega ovoga da je podrška za printanje ukomponirana u kernel.

3.1 LaTeX2e

Ovu aplikaciju velika većina nece koristiti, a ovdje je navodim samo zato jer ne zahtijeva instaliranje Type1 latin2 fontova, sve je vec na svom mjestu i možete odmah započet pisat našim kvakama. Radi se o makro paketu 0.9x distribucije teTeXa.

Za probu, napravite ovakav fajl imena primjer.tex:

\documentclass{article}

\usepackage{croatian}               % mijenjam po volji croatian.ldf
\usepackage[latin2]{inputenc}       % ova dva retka uvijek
\usepackage[T1]{fontenc}            % koristite za naša slova

\begin{document}

Čekajući Žarka.\\
Šime se šiša.\\
Đurđa ima dečka.

\end{document}

Upisite u komand promptu:

latex primjer.tex

i dobit ćete, između ostalih, fajl primjer.dvi. Prije printanja (lpr primjer.dvi - dvips vam vjerojatno pretvara dvi u postscript), možete izvršiti preview naredbom xdvi primjer.dvi. xdvi naravno pod XWS.

Postoje i drugačije mogućnosti printanja, (man dvilj ako imate LaserJet) pod različitim printerima, ali to nije tema ovog dokumenta. Pretpostavlja se, naravno da ste pravilno konfigurirali svoj printer.

3.2 Instalacija latin2 Type1 fontova

Izgleda da će u novijim distribucijama Type1 fontovi biti već preinstalirani, no ukoliko nemate latin2 Type1 fontove evo što treba učiniti.

Ukratko, što se latin2 printanja tiče, treba nabaviti Type1 fontove i instalirat ih tako da ih prepozna Ghostscript i XWS i kasnije ih ukomponirat u SO. Koristim Aladdin Ghostscript 5.10.

Arhivu s Type1 fontovima raspakirajte na isti način kao i X fontove, postupak je isti (ne zaboravite i XF86Config). Nakon toga trebalo bi u novonastalom direktoriju, npr:

/usr/X11R6/lib/X11/fonts/Type1-il2

pokrenuti program type1inst. To je ustvari Perl skripta koja u zadanom direktoriju stvara Fontmap i fonts.scale datoteke koje onda koristi Ghostscript. Type1inst lako je pronaći, ja sam ga skinuo sa sunsitea.

Ukoliko ste raspakiranjem arhive dobili i dva navedena fajla, tada ne morate koristiti type1inst. U svakom slučaju, dobro je pročitati njegov README.

Radi jednostavnosti (ne treba type1inst), mi ćemo u našem primjeru koristiti Type1 arhivu s http://www.comp.cz/linux/ftp/fonty_ISO-8859-2/ koju je spomenuo D. Pleić u grupi hr.comp.linux. Osim arhive X11-cz-Type1-02.tgz, dobro je skinuti i StarOffice-fonty_ISO-8859-2.tgz, koja će nam biti vrlo korisna. Nažalost izgleda da ovaj link više ne egzistira pa probajte npr. ftp.linux.hr.

Sve pfa, afm (stavio sam i pfm) fajlove fontova koje želite printati treba kopirati u direktorij s ghostscript fontovima (možete napraviti i symlink). Kod mene je to /usr/lib/ghostscript/fonts. Obavezno kopirajte i fonts.scale koji je identičan fonts.dir fajlu. Fontmap datoteku također kopirajte ili izvršite copy & paste u originalni Ghostscriptov Fontmap (prethodno Ghostscriptov Fontmap backupirajte, korisno ga je pročitati).

3.3 Netscape Communicator

Sada bi već mogli printati iz Navigatora. Edit - Preferences - Appearance - Fonts, for the encoding - iso8859-2 i izaberite novoinstalirane proporcionalne i fiksne Type1 fontove, npr. Times (SP) ili Arial (SP) za proporcionalni, odnosno Couriernew (SP) za fiksni. Prethodno također podesite View - Encoding - CE iso8859-2 i možda Set Default Encoding.

Za probu printanja pronađite neku html stranicu s latin2 tekstom (može i ova koju upravo čitate te provjerite kakve su kvačice na varijabilnim i fiksnim fontovima unutar stranice.

Problem mi se javlja kod Ariala, jer mi ga ovako Ghostscript ne prepoznaje, osim ako u Fontmapu ne stavim u alias odjeljku:

/Times (arl2____.pfb) ;

Budući da novodobiveni fontovi ne izgledaju najljepše u Netscapeu, savjetujem vam da si kao default pod CE iso8859-2 encoding fontove stavite TrueType ili X fontove koji vam se najviše sviđaju, premda se potonji ne mogu printati.

Zgodna stvar je da će se po defaultu printati novoinstalirani Times (SP) i Couriernew (SP). Moj osobni favorit varijabilni font za Netscapeov browser jest besplatni Microsoftov TrueType font Georgia koji se nalazi na http://www.microsoft.com/typography/fontpack/default.htm.

3.4 StarOffice 5.1

Slijedeći redovi vrijede i za prethodne verzije StarOffice-a. Općenito uzevši, treba obaviti neke stvari u ~/Office50/xp3 diru. Hint: Za SO 5.1 probajte dodati fontove preko Printer Setup-a. Da bude jednostavnije, spominjat ću samo Times L2 i Arial L2 font.


1. cd pssoftfonts
   ln -s /usr/lib/ghostscript/fonts/arl2*.pfb .
   ln -s /usr/lib/ghostscript/fonts/tnrl2*.pfb .

2. cd ~/Office40/xp3/fontmetrics/afm
   ln -s /usr/lib/ghostscript/fonts/arl2*.afm .
   ln -s /usr/lib/ghostscript/fonts/tnrl2*.afm .

3. cd ~/Office/xp3
# editorom dodati u datoteku psstd.fonts

arl2____, -SP-arial L2-medium-r-normal--%d-%d-%d-%d-p-0-iso8859-2
arl2b___, -SP-arial L2-bold-r-normal--%d-%d-%d-%d-p-0-iso8859-2
arl2bi__, -SP-arial L2-bold-i-normal--%d-%d-%d-%d-p-0-iso8859-2
arl2i___, -SP-arial L2-medium-i-normal--%d-%d-%d-%d-p-0-iso8859-2
tnrl2___, -SP-times L2-medium-r-normal--%d-%d-%d-%d-p-0-iso8859-2
tnrl2b__, -SP-times L2-bold-r-normal--%d-%d-%d-%d-p-0-iso8859-2
tnrl2bi_, -SP-times L2-bold-i-normal--%d-%d-%d-%d-p-0-iso8859-2
tnrl2i__, -SP-times L2-medium-i-normal--%d-%d-%d-%d-p-0-iso8859-2

Ako vas zbunjuje ovo L2, tako sam ja editirao svoj fonts.dir i fonts.scale svuda gdje se pojavljuju. Možete npr. staviti HR.

4. Eventualno editirajte Xpdefaults (PageSize, default printer itd). Čitajte uputstva, a možete to izvesti i direktno iz otvorenog SO (Printer Setup).

3.5 Printanje čistog teksta

Inače, za svoj printer sam riješio i printanje čistog teksta (iz komandne linije) tako da zadnji dio /usr/sbin/ljet4-filter glasi:


# Default entry -- for normal (text) files.  MUST BE LAST.
#default                        cat     \eE\e&k2G\e(0N  \eE 
 default             cat     \eE\e&k2G\033(2N\033(s0p12h0s0b4099T \eE

Ovo sam dobio na temelju Slovenian HOWTO:

Vse, kar morate storiti, je izbrati pravilno kodno stran v tiskalniku. Ubezna sekvenca za tiskalnike Hewlett-Packard je

\033(2N\033(s0p12h0s0b4099T

Ovdje se dakle radi o ugrađenim fontovima (u ovom slučaju Courier). Moram napomenuti da sam s dobijanjeg ovog rješenja imao najviše problema, no za printanje čistog teksta postoje i drugačija rješenja (npr. a2ps će pretvoriti ascii tekst u PostScript).

Ukoliko nemate printer s ugrađenim ISO8859-2 character setom, možda pomogne recode (vidi Slovenian HOWTO)

Zahvaljujem svima na sugestijama i idejama, posebno Vladimiru Vuksanu na ideji i pomoci pri formatiranju ovog dokumenta. Primjedbe, pitanja, pohvale, pokude, želje, zapažanja itd. na markovicr@softhome.net


Avanti Indietro Indice