2. Peryferia, możliwe do wykorzystania.

2.1. Drukarki.

Ogólnie rzecz biorąc, praca z programem najwygodniejsza będzie przy wykorzystaniu drukarki pracującej w trybie znakowym, choć nie jest to już warunek konieczny, bowiem program umożliwia także tworzenia dokumentów przeznaczonych do druku bezpośrednio w formacie Postscript. Co to oznacza? Ano, po prostu tyle, że Smabi drukuje w zasadzie na dowolnej drukarce, którą zastosowany przez użytkownika "demon wydruku" zdolny jest wykorzystać. Nawet bowiem w przypadku tzw. "windrukarek" najczęściej zachodzi sytuacja, że system kieruje do wydruku dokumenty "przepuszczone" wcześniej przez interpreter języka Postscript - czyli GhostScript, osiągalny w każdej dystrybucji Linuksa. Omówimy obydwa sposoby wydruku - znakowy, i graficzny - po kolei.

Dlaczego mimo wszystko rekomendujemy tryb znakowy? Po prostu ze względu na jego szybkość - należy pamiętać, że wydruk faktury to w takim przypadku przesłanie do drukarki raptem kilkuset bajtów - natomiast wykorzystanie trybu graficznego drukarki zakłada, w przypadku drukowania tego samego dokumentu, przesyłanie już setek kilobajtów, a więc co najmniej kilkaset razy więcej danych. Może w dalszym ciągu nie są to oszałamiające ilości informacji, jak na możliwości obecnie stosowanego sprzętu - ale wziąwszy jeszcze pod uwagę, że sama interpretacja tego dokumentu przez pakiet gs (Ghostscript) również trochę trwa, to różnica w czasie wydruku danych jest wyraźna; i nie zależy ona ani trochę od Smabiego, a jedynie od wydajności komputera oraz drukarki (i od ich chwilowego obciążenia, rzecz prosta).

2.1.1. Wykorzystanie znakowego trybu druku.

Możemy wybrać drukarkę posługującą się kodami sterującymi ESC/P (czyli kompatybilną z drukarkami Epson) - co przeważnie jest regułą w przypadku drukarek igłowych, lub kodami HP-PCL (a więc kompatybilną z drukarkami firmy Hewlett-Packard), co jest najczęściej spotykane wśród drukarek laserowych. Jeśli chodzi o popularne "atramentówki", bywa i tak, i tak.

Należy upewnić się, że nasza drukarka w ogóle posiada znakowy tryb wydruku, i że ma do wyboru zestaw znaków ISO-8859-2 określany również często jako ISO-Latin 2 - nie należy go mylić z tzw. IBM Latin 2, czyli stroną kodową CP-852. Jeśli drukarka, z której korzystamy, nie obsługuje standardu ISO-8859-2, ale obsługuje w ogóle jakikolwiek standard układu naszych narodowych znaków diakrytycznych (choćby wspomnianą CP-852), prawidłowy wydruk umożliwi nam filtracja wydruku przez program "recode", obecny we wszystkich chyba dystrybucjach Linuxa. Posługiwanie się tym programem omawia odnośna strona systemowego manuala (man recode) oraz instrukcja do znalezienia w /usr/share/doc. Najwygodniej jest skorzystać z możliwości dokonania stosownego wpisu w /etc/apsfilterrc.

Należy pamiętać o prawidłowym ustawieniu drukarki, czy to przy pomocy jej "dip-switch"-ów, czy też - jak to ostatnio najczęściej bywa - załączonym firmowym programem konfiguracyjnym. Dość znaczna ilość rozmaitych modeli posiada, oprócz trybów pracy jasno opisanych jako "emulacja Epsona" lub "HP-PCL mode", również jakiś inny tryb pracy, który może powodować nieprawidłową postać wydruku. Przykładem mogą być (przynajmniej niektóre) drukarki Canon, które prócz trybu "epsonopodobnego" mają również własny, "natywny" tryb pracy "canon", podobnie np. niektóre z igłowych drukarek f-my Citizen mogą być ustawione w tryb pracy "IBM dot matrix". W razie więc problemów z wydrukiem należy upewnić się, że drukarka została przestawiona w jeden z dwóch w/w trybów pracy: emulacji Epsona (ESC/P), lub emulacji H-P (HP-PCL).

Przykładem drukarek znakomicie współpracujących ze Smabim będzie np. większość popularnych DeskJet-ów firmy HP, jak DJ-610c, DJ-640c i pochodne (uwaga: niektóre z drukarek z rodziny DeskJet to typowe "windrukarki" GDI, nie posiadające znakowego trybu wydruku), nowsze modele drukarek atramentowych Canon BJC, z drukarek igłowych: np. Epson FX-880 (jeśli chodzi o "igłówki" szczególnie ten model jest godny polecenia - posiada również wbudowane "barcode-fonty", umożliwiając tym samym łatwy i tani wydruk etykiet z kodami kreskowymi).

Z drukarek laserowych również najbardziej godne polecenia byłyby produkty HP (np. seria LaserJet), lub kompatybilne. Przykładem tych drugich może być np. dobra i stosunkowo tania drukarka Samsung ML-4600 - która "rozumie" HP-PCL 6 oraz posiada (pośród innych) także i zestaw znaków ISO-8859-2. Podobną drukarkę produkuje także Minolta.

Uwaga: program przyjmuje, że demon wydruku dokonuje automatycznej konwersji LF -> CR+LF oraz FF -> CR+FF. Brak tej konwersji spowoduje charakterystyczne "schodki" na wydruku - i w takim przypadku należy odpowiednio ustawić filtr wydruku (np. poprzez uzupełnienie wpisu ":if=/var/spool..." w /etc/printcap). W niektórych typach drukarek można taką konwersję włączyć bezpośrednio: dip-switchem lub programem konfiguracyjnym.

Gdzie znaleźć informację, czy nasza drukarka spełnia wymagania określone w niniejszym rozdziale? Źródeł informacji jest całkiem sporo: Wykorzystanie znakowego trybu pracy drukarki zakłada jednocześnie, iż demon wydruku, zainstalowany w systemie użytkownika, ma zdefiniowaną "kolejkę" wydruku określoną jako raw - a więc taką, gdzie nie jest dokonywana zamiana znaków wysyłanych do kolejki na jakieś inne dane (przykładem może być zamiana kodów znaków tekstu na graficzną postać wydruku), co mogłoby zarówno zniekształcić wysyłany tekst jak i spowodować usunięcie znaków sterujących drukarki. Wyjątkiem od tej zasady może być zastosowanie wspomnianego wcześniej pakietu recode.

Użytkownicy CUPS-a: najszybszą próbą wydruku, która - być może - w ogóle wyeliminuje konieczność dodawania osobnej kolejki wydruku, będzie dodanie stosownego parametru. Przykładowo: jeśli drukarka nosi w konfiguracji CUPS-a nazwę - dajmy na to - "Samsung", oraz spełnia warunki w/w, możemy spróbować wykorzystać jej znakowy tryb drukowania, wpisując w "ustawieniach lokalnych" programu "polecenie wydruku" postaci: lpr -P Samsung -oraw
Jeśli drukarka nie potrafi drukować w trybie znakowym - drukowanie będzie przebiegać z wykorzystaniem jej trybu graficznego, zgodnie z opisem w następnym rozdziale.

2.1.2. Drukowanie w trybie graficznym.

Jak już uprzednio wspomniano, jeśli w trakcie instalacji systemu udało nam się skonfigurować drukarkę do pracy w nim - i prawidłowość tej konfiguracji została potwierdzona właściwą postacią wydruków, to - o ile nic nam nie wiadomo o ew. możliwości wykorzystania (domniemanego) znakowego trybu jej pracy - najprawdopodobniej wszelkie dane do wydruku kierowane są przez "demona" (system wydruku) w postaci plików w formacie Postscript, przed wydrukiem interpretowanych przez pakiet gs (Ghostscript).

W takim przypadku wystarczy, jeśli w menu "opcji lokalnych" Smabiego, wskażemy jako drukarkę po prostu "Postscript", oraz w polu "Polecenie wydruku" wpiszemy stosowny dla zainstalowanego w naszym systemie "demona" rozkaz, zapewne będzie musiał on także wskazywać na konkretną kolejkę wydruku - przykładowo: jeśli korzystamy z drukarki "LaserJet", skonfigurowanej do korzystania ze sterownika "lj5gray", polecenie wydruku, którego należy użyć do drukowania w Postscripcie przybierze postać: lpr -Plj5gray (dla CUPS-a może to być lpr -o lj5gray).

A gdzie można znaleźć bliższe dane o wspomnianej "kolejce"? Otóż bez trudności znajdziemy te dane w pliku /etc/printcap. W omawianym przypadku znajdujemy tam m.in. coś takiego:

lj5gray|lj5gray;r=600x600;q=high;c=gray;p=a4;m=auto:\
:lp=/dev/lp0:\
:if=/etc/apsfilter/basedir/bin/apsfilter:\


Zwróćmy uwagę, że trzeci wiersz wyraźnie nam podpowiada, że chodzi tu o kolejkę "postscriptową" - widzimy tam, że wydruki są przepuszczane przez apsfilter.
W razie wątpliwości, możemy poprzestać na zamieszczeniu w polu "Polecenie wydruku" jedynie samego rozkazu lpr. Jeśli mamy określoną w systemie jedną-jedyną kolejkę, określoną jako "domyślną" - zasadniczo to powinno wtedy wystarczyć.

Poprzednia strona | Następna strona | Spis treści
Strona główna serwisu programu