<chapter id="technical-overview">
<title>Tehniline ülevaade</title>

<para>See peatükk püüab anda tehnilise ülevaate &tdeprint;ist, millest saaks aru ka mitte-programmeerijad.</para>

<para>&tdeprint; on revolutsiooniline uus vahend, mis tagab hõlpsa ligipääsu trükiteenustele nii &kde; kasutajatele kui arendajatele.</para>

<sect1 id="brief-description">
<title>&tdeprint;i lühikirjeldus</title>

<para>&tdeprint;i funktsioone saab kasutada mitmeti: &juhtimiskeskus;e trükkimise halduri vahendusel, käsuga <command>kprinter</command> või dialoogi abil, mis trükkimissoovi ilmutamisel avaneb.</para>

<sect2 id="what-tdeprint-is-not">
<title>See <emphasis>ei</emphasis> ole</title>

<para>&tdeprint; <emphasis>ei</emphasis> ole trükkimis-alamsüsteem ise. Seepärast <emphasis>ei</emphasis> osale &tdeprint; spuulimisel ja see ka <emphasis>ei</emphasis> töötle otseselt &PostScript;i ega muid trükiandmeid.</para>

</sect2>

<sect2 id="what-kde-print-is">
<title>See <emphasis>on</emphasis></title>
<para>&tdeprint; on vahekiht spuulimise ja andmetöötlusega tegeleva trükkimis-alamsüsteemi (vastavalt paigaldusele) ja rakenduse vahel, millest alamsüsteem püüab trükkida. &tdeprint; pakub nii &kde; arendajatele kui kasutajatele ühise liidese mitmesugustele toetatud trükkimis-alamsüsteemidele. Samal ajal on see väga hästi kohandatav ning igati seadistatav.</para>

<para>&tdeprint;i kasutamine ei kujuta raskusi ei &kde; arendajatele ega lõppkasutajatele. Arendajad võivad oma rakendused väheste muudatustega portida, et need kasutaksid &tdeprint;i, mitte aga vana &Qt; trükkimise <quote>süsteemi</quote>. Ja kasutajad saavad selle abil hõlpsasti valida ja seadistada oma trükkimis-alamsüsteemi.</para>

<para>Teadmiseks uutele &kde; sõpradele: &Qt; on baasteek ja graafiline tööriistakomplekt, mida kasutavad kõik &kde; rakendused. &Qt; arendaja on Norra tarkvarafirma TrollTech.</para>

</sect2>

</sect1>

<sect1 id="different-users">
<title>&tdeprint; -- Erinevad kasutusvõimalused erinevatele inimestele</title>

<para>&tdeprint; võib erinevatele inimestele näidata erinevat palet.</para>

<sect2 id="what-users-can-do">
<title>Mida kasutajad ja administraatorid võivad &tdeprint;iga teha</title>

<para>&tdeprint; võimaldab kasutajatele ja/või administraatoritele vastavalt nende õigustele ligipääsu trükkimis-alamsüsteemidele (&CUPS;, <acronym>LPD</acronym>, <acronym>RLPR</acronym>, <application>LPRng</application>, <application>PDQ</application> &etc;) &kde; graafilise kasutajaliidese (&GUI;) vahendusel. &tdeprint;i abil saab mugavalt ja hõlpsasti trükkida ning hallata töid, printereid ja trükideemoneid.</para>

<para>Kogenud kasutajad kahtlemata naudivad võimalust lisada suvaline toimiv filter rakenduse väljundi ja sisendi vahele ükspuha millise valitud trükkimis-alamsüsteemi korral. Mõned näited on kaasas isegi juba <quote>toore</quote> &tdeprint;iga. Sellest tuleb kohe juttu.</para>

</sect2>


<sect2 id="what-developers-can-do">
<title>Mida võivad sellega teha &kde; arendajad...</title>

<para>Kui &kde; arendaja vajab oma rakendusele trükivõimalust, ei ole tal vaja trükkimisfunktsiooni otsast peale looma hakata. Enne &kde; 2.2 ilmumist pakkus seda teenust &Qt; tööriistakomplekti teegifunktsioon, täpsemalt klass <classname>QPrinter</classname>. <classname>QPrinter</classname>i aluseks oli vanamoeline ja iganenud <quote>reaprinterideemon</quote> (<acronym>LPD</acronym>). &tdeprint;i teegi kindlaks toeks ja aluseks on aga moodsam "tavaline &UNIX;i trükkimissüsteem" (Common &UNIX; Printing System, &CUPS;), samal ajal on aga säilitatud ühilduvus <acronym>LPD</acronym> ja muude, isegi veel vähem võimekamate trükisüsteemidega. Ühtlasi on <quote>uks lahti jäetud</quote> kõigile tulevastele arengutele.</para>

<para>Uue &tdeprint;i klassi kasutamiseks oma rakendustes tuleb &kde; arendajatel vaid minimaalselt muuta koodi: iga <classname>QPrinter</classname>i väljakutse tuleb vaid asendada <classname>KPrinter</classname>iga. Vaid ühe (!) tähe asendamisega paaris kohas ongi kogu töö tehtud ning uus ja vaimustav rakendus saab kasutada kõike, mida &tdeprint;i teek talle pakkuda suudab.</para>

<para>Auahnemad või eriliste vajadustega arendajad võivad aga minna kaugemalegi: kuigi &tdeprint;i raamistik on niigi võimalusterohke, on neil võimalik kohandada oma rakenduse trükidialoogi, luues täiendava <quote>kaardi</quote>, kus nende lisandused standardsele &tdeprint;ile leiavad oma õdusa kohakese.</para>


<para>Viimati mainitud võimalust ei ole seni &kde;s väga laialt kasutatud, ilmselt seepärast, et arendajad ei tunne päris hästi &tdeprint;i hiiglaslikku potentsiaali. Usutavasti peagi olukord muutub. Avastasin just hiljuti ühe sellise näitena rakenduse &kcron;. See võimaldab redigeerida crontabi &GUI; vahendusel. Arendajad on lisanud trükkimisvõimaluse, mis lubab sul või administraatoril (<systemitem class="username">root</systemitem>) trükkida kogu crontab (kõigile kasutajatele) või ka ainult märgitud osa. &tdeprint;i toimet võib näha järgmistel piltidel.</para>

<para>See on rakenduse &kcron; näide. <screenshot>
<screeninfo>&kcron;: väike näide süsteemi tööülesannetest, näidatuna &kde; &GUI; vahendusel.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kcron_to_be_printed.png"
format="PNG"/></imageobject>
<textobject>
<phrase>&kcron;i arendajad võimaldavad sul trükkida terve cron-tabeli või ka ainult selle märgitud osa.</phrase></textobject>
</mediaobject>
</screenshot>
</para>

<para>&kcron;i trükivõimaluste seadistamise dialoog: lisakaart nimetusega <guilabel>Cron-i valikud</guilabel> on pärit &kcron;ilt, mitte &tdeprint;ilt. See on spetsiaalne lisand &kcron;i arendajatelt, mis on mõeldud just trükkimiseks ja mis ei ole küll pärit &tdeprint;ist, kuid kasutab seda. Ka muude rakenduste arendajad võivad vabalt lisada oma täiendusi, kui nad arvavad neid vaja olevat.</para>


<screenshot>
<screeninfo>&kcron;i lisandus &tdeprint;i dialoogile.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kprinter_with_kcron_developer_special.png"
format="PNG"/></imageobject>
<textobject>
<phrase>&kcron;i lisandus &tdeprint;i dialoogile.</phrase></textobject>
<caption>
<para>&kcron;i lisandus &tdeprint;i dialoogile.</para>
</caption>
</mediaobject>
</screenshot>

</sect2>

<sect2>
<title>Mida pakub &tdeprint; igaühele...</title>

<para>&tdeprint;i hõlpsasti kasutatav liides kõigi toetatud trükkimis-alamsüsteemide tarbeks ei kõrvalda mõistagi mõnele süsteemile traditsiooniliselt omaseid nõrkusi. Kuid mõningaid asju suudab &tdeprint; siiski vähemalt leevendada. Erinevad kasutajad võivad ühel ja samal masinal kasutada erinevaid trükkimissüsteeme. Kasutaja võib isegi <quote>käigult</quote>, trükkimisdialoogi vahendusel, vahetada järgmiseks tööks kasutatavat alamsüsteemi. (See on küll võimalik ainult siis, kui erinevad süsteemid on paigaldatud nii, et nad üksteisele <quote>jalgu ei jää</quote>.)</para>

<para>Enamik &UNIX;i kasutajaid on harjunud trükkima <acronym>LPD</acronym> vahendusel. <acronym>LPD</acronym> pakub siiski vaid põhilisi trükkimisfunktsioone, on üsna jäik ega suuda tarvitada paljusid võimalusi, mida pakuvad moodsamad trükkimissüsteemid, näiteks &CUPS;. Ka kaugtöö korral (näiteks TCP/IP-põhise protokolli puhul) puudub <acronym>LPD</acronym>-l kahesuunalise suhtlemise, autentimise, ligipääsu kontrolli ja krüptimise tugi.</para>

<para>&tdeprint; võib kasutada &CUPS;i järgmisteks ülesanneteks:</para>

<itemizedlist>
<listitem>
<para>Kohtvõrgust saadavate printerite otsimine</para>
</listitem>
<listitem>
<para>Autentimine (Basic, Digest ja sertifikaat)</para>
</listitem>
<listitem>
<para>Ligipääsu kontroll vastavalt <acronym>IP</acronym> aadressidele, võrguaadressidele, võrgumaskidele, serveri- ja domeeninimedele</para>
</listitem>
<listitem>
<para>trükkimisandmete 128-bitine TLS või SSL3 krüptimine salajase jälgimise vältimiseks või vähemalt selle märksa raskemaks muutmiseks.</para>
</listitem>
</itemizedlist>

<para>Kõik see muudab &tdeprint;i märksa võimsamaks ja usaldusväärsemaks lahenduseks kui auväärne <acronym>LPD</acronym>.</para>

</sect2>
<sect2>
<title>Kuidas &tdeprint;i kasutada </title>

<para>&tdeprint;i või selle osade kasutamine on võimalik neljal moel:</para>

<itemizedlist>
<listitem><para>rakenduste kaudu, kutsudes esile trükkimisdialoogi (kas menüüst <menuchoice><guilabel>Fail</guilabel> <guilabel>Trüki...</guilabel></menuchoice> või väikese printeri ikooniga nupust, mis mõlemad avavad trükkimisdialoogi).</para></listitem>

<listitem><para>käsitsi antud käsuga <command>kprinter</command> <application>terminal</application>i või &konsole;i aknas või menüüga <guilabel>Käivita käsk...</guilabel> ilmuvas mini-<acronym>CLI</acronym> aknas sama käsku andes, mis samuti avab trükkimisdialoogi.</para></listitem>

<listitem><para>nupust <inlinemediaobject><imageobject> <imagedata fileref="kcontrol-icon.png" format="PNG"/></imageobject> </inlinemediaobject>, mis käivitab &juhtimiskeskus;e, ning seejärel valides <menuchoice><guilabel>Süsteem</guilabel><guilabel>Trükihaldur</guilabel></menuchoice>. See avab &tdeprint;i haldamisvõimaluse, mis on &kcontrolcenter;e osa ning võimaldab kasutada ka muid &juhtimiskeskus;e võimalusi.</para></listitem>

<listitem><para>käsurealt (&konsole; või mini-<acronym>CLI</acronym>), kirjutades <userinput> <command>tdecmshell</command> <option>printers</option></userinput>. See avab seadistuste muutmiseks &juhtimiskeskus;e &tdeprint;i osa. </para></listitem>
</itemizedlist>
<screenshot>
<screeninfo>&kprinter;i dialoog käivitatuna aknas <guilabel>Käivita käsk...</guilabel></screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kprinter_called_from_run_command.png"
format="PNG"/></imageobject>
<textobject>
<phrase>&kprinter;i dialoogi käivitamine aknas <guilabel>Käivita käsk...</guilabel>.</phrase></textobject>
<caption><para>&kprinter;i dialoogi käivitamine aknas <guilabel>Käivita käsk...</guilabel>.</para></caption>
</mediaobject>
</screenshot>

<!-- TODO: This one ought to be a screenshot LW. --> <para>Siin aga on näide &kivio; &kprinter;i dialoogist kohe pärast selle käivitamist... Sa võid alati lisada uue printeri klõpsuga väikesel <guiicon>nõustaja</guiicon> nupul (siin märgitud puna-kollasena).</para>
  
<screenshot>
<screeninfo>&kprinter;i dialoogi käivitamine (&kivio; joonistusrakenduses) </screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kprinter-kivio.png"
format="PNG"/></imageobject>
<textobject>
<phrase>&kprinter;i dialoogi käivitamine (&kivio; joonistusrakenduses)</phrase></textobject>
<caption><para>&kprinter;i dialoogi käivitamine (&kivio; joonistusrakenduses)</para></caption>
</mediaobject>
</screenshot>

</sect2>

</sect1>

</chapter>
