Podešavanje štampanja

  • 0 Odgovora
  • 1582 Pregleda

0 Članovi i 1 gost pregledaju ovu temu.

Oasis

  • *
  • 1,766
  • +11/-0
  • Pol: Muškarac
    • Pogledaj profil
Podešavanje štampanja
« poslato: Novembar 24, 2010, 11:35:26 »
Podešavanje Štampanja

Kod štampanja mozete naici na razne situacije:

    * Štampač neposredno podrzava ISO Latin 2 raspored (idealno!)
    * Štampač podrzava jedan od ostalih 8-bitnih rasporeda sa nasim slovima (na pr. kodni raspored 852), ali i 7-bitni raspored JUS I.B1.002 (bolje)
    * Štampač razume PostScript (dobro)
    * Štampač ne razume nista drugo osim ASCII znakova (lose!)

Stampaci koji podrzavaju ISO-8859-2 kodnu stranicu

Neki od novijih štampaca neposredno podrzavaju ISO-8859-2 kodni raspored. Medju njima su:

    * Hewlett-Packard LaserJet 4 Plus i 4M Plus
    * Hewlett-Packard LaserJet 5L
    * Epson FX-2170
    * Epson LQ-870
    * Fujitsu DL700
    * Fujitsu DL1150/1250
    * Fujitsu DL3700/3800
    * Fujitsu DL6400/6600

Sve sto treba da uradite je da štampacu naredite da koristi odgovarajucu kodnu stranicu. Komandna sekvenca za stampace Hewlett-Packard je:

    \033(@N\033(s0p12h0s0b4099T
gde je \033 oktalni kod znaka Escape.

Jedan od nacina da pomocu datoteke /etc/printcap prilagodimo stampac da stampa po tom rasporedu opisan je u sledecem odeljku.

Stampaci koji podrzavaju neki drugi 8-bitni kodni raspored

Ako stampac podrzava neki drugi kodni raspored s nasim slovima, ipak mozemo pomocu njega stampati tekstove po ISO-8859-2 rasporedu, ako datoteku /etc/printcap prilagodimo na odgovarajuci nacin.

Postupak cemo objasniti na primeru stampaca marke Epson, koji ima znake po YUSCII rasporedu na mesto svedske abecede.

    lp|ascii|epson|Epson LQ-850:\
            :lp=/dev/lp1:\
            :sd=/usr/spool/lpd/epson:\
            :lf=/usr/spool/lpd/ERRORLOG:\
            :mx#0:\
            :sh:
    jus|Epson LQ-850 sa znakovima JUS I.B1.002:\
            :lp=/dev/null:\
            :sd=/usr/spool/lpd/jus:\
            :if=/usr/spool/lpd/jus_filter:\
            :lf=/usr/spool/lpd/ERRORLOG:\
            :mx#0:\
            :sh
    latin2|text|Epson LQ-850 sa znakovima po ISO Latin 2:\
            :lp=/dev/null:\
            :sd=/usr/spool/lpd/latin2:\
            :if=/usr/spool/lpd/latin2_filter:\
            :lf=/usr/spool/lpd/ERRORLOG:\
            :mx#0:\
            :sh:

U pitanju su tri reda za stampanje. Prva je američki (ASCII) izbor znakova. Drugi koristi /var/spool/lpd/jus_epson:

    #!/bin/sh
    /usr/spool/lpd/jus_epson | lpr -Pascii

Potrebno je da datoteku filtrirate kroz filter /var/spool/lpd/jus_epson i da je postavite u prvi red za stampanje. Filter jus_epson ne radi nista drugo osim sto bira svedski kodni raspored, prepise datoteku sa ulaza na izlaz i na kraju opet bira americki raspored. To je jedini deo programa koji zavisi od vrste stampaca:

    #!/bin/sh
    # Stampanje dokumenta kodiranih po JUS I.B1.002 na stampac Epson LQ
    #
    # Biramo srpski (svedski) raspored
    /bin/echo "\033R\005\c"
    # Ispisujemo dokument
    cat
    # Biramo ASCII raspored
    /bin/echo "\033R\000\c"

Treći red (queue) je modifikacija drugog. Najpre se dokument pretvara iz Latin 2 u JUS kodni raspored, zatim se koristi prethodno opisani filter da doda na početku i na kraju potrebne kodove za štampač, i na kraju se datoteka šalje u prvi red za štampanje.
    #!/bin/sh
    /usr/local/bin/recode --force latin2:yu | \
    /usr/spool/lpd/jus_epson | lpr -Pascii

Ovde pretpostavljamo da posedujemo program recode u /usr/local/bin direktorijumu.

U ovu svrhu morate u direktorijumu /usr/spool/lpd (ili /var/spool/lpd) kreirati poddirektorijume /usr/spool/lpd/epson, /usr/spool/lpd/jus i /usr/spool/lpd/latin2.

Štampanje bi trebalo da ide lako:

   1. Bez eksplicitne izbora reda, ili sa izborima -Pepson ili -Pascii, datoteka se stampa kao ASCII:

          lpr <datoteka>

   2. Izborom reda -Pjus datoteka se stampa kao dokument po JUS I.B1.002 rasporedu:

          lpr -Pjus <datoteka>

   3. Izborom reda -Platin2 ili -Ptext datoteka se stampa po ISO-8859-2 rasporedu:

          lpr -Platin2 <datoteka>
PostScript stampaci

Datoteku mozete lako odstampati ako koristite jedan od filtera za PostScript stampace koji podrzavaju ISO-8859-2 raspored. Takvi programi su, na primer, a2ps i GNU enscript. Poslednji podrzava ISO-8859-2 raspored, dok je podrska za prvi program u izradi.

Enscript za Red Hat distribucije mozete naci na http://rufus.w3.org/linux/RPM "skladistu" RPM paketa.

GNU enscript

    Ako niste instalirali GNU enscript, mozete to da ucinite po uputstvima koja prate program. Osim njega, potreban vam je i neki font u Type 1 obliku koji sadrzi nasa slova. Dobar izbor bi bio IBM Courier, koji se distribuira uz X Windows sisteme ili sa programom ghostscript. Ako font postoji, ali ne znate tacno gde se nalazi, mozete ga pronaci komandom

        find / -name cour.pf[ab]
    U licnu (~/.enscriptrc) ili sistemsku konfiguracionu datoteku (/usr/local/etc/enscript.cfg ili /usr/loca/etc/enscriptsite.cfg) dodajte put do datoteke sa fontovima. Osim toga, GNU enscript zahteva u svakom direktorijumu sa fontovima datoteku font.map, koja sadrzi preslikavanje izmedju fontova i datoteka u kojima se fontovi nalaze - slicno kao fonts.dir. Datoteku font.map mozete da kreirate naredbom mkafmmap.

    Primer konfiguracione datoteke enscriptsite.cfg:

        ...
        #  Gde su PostScript fontovi?
        AFMPath: /usr/lib/X11/fonts/Type1:/usr/local/lib/ghostscript/fonts
        ...
        # Podrazumevani nacin kodiranja:
        DefaultEncoding: latin2
        ...
        # Podrazumevani format papira:
        DefaultMedia: A4
        ...
        # lpd bira red za stampanje prekidacem -P...
        QueueParam: -P
        ...
        # Za stampanje koristimo naredbu lpr, a ne lp
        Spooler: lp

    Posto ste sve namestili, jednostavno posaljite datoteku na stampanje komandom

        enscript <datoteka>

[Reklama]