# &kdeprint;s huvudattraktioner

Det nya &kdeprint;-systemet innehåller mer än en huvudattraktion. Efter att ha arbetat i en miljö som inte precis är sofistikerad med avseende på utskrift under tidigare år, ta en titt på några av de godsaker som följer med &kdeprint;.

## Guiden Lägg till skrivare

&kdeprint; har guiden Lägg till skrivare. Guiden hjälper dig att lägga till och anpassa en ny skrivare. Du kan förstås också göra det här för hand.

&kdeprint; hjälper dig att upptäcka skrivare. Det kan avsöka omgivningen efter tillgängliga enheter och köer. Det här fungerar för nätverksanslutningar med TCP (AppSocket, känd som &HP; JetDirect, eller IPP) eller SMB/Samba (delade &Windows;) skrivare och delvis för direktanslutna skrivare via parallell-, serie- eller USB-anslutningar.

En skärmbild av den nya guiden Lägg till skrivare Här är en skärmbild av guiden Lägg till skrivare (den här är inte särskilt upphetsande än, men ...)

Guiden gör installation och hantering av drivrutiner en baggis. Välja, anpassa och testa ska vara lättare än någonsin på alla &Linux;-liknande system.

## Fullständig hantering av utskriftsjobb

Utskriftsvisaren startas automatiskt av &kprinter;. Den kan dockas i &kde;:s panel (i systembrickan). Utskriftsvisaren tillåter fullständig jobbhantering, om det stöds av utskriftssystemet.

Du kan:

- Hålla och släppa jobb,

- Flytta väntande jobb till en annan skrivare,

- Avbryta väntande eller pågående jobb.

Skärmbilden av &kdeprint;s utskriftsvisare illustrerar informationen som du får: jobb-ID, vald skrivare, jobbnamn, jobbägare, jobbstatus och jobbstorlek. I nästa utgåva av &kdeprint; kommer du också att se information om antal sidor (som &CUPS; beräknar det, se kapitlet om sidsammanställning för mer information om förtjänster och begränsningar).

En skärmbild av &kdeprint;s utskriftsvisare Här är en skärmbild av &kdeprint;s utskriftsvisare.

En skärmbild av &kdeprint;s utskriftsvisare.

Ett annat sätt att se på samma information (och ha samma styrmöjligheter) är via Inställningscentralen, genom att välja System Skrivarhanterare. Om du inte ser Skrivarinformation, högerklicka då på fönstrets bakgrund och välj Visa information om skrivare. Gå sedan till fliken Jobb för att se detta:

Här är en skärmbild av &kdeprint;s utskriftsvisare.

## Moduler för olika utskriftssystem

&kdeprint; använder olika moduler för att realisera gränssnittet till de möjliga utskriftssystemen. Alla moduler är inte fullständigt utvecklade ännu, men du har grundläggande utskriftsfunktioner med:

- LPD (enligt BSD)

- LPRng (&RedHat;, om du bara använder deras delmängd enligt BSD),

- RLPR (ett LPR-verktyg för kommandoraden, som inte behöver en `printcap`-fil).

- externa utskriftskommandon (&Netscape;-lika).

Fullständigt stöd för &CUPS; finns redan där, vilket är allra viktigast. Moduler för andra utskriftssystem, som PLP, PPR och PDQ kan bli tillgängliga senare.

&kdeprint; gör &kde; mycket flexiblare. Det ger valfrihet till användare av &kde; 2.2. För att använda olika tillgängliga utskriftssystem, måste de förstås installeras oberoende av &kde;. I tidigare versioner, var användare fast vid den gamla sortens LPD utskriftssystem. Nu kan de till och med använda &CUPS;. I framtiden blir det lätt att integrera nya system, när de dyker upp.

## Fler &kdeprint; godsaker

Gör nytta för alla utskriftssystem.

Vissa speciella funktioner i &kdeprint; beror på det valda utskriftssystemet. Det här beroendet kan finnas på grund av att de funktionerna bara är implementerade här. Kom ihåg att &kdeprint; är ett mellanlager mellan &kde;-program och utskriftssystemet, men det ersätter inte något utskriftssystem själv. Ett sådant beroende kan finnas av en annan orsak: att &kdeprint; inte har implementerat ett gränssnitt till alla funktioner i alla utskriftssystem.

Andra funktioner innehåller fördelar från &kdeprint; som är oberoende av det valda utskriftssystemet, och som är tillgängliga för alla. För närvarande finns det speciella eller virtuella skrivare, och några generella förfilter.

Förhandsgranskning av utskrift

- Du kan välja att titta på en förhandsgranskning i utskriftsdialogrutan. För denna skickas filen genom filter som gör den lämplig för visning på skärmen med &kghostview;.

Speciella skrivare

- Bland de här ytterligare funktionerna i &kdeprint; finns några speciella eller virtuella skrivare:

  De här speciella skrivarna kan:

  Skriva ut till PDF

- Överföra vårt dokument till en PDF-fil med hjälp av ett externt program.

Skriva ut till e-post

- Skicka dokumentet som en PDF-bilaga till e-post.

Skriva ut till en PS-fil

- Spara ditt dokument som en &PostScript;-fil.

Skriva ut till en fax

- Skicka det genom ett tillgängligt gränssnitt, till exempel Hylafax, som ett fax.

De här speciella skrivarna visas precis som normala skrivare i användarens utskriftsdialogruta. De kan helt och hållet anpassas för varje användare.

Generell förfiltrering

- &kdeprint; tillhandahåller en grundstomme för att definiera och anpassa dina egna förfilter. Dessa förfilter kan användas innan data skickas till utskriftssystemet för ytterligare hantering, men efter (&PostScript;, vanlig text eller andra) utskriftsfiler har skapats av ditt program.

  Ett antal användbara filter är redan fördefinierade. De är:

  - filtret för flera sidor per blad,

  - enscript textfiltret,

  - och tre filter som hjälper till att skriva ut broschyrer.

  Du kan skapa dina egna filter baserade på vilket tredjepartsprogram som helst som kan hantera &PostScript;, vanlig text eller bildfiler, och mata ut något av dessa format.

  Filtren anpassas genom XML-filer. Det här gör det mycket lätt att utöka konceptet för erfarna utvecklare, men anpassning för slutanvändaren görs också via ett intuitivt grafiskt användargränssnitt. Så frukta inte, du behöver inte lära dig XML på grund av &kdeprint;.

  Filtret för flera sidor per blad

- Det finne ett fördefinierat filter som installeras tillsammans med &kdeprint;. Det låter dig skapa ändrad &PostScript;-utdata från &PostScript;-indata, som skriver ut 1, 2 eller 4 logiska sidor på ett enda pappersark.

Enscript textfiltret

- Det här är ett fördefinierat filter som installeras tillsammans med &kdeprint;. Det låter dig skapa &PostScript;-utdata från vilken textfil som helst, som innehåller syntaxfärgläggning för programlistningar, snygg utskrift och trevliga anpassningsbara sidramar och huvuden.

Filter för broschyrutskrift

- Om din skrivare kan producera dubbelsidig utmatning, antingen med enstegs- eller tvåstegsteknik, kan du använda ett eller en kombination av broschyr filter.

  För dubbelsidiga skrivare, försäkra dig om att använda alternativet för dubbelsidig utskrift som vänder utmatningen längs den korta papperssidan. Genom att vika sidorna längs mitten, blir ditt dokument en trevlig broschyr.

  Om du är fast vid att använda en enhet som bara klarar enkelsidig utskrift, kan du göra samma sak genom att använda två olika filter och några extra steg.

  Beroende på din skrivarmodell, välj först filtret för att skriva ut de udda sidorna, och stoppa sedan tillbaka arken i rätt ordning i pappersmagasinet för att få de jämna sidorna utskrivna på motsatt sida. Dessa kan sedan vikas för att göra en broschyr.

## &CUPS;-stöd: Den viktigaste modulen i &kdeprint;

&kdeprint; innehåller en modul för &CUPS;. &CUPS;, Common &UNIX; Printing System (http://www.cups.org/), är det mest avancerade, kraftfulla och flexibla av alla utskriftssystem på &UNIX; och andra &Linux;-liknande operativsystem. Det är fortfarande ganska nytt under solen, men det är baserat på IPP, Internet Printing Protocol, den nya framväxande standarden för framtida nätverksutskrift. &CUPS; är helt klart utskriftssystemet som Michael Goffioul, den huvudsakliga utvecklaren av &kdeprint;, helst använder.

Erfarna &kde; användare kanske redan känner till Michaels verktyg qtcups och kups (utvecklade tillsammans med Jean-Eric Cuendet). De här var tidigare de grafiska gränssnitten för &CUPS;, med en stark koppling till &kde;.

### qtcups och kups, föregångarna

Båda verktygen har troligen fortfarande utbredd användning. För de som inte känner till dem, följer en kort beskrivning.

qtcups var ett grafiskt gränssnitt för `lp` eller `lpr` utskriftskommandon som installerats av &CUPS;. När qtcups användes öppnades en dialogruta. Det här dialogrutan lät dig bekvämt välja skrivare och utskriftsalternativ för jobbet. qtcups fungerade från kommandoraden, eller inifrån program, när programmet i fråga hade ett anpassningsbart utskriftskommando.

kups var ett grafiskt gränssnitt för att utföra administrativa uppgifter för &CUPS;-servern, och &CUPS;-demonen i dess mitt. Du kunde lägga till, ta bort, ändra, anpassa, starta och stoppa skrivare. Du kunde avbryta, ta bort, flytta, stoppa och starta om utskriftsjobb, och du kunde ändra inställningarna för demonen, starta, stoppa och starta om den.

### &kdeprint;, arvtagaren

&CUPS;-modulen i &kdeprint; innehåller nu alla (och fler) funktioner än som tillhandahölls av qtcups och kups i tidigare &kde;-versioner.

Istället för `qtcups` kan du nu använda kommandot `kprinter`. Och istället för `kups` kommer du nog använda `kcmshell printmgr` i fortsättningen.

&kdeprint; modulen för &CUPS; låter dig också administrera utskriftssystemet helt och hållet, precis som kups gjorde tidigare. Det kan starta, stoppa och anpassa &CUPS;-demonen. Det kan också starta, stoppa, lägga till och ta bort skrivare (dvs. skrivarköer) och instanser av skrivare. Instanser av skrivare är skrivarköer som pekar på samma fysiska utmatningsenhet, men med olika normalinställningar för skrivaralternativ.

### Grafiskt utskriftskommando - kprinter

&kdeprint;s &CUPS;-modul ger dig tillgång till ett grafiskt utskriftskommando, som qtcups tidigare gjorde.

Använd &kprinter; i vilket program som helst, till och med program som inte hör till &kde;, som låter dig anpassa utskriftskommandot. Exempel på dessa är &Netscape; och StarOffice, men inte de flesta program äldre än &kde; 2.2.

En skärmbild som visar hur det nya utskriftskommandot `kprinter` används istället för det gammalmodiga `lpr`... (Du måste förstås ha `kprinter` i din $`PATH`, eller ange annars hela sökvägen i dialogrutan en gång, t.ex. ``/opt/kde/bin/kprinter``. &Netscape; kommer ihåg det här och i framtiden får du alltid `kprinter` dialogrutan för att anpassa dina utskrifter.

En skärmbild av utskriftskommandot `kprinter` under användning. Här är en skärmbild som visar hur det nya utskriftskommandot `kprinter` används istället för de gammalmodiga `lp` eller `lpr` i &Netscape;.

Du kan också använda `&kprinter;` från kommandoraden och se den resulterande dialogrutan dyka upp:

Skärmbild av kommandot `kprinter` Skärmbild med användning av `kprinter` kommandot från kommandoraden.

Försäkra dig om att du också åtminstone anger filen som ska skrivas ut från kommandoraden: ``kprinter` `/usr/share/doc/packages/cups/sam.pdf``. Det här skickar iväg &CUPS; handbok för programvaruadministration till `kprinter` dialogrutan, som då dyker upp med den förvalda skrivaren markerad.

För att välja en viss skrivare i förväg från kommandoraden, använd väljaren `-d`, t.ex. ``kprinter` `-d DANKAcolorC2000` `/home/kurt/linuxtag2001-paper.ps``. Du kan fortfarande avmarkera skrivaren `DANKAcolorC2000` och sedan markera en annan.

Du kan dock inte anropa ``kprinter`` utan en fil att skriva ut och hoppas på att kunna öppna filvalsdialogrutan från &kprinter;-fönstret. Det här är en funktion som kommer att implementeras först i nästa version.

Med `kprinter` kan du komma åt alla finesser för din skrivare. Du behöver en enhetsspecifik så kallad &PPD; (&PostScript; skrivarbeskrivning) för att göra det möjligt för &CUPS; att låta detta team tillsammans sköta allt åt dig. Läs mer om detta under ppd-files.

## Planer för framtida utveckling

Vad du nu har är den första, redan mycket funktionsrika, versionen av &kdeprint;. Den här versionen är förstås fullt användbar för utskrift. Du kanske till och med tycker att det aldrig har varit så lätt (inte ens på den tiden då du var tvungen att använda &Microsoft; &Windows;).

I framtiden kommer &kdeprint; att bli ännu bättre. Det kommer att bli bättre på att detektera det installerade utskriftssystemet själv. &kdeprint; klarar redan utmärkt av att automatiskt känna igen om du har &CUPS; på systemet. Men i många fall måste du tala om för &kdeprint; vad du använder, om du vill behålla ett gammalt utskriftssystem.

Den viktigaste förbättringen i den närmsta framtiden är att färdigställa insticksprogrammet LPRng. Detta är för närvarande mycket primitivt. Det är begränsat till den rena klassiska LPD-delen av LPRng.

Dessutom ska du kunna lägga till skrivare direkt från utskriftsdialogrutan i ditt system i farten, utan att gå till Inställningscentralen först.

Några mindre förbättringar som redan är planerade är:

- lägga till en filvalsdialog i kprinter-fönstret för att tillåta att flera filer kombineras med det nuvarande utskriftsjobbet

- lägga till en historik-knapp till fönstret KJobViewer, och dessutom en kolumn som visar antalet sidor som &CUPS; beräknar för jobbet.

Till sist kommer det att finnas en I/O-slav som ger tillgång till utskriftssystemet till exempel via &konqueror;. Med den här kommer du snart kunna bläddra i ditt utskriftssystem från &konqueror; via en webbadress, som genvägen `print://printers/skrivarnamn`. En KPart lägger till en virtuell katalog till servicedelen i &konqueror;s navigeringspanel, som ger ett praktiskt integrerat sätt att bläddra och hantera utskriftssystemet via webbadressen `print:/manager`.

Kontakta gärna Michael Goffioul på goffioul@imec.be med ytterligare användnings- eller utvecklingsförslag.