[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SSLUG] Linux HOWTO - Att Skriva Ut



Hej, samtliga!

Nu jävlar! ...

... har jag fått den första versionen av översättningen av
Linux-Printing-Usage-HOWTO till svenska klar. Jag slänger med den i detta
brev, om någon har lusta att kolla på den och ge konstruktiv kritik. Den
går också att beskåda på min "hemsida"
<http://www.tufvan.hv.se/~pnidv96/>, som i övrigt inte är mycket att se:-(

Som sagt, tag gärna en titt på dokumentet och hoppas att någon kan få
nytta av det. Andra fomat n text och html kan fås på begäran.

Hej!


  (Linux Printing Usage HOWTO) Linux HOWTO---Att Skriva Ut
  by Mark Komarinski <markk@auratek.com>
  Översättning: Peter Nilsson <pnidv96@tufvan.hv.se>
  v1.2, 10 September 1996

  1.  Inledning

  I detta dokument beskrivs den utskriftsshanterare (printer spooling
  system), som följer med operativsystemet Linux. Denna ``HOWTO'' utgör
  ett komplement till ``The Linux Printing Setup HOWTO'' (svensk
  översättning saknas f.n.), vari installation och konfiguration av
  Linux utskriftshanterare behandlas. Den information som här
  presenteras, torde även vara relevant för operativsystemet BSD.

  (Översättarens anmärkning: Detta dokument är ett utkast i den meningen
  att det på några punkter innehåller språkliga svagheter. De grövsta av
  dessa är makrerade med (formulering?).)

  1.1.  Dokumentets historia

  Anmärkning från Mark Komarinski <markk@auratek.com>:

  Jag vill tacka Matt Foster för hans hårda arbete med omarbetningen av
  denna HOWTO. Jag fortsätter i hans anda, och gör tillägg när så är
  nödvändigt för att hålla dokumentet aktuellt.

  Anmärkning från Matt Foster <mwf@engr.uark.edu>

  Denna version av ``Linux HOWTO---Att Skriva Ut'' är en fullständig
  omarbetning av den HOWTO som ursprungligen skrevs av Grant Taylor
  <grant@god.tufts.edu> och Brian McCauley <B.A.McCauley@bham.ac.uk>.
  Jag har försökt få med allt material som Grant och Brians HOWTO
  täcker, men jag har drastiskt förändrat det sätt på vilket materialet
  presenteras samt djupet av den information som tagits med
  (formulering?). Jag tror mig härigenom ha gjort dokumentet mer
  lättläst och komplett. Jag kan bara hoppas att du, som läsare,
  instämmer i det.

  1.2.  Versionshistorik

  v1.2

  ·  Windows-skrivare

  ·  Hur man ändrar maximal storlek för filer som skall skrivas ut

     v1.11

  ·  Ny ansvarig (för dokumentet)!

  ·  Lade till information om lpc

  ·  Lade till en del information om felsökning

  ·  Påbörjade avsnitt om utskrift av grafikfiler!

  v1.1

  ·  Ändrade ordalydelsen på några ställen

  ·  Skrev avsnittet om PostScript-utskrifter

  ·  Försökte klargöra några exempel 8-)

  ·  Utökade drastiskt diskussionen om de grundläggande
     utskriftsverktygen för Linux

  v1.0

  ·  Första versionen som släppts till allmänheten

  1.3.  Upphovsrätt och varumärken

  Upphovsrätten till en del namn som förekommer i denna HOWTO tillhör
  vissa personer och/eller företag. Dessa namn skrivs antingen med stor
  begynnnelsebokstav, eller med endast stora bokstäver.

  (c) 1995 Matt Foster (mwf@engr.uark.edu)

  (c) 1996 Mark F. Komarinski (markk@auratek.com)

  Varje översättning, eller annat verk, där hela eller delar av en
  Linux-HOWTO ingår, måste omfattas av denna copyright.

  Detta innebär, att du inte har rätt att producera något verk, som
  bygger på en HOWTO och begränsa distributionen av detta ytterligare.
  Undantag till denna regel kan medges i särskilda fall; vänligen
  kontakta koordinatören för HOWTO-dokument på adressen nedan.

  Vår önskan är att möjliggöra spridning av denna information via så
  många kanaler som möjligt. Däremot vill vi behålla upphovsrätten till
  HOWTO-dokumenten, och vi vill bli informerade om det finns planer på
  att redistribuera (formulering?) dem.

  Kontakta Greg Hankins, koordinatör för HOWTO-dokument, på adressen
  <gregh@sunsite.unc.edu>. Du kan använda finger för telefonnummer, m.m.

  1.4.  Att hämta hem HOWTO-dokument om ytskrift

  Om du vill skriva ut detta dokument, rekommenderar jag dig att hämta
  PostScript-versionen. Den är utformad på ett estetiskt tilltalande
  sätt och dessutom mer lättläst. Det går att hämta PostScript-versionen
  från någon av de många platser, där Linux distribueras (som t.ex.
  SunSITE <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/>).

  1.5.  Gensvar

  Frågor, kommentarer eller rättelser gällande denna HOWTO kan skickas
  till <markk@auratek.com>.  (Vad gäller i första hand språkliga
  kommentarer och förslag till förbättringar av den svenska utgåvan, tas
  dessa med glädje emot av Peter Nilsson <pnidv96@tufvan.hv.se>.)

  1.6.  Tillkännagivanden

  Ett stort tack till alla dem som läste alfa-versionen av denna HOWTO
  och gav många kommentarer och förslag, vilka varit till stor hjälp;
  några kan finna resultatet av sin medverkan i denna version.

  Jag vill också rikta ett tack till Matt Foster, som gjorde den
  ursprungliga omarbetningen.

  2.  Att Skriva Ut Under Linux

  I detta kapitel beskrivs hur man skriver ut filer, hur man gör för att
  titta på skrivarkön, hur utskriftsjobb raderas från skrivarkön, hur
  filer formateras före utskrift samt hur ``utskriftsmiljön'' ställs in.

  2.1.  Historik

  Utskriftssystemet som används under Linux---Det s.k. lp-systemet---är
  en anpassning av den källkod som framställts vid University of
  California till Berkley-distributionen av UNIX (BSD).

  2.2.  Att skriva ut en fil med hjälp av lpr

  Det allra simplaste sättet att skriva ut något i Linux, är att sända
  den fil som skall skrivas ut direkt till skrivarenheten. Detta kan
  t.ex. göras genom att använda kommandot cat. Som root, skulle man
  kunna utföra något i stil med

       # cat thesis.txt > /dev/lp

  I dethär fallet, är /dev/lp en symbolisk länk till den verkliga
  skrivarenheten---må det vara en matrisskrivare, laserskrivare,
  typsättningsmaskin eller plotter. (Se ln(1) för information om
  symboliska länkar.)

  Av säkerhetsskäl, har endast root och de användare som är medlemmar av
  samma grupp som skrivar-daemonen rätt att skriva direkt till
  skrivaren.  Därför måste kommandon som lpr, lprm och lpq användas för
  att komma åt skrivaren.

  lpr används för att skriva ut en fil. Kommandot lpr ansvarar för det
  inledande arbete, som krävs för att filen skall kunna skrivas ut, och
  överlämnar därefter kontrollen till ett annat program, lpd, skrivar-
  daemonen. Skrivar-daemonen ``talar om'' för skrivaren hur filen skall
  skrivas ut.

  När lpr exekveras, kopieras först den angivna filen till en särskild
  katalog (spool-katalogen, eller ``the spool directory''), där den
  sedan finns tills lpd skriver ut den. Då lpd får reda på att det finns
  en fil att skriva ut, exekverar den en kopia av sig själv (något som
  vi programmerare kallar ``delning'' eller ``forking''). Denna kopia av
  lpd skriver ut filen, medan den ursprungliga lopian väntar på
  ytterligare förfrågningar. På detta sätt kan flera skrivarjobb köa
  samtidigt.

  Syntaxen för lpr(1), är välkönd,

       $ lpr [ val ] [ filnanm ... ]

  Om inget filnamn anges, förväntas inmatningen till lpr komma från
  standardenheten för inmatning (vanligen tangentbordet, eller utmatnin­
  gen från ett annat program). Detta ger användaren möjlighet att
  omdirigera utmatningen från ett kommando till
  utskriftshanteraren---t.ex. såhär:

       $ cat thesis.txt | lpr

  eller

       $ pr -l60 thesis.txt | lpr

  lpr förstår ett flertal kommandoradsargument, vilket möjliggör för
  användaren att kontrollera dess funktion. Några av de vanligaste
  argumenten är dessa: -Pskrivare anger vilken skrivare som skall
  användas, -h gör att ``titelsidan`` (formulering?) inte skrivs ut, -s
  skapar en symbolisk länk istället för att kopiera filen till spool-
  katalogen (användbart för stora filer) och -#nummer anger antal kopior
  som skall skrivas ut. Ett exempel på hur lpr kan användas är:

       $ lpr -#2 -sP dj thesis.txt

  Detta kommando skapar en symbolisk länk till filen thesis.txt i spool-
  katalogen för skrivaren dj, där lpd tar hand om filen.  Dessutom
  skrivs en andra kopia av filen thesis.txt ut.

  Se lpr(1) för en lista med alla alternativ som lpr förstår.

  2.3.  Att titta på skrivarkön med lpq

  Använd kommandot lpq, för att titta på innehållet i skrivarkön.  Om
  det körs utan argument, visas default-skrivarens kö.

  Utmatningen från lpq är användbar till mycket.

       $ lpq
       lp is ready and printing
       Rank   Owner      Job  Files                            Total Size
       active mwf        31   thesis.txt                       682048 bytes

  2.4.  Att avbryta ett skrivarjobb med lprm

  En annan användbar finess hos en utskriftshanterare är möjligheten att
  avbryta ett skrivarjobb som är placerat i kö. Använd lprm för att göra
  det.

  $ lprm -

  Kommandot ovan avbryter alla skrivarjobb som ägs av den användare som
  kör det.  Ett enstaka jobb kan avbrytas genom att först ta reda på
  jobbets ID-nummer med lpq, och därefter ange det på kommandoraden till
  lprm. Till exempel skulle

       $ lprm 31

  avbryta jobb nummer 31 (thesis.txt) på default-skrivaren.

  2.5.  Att styra lpd med lpc

  Programmet lpc används för att styra de skrivare som lpd kontrollerar.
  Du kan aktivera eller deaktivera en skrivare eller dess köer, förändra
  ordningen mellan jobb i en kö samt erhålla en statusrapport över
  skrivare och köer. lpc används oftast när flera skrivare är kopplade
  till en och samma dator.

       $ lpc

  Detta startar normalt lpc i ett interaktivt läge, i vilket det går att
  ge kommandon till programmet. Du kan också ge lpc-kommandon direkt på
  kommandoraden:

       $ lpc status all

  En lista med tillgängliga kommandon finns i manualsidan till lpd, men
  här ges några viktiga kommandon, som du bör känna till. Om kommandot
  innehåller ordet val, kan det efterföljas av ett skrivarnamn (lp,
  print, etc.) eller ordet all, vilket betyder alla skrivare.

  ·  disable val -  gör att inga nya skrivarjobb kan placeras i kö

  ·  down val - deaktiverar denna skrivare

  ·  enable val - tillåter nya skrivarjobb att placeras i kön

  ·  quit (eller exit) - avsluta lpc

  ·  restart val - startar om lpd för skrivaren

  ·  status val - visa skrivarens status

  ·  up val - slår på utskrift och startar lpd på nytt

  3.  Diverse Saker

  I detta avsnitt beskrivs diverse saker du kan behöva veta om att
  skriva ut under Linux.

  3.1.  Att formatera före utskrift

  Då de flesta ASCII-filer ej är formaterade för utskrift, kan det vara
  bra att formatera dem på något sätt innan de skickas till skrivaren.
  Det kan t.ex innebära att placera titel och sidnummer på varje sida,
  sätta marginaler, skriva texten med dubbelt radavstånd, formatera med
  indrag och skriva texten i flera spalter. Ett vanligt sätt att göra
  detta, är att använda en s.k.  förprocessor, som exempelvis pr.

       $ pr +4 -d -h"Ph.D. Thesis, Andra Utkastet" -l60 thesis.txt | lpr

  I exemplet ovan, tar pr innehållet i filen thesis.txt och hoppar över
  de tre första sidorna (+4), sätter sidlängden till 60 rader (-l60),
  använder dubbelt radavstånd (-d) och placerar texten ``Ph.D. Thesis,
  Andra Utkastet'' överst på varje sida (-h). Utmatningen från pr sänds
  så till lpr. Se manualsidan, om du vill ha ytterligare information om
  pr.

  3.2.  Miljövariabeln PRINTER

  Alla kommandon som ingår i Linux utskriftshanterare accepterar växeln
  -P.  Denna växel tillåter användaren att bestämma vilken skrivare som
  skall användas. Om användaren inte anger vilken skrivare som skall
  användas, kommer utmatningen att skickas till default-skrivaren.

  Istället för att var gång behöva ange skrivare, kan du sätta
  miljövariabeln PRINTER till namnet på den skrivare du vill använda.
  Detta görs på olika sätta i olika skal. I bash görs det med

       $ PRINTER="skrivar_namn"; export PRINTER

  och i csh, skriver du kommandot

       % setenv PRINTER "skrivar_namn"

  Dessa kommandon kan placeras i ditt loginskript (.profile för bash,
  eller .cshrc för csh), eller ges på kommandoraden.  (Se bash(1) och
  csh(1) för ytterligare information om miljövariabler.)

  3.3.  Att skriva ut grafik

  Hur man gör för att skriva ut grafikfiler beror dels på vilken typ av
  grafik som används och dels på typen av skrivare. Matrisskrivare är
  oftast inte användbara i detta sammanhang, på grund av deras sätt att
  hantera grafik på. Möjligen kan du, om skrivaren är kompatibel med en
  Epson eller IBM ProPrinter, konvertera filen till PostScript-format
  och därefter använda Ghostscript (se nästa avsnitt) för att skriva ut
  den.

  Om du har en laserskrivare, blir saker och ting betydligt enklare,
  eftersom sådana vanligen är kompatibla med PCL. Detta ger dig ett par
  olika möjligheter.  Vissa program kan direkt göra om filer till PCL.
  Om så inte är fallet, kan program som NetPBM användas för att
  konvertera till PCL. Slutligen kan du använda Ghostscript (se nästa
  avsnitt).

  Det bästa är att installera programpaket som NetPBM och Ghostscript
  och använda ett s.k. magiskt filter (``magic filter'' på engelska) som
  tar hand om grafikfilerna automagiskt.

  3.4.  Utskrift av PostScript-filer

  Att skriva ut PostScript på en skrivare som har en inbyggd PostScript-
  tolk, är inte svårt; använd bara lpr, så sköter skrivaren detaljerna.
  Vi andra, som inte har en PostScript-skrivare, får välja ett annat
  tillvägagångssätt. Lyckligtvis finns det program som förstår
  PostScript och kan översätta det till ett språk som de flesta skrivare
  förstår. Troligen är det mest kända av dessa program Ghostscript.

  Ghostscripts uppgift är att översätta styrkoderna i en PostScript-fil
  till kommandon som skrivaren förstår.  För att skriva ut en fil med
  Ghostscript, kan du utföra något som linkar detta:

       $ gs -dSAFER -dNOPAUSE -sDEVICE=deskjet -sOutputFile=|lpr thesis.ps

  Observera att utmatningen från Ghostscript faktiskt sänds till lpr i
  exemplet ovan. Det beror på att växeln sOutputFile används.

  Ghostview är ett gränssnitt till Ghostscript för X Windows. Detta
  program möjliggör förhandsgranskning av en PostScript-fil innan den
  skrivs ut.  Ghostview och Ghostscript kan båda hämtas från
  <ftp://prep.ai.mit.edu/pub/gnu/>.

  3.5.  Att skriva ut PDF-filer

  Det finns inget program för att titta på Adobe PDF, men väl ett
  program kallat xpdf, vilket kan ge ifrån sig data i form av
  PostScript.

  3.6.  Att skriva ut TeX-filer

  Ett av de enklaste sätten att skriva ut TeX-filer, är att först göra
  om dem till PostScript och därefter skriva ut dem med hjälp av
  Ghostscript. För att göra det, måste de först konverteras från TeX
  till ett format som kallas DVI (vilket står för ``device
  independent''). Det görs med kommandot TeX(1). Sedan konverteras DVI-
  filen till PostScript med dvips.  Detta ser ut som följer, när det
  skrivs in:

       $ tex thesis.tex
       $ dvips thesis.dvi

  Nu kan resultatet skrivas ut på så sätt som beskrivits ovan.

  3.7.  Utskrift av filer som formateras med troff

       $ groff -Tascii thesis.tr | lpr

  eller, om du så vill,

       $ groff thesis.tr > thesis.ps

  Skriv sedan ut PostScriptfilen som ovan.

  (Översättarens anmärkning: Jag känner inte till om något av dessa
  kommandon fungerar med filer skrivna i ISO-8859-1 (latin1).)

  3.8.  Att skriva ut manualsidor

       $ man man | col -b | lpr

  Manualsidorna innehåller förformaterad troff-data, så fetstil,
  understrykningar etc. måste tas bort. Kommandot 'col' gör detta på ett
  trevligt sätt, och eftersom vi sänder utmatningen från man direkt till
  ett annat program via ett ``rör'' (formulering?), så körs inte more.

  4.  Svar På Ofta Ställda Frågor

  F1.  Hur undviker jag ``trappstegseffekten'' (staircase på engelska)?

  S1.  ``Trappstegseffekten'' orsakas av det sätt på vilket vissa
  skrivare vill att radslut skall markeras. Somliga skrivare vill ha
  radslut markerade med vagnretur/radmatning (DOS-varianten) istället
  för endast radmatning, som UNIX-system använder. Enklaste sättet att
  åtgärda problemet är att undersöka om skrivaren kan växla mellan de
  två varianterna på något sätt---antingen genom att ändra en DIP-
  switch, eller att skicka en escape-sekvens i början av varje utskrift.
  För att göra det senare, måste du skapa ett filter (se F2 eller
  Foster95b).

  Ett snabbt sätt att fixa det på är att använda ett filter på
  kommandoraden. Ett exempel är:

       $ cat thesis.txt | todos | lpr

  F2.  Vad är ett filter?

  S2.  Ett filter är ett program som läser från standardinmatningen
  (stdin), bearbetar den inlästa datan och därefter skriver till
  standardutmatningen (stdout). Filter används till många saker, bl.a.
  bearbetning av text.

  F3.  Vad är ett magiskt filter?

  S3.  Ett magiskt filter är ett filter som utför olika saker beroende
  på filens typ. Om filen t.ex. är en textfil, skrivs den ut som
  vanligt. Om filen är en PostScript-fil, eller i något annat format,
  skrivs den ut på något annat sätt (Ghostscript). Två exempel på
  magiska filter är magicfilter och APSfilter.  En nackdel med desa är
  att de nödvändiga programmen måste intalleras före filtret.

  Anledningen till det är att filtret, när det installeras, undersöker
  vilka program som finns installerade (t.ex. Ghostscript---om det
  återfinns, vet filtret att PostScript kan hanteras). Filtret skapar
  därefter sig själv på grundval av de program som hittats:

  ·  GhostScript

  ·  TeX

  ·  NetPBM

  ·  jpeg-verktyg

  ·  gzip

  F4.  Kommer Linux att kunna samarbeta med Windows utskriftshanterare?

  S4.  Kanske.  Skrivare som endast hanterar WPS-kommandon, kommer inte
  att understödjas av Linux. Skrivare som hanterar WPS- och andra
  kommandon (vilket exempelvis Canon BJC 610 gör) fungerar, så länge de
  är inställda på något annat än WPS.

  F5.  Vad är dethär för jävla system? Jag kan inte skriva ut mer än sex
  sidor utan att få ``file too large''.

  S5.  En av inställningarna i filen /etc/printcap har att göra med den
  maximala storleken på en fil som skall skrivas ut. Default-värdet är
  1000 block på disken (ca 500 k?). Vad gäller PostScript-filer och
  liknande, innebär detta i storleksordningen 6--8 sidr (inklusive
  grafik). Lägg till följande rad i skrivardefinitionen:

  mx=0

  Huvudskälet till begränsningen är att den partition som spool-katalo­
  gen finns på inte skall bli full. Det finns ett ytterligare sätt att
  kringgå begränsningen, nämligen genom att låta lpr skapa en symbolisk
  länk från spool-katalogen till filen som skall skrivas ut. Du måste då
  komma ihåg växeln -s var gång du kör lpr.

  5.  Felsökning

  I detta avsnitt behandlas några vanliga fel som kan uppkomma i samband
  med användning av utskriftshanteraren.

  Om skrivaren inte fungerar:

  ·  Fungerar andra skrivarjobb? (applikationen)

  ·  Är lpd igång? (kontrollera med lpc) (print controller)

  ·  Kan root skicka något direkt till skrivaren? (utskriftsrutinerna)

  ·  Kan du göra utskrifter från DOS? (kabel-/skrivarproblem?)

     Svaren på dessa frågor kan hjälpa dig att finna en lösning.

  Skicka ytterligare förslag gällande detta avsnitt till
  <markk@auratek.com>.

  6.  Referenser

  Detta avsnitt innehåller referenser vad gäller Linux
  utskriftshanterare. Jag har försökt hålla avsnittet så inriktat på
  ämnet som möjligt. Om du tycker att jag har glömt någon viktig
  referens, så tveka inte att kontakta mig.

  Betänk följande, innan du postar en fråga till en USENET-grupp:

  ·  Tar skrivaren emot skrivarjobb?  (Använd lpc(8) för att kontrollera
     detta.)

  ·  Kan du finna svaret på din fråga i denna HOWTO eller ``The Printing
     Setup HOWTO''?

  Om någon av ovanstående frågor kan besvaras med ``ja'', kanske du
  skall tänka efter två gånger innan du skickar frågan. Och när du
  slutligen skickar frågan till en nyhetsgrupp, försök då att få med all
  information som behövs. Försök att inte bara fråga något i stil med
  ``Jag har problem med lpr. Snäla, hjälp mig!'' Den typen av brev,
  kommer de flesta definitivt att hoppa över. Ange även vilken version
  av kärnan du använder, på vilket sätt felet inträffade och, om det
  finns, exakt det felmeddelande som systemet gav.

     Manualsidor

     ·  cat(1)  slå samman och skriv filer

     ·  dvips(1)  konvertera en DVI-fil från TeX till PostScript

     ·  ghostview(1)  Visa PostScript-dokument med hjälp av Ghostscript

     ·  groff(1)  ``framsida'' till formateringssystemet groff

     ·  gs(1)  Ghostscripttolk/-visare

     ·  lpc(8)  styrprogram för skrivarna

     ·  lpd(8)  skrivardaemon

     ·  lpq(1)  program för att titta på skrivarköer

     ·  lpr(1)  off-line printer (formulering?)

     ·  lprm(1)  ta bort jobb från skrivarköer

     ·  pr(1)  konvertera textfiler för utskrift

     ·  tex(1)  textformaterings- och typpsättningsprogram

     USENET nyhetsgrupper

     ·  comp.os.linux.*  varierande information om Linux

     ·  comp.unix.*  UNIX-relaterade diskussioner



--
HaDe/P