# Technický přehled

Tato kapitola se snaží poskytnout technický přehled o &tdeprint;, který by měli pochopit i neprogramátoři.

&tdeprint; je nový a revoluční nástroj s jednoduchým přístupem k tiskovým službám pro uživatele &kde; i vývojáře &kde;.

## Krátký popis &tdeprint;

Funkce &tdeprint; jsou dosažitelné různými způsoby: pomocí Správce tisku v &kcontrol;, příkazem `kprinter` nebo přes dialog, který se zobrazí při požadavku na tisk.

### Co to není

&tdeprint; není náhrada za tiskový subsystém. &tdeprint; proto neposkytuje fronty a nedělá základní zpracování &PostScript; ani jiných tiskových dat.

### Co to je

&tdeprint; je vrstva mezi frontami (a zpracováním dat) a aplikacemi, které chtějí tisknout. &tdeprint; poskytuje rozhraní pro uživatele &kde; i vývojáře &kde; pro přístup k podporovaným tiskovým subsystémům. Zároveň je ho možné výborně nastavit.

&tdeprint; se lehce používá jak koncovým uživatelům &kde; tak i vývojářům. Vývojáři mohou svoje aplikace s minimálními změnami portovat ze starého tiskového systému &Qt; do &tdeprint;. Uživatelé si mohou jednoduše vybrat a nastavit vlastní tiskový subsystém.

Pro nové uživatele &kde;: &Qt; je základní knihovna a grafické prvky, která se používá ve všech aplikacích &kde;. &Qt; vyvíjí norská softwarová firma TrollTech.

## &tdeprint; -- Různé použití pro různé lidi

&tdeprint; se k různým lidem tváří různě.

### Co poskytuje &tdeprint; uživatelům a administrátorům

&tdeprint; umožňuje uživatelům a/nebo administrátorům v závislosti na právech přístup k tiskovým subsystémům (&CUPS;, LPD, RLPR, LPRng, PDQ apod) pomocí grafického rozhraní (&GUI;). S jeho pomocí mohou uživatelé tisknout, spravovat úlohy, tiskárny a tiskového démona, a to všechno velmi komfortně.

Zkušení uživatelé ocení možnost připojit libovolný filtr pro tisková data mezi výstup aplikace a vstup do tiskového subsystému. Některé příklady najdete už v základní verzi &tdeprint;.

### Co poskytuje &tdeprint; vývojářům...

Pokud vývojář &kde; potřebuje, aby jeho aplikace podporovala tisk, nemusí psát tiskové funkce od začátku. Před &kde; 2.2 byla tato služba poskytovaná třídou `QPrinter` z knihovny &Qt;. `QPrinter` používal starý Line Printer Deamon (LPD). Knihovna &tdeprint; je založena na moderním Common &UNIX; Printing System (&CUPS;) i když poskytuje kompatibilitu s LPD a ostatními tiskovými systémy. Nechává k dispozici i možnost pro další vývoj.

Aby mohli vývojáři &kde; používat novou třídu &tdeprint;, stačí na to minimální změny: místo každého volání `QPrinter` se použije volání `KPrinter`. Nahradí se jedno písmeno na pár místech a je to! Aplikace může začít využívat všechny funkce nové knihovny &tdeprint;.

Ambicióznější programátoři nebo ti, kteří potřebují speciální funkce mohou udělat ještě víc: přizpůsobit tiskový dialog přidáním další záložky, kde budou jejich rozšíření standardního &tdeprint;.

Tato poslední funkce není zatím v &kde; velmi používána, protože vývojáři zatím moc nevědí o síle &tdeprint;. To se ale asi v budoucnosti změní. Jedním příkladem, který jsem objevil, je &kcron;. Umožňuje upravit vaši tabulku crontab pomocí &GUI;. Má implementovanou funkci, kterou můžete vy (nebo `root`) vybrat, zda chcete vytisknout tabulku celou (pro všechny uživatele), nebo pouze označenou část. Je ukázána na následujících obrázcích.

Tento obrázek ukazuje příklad nástroje &kcron;. Nástroj &kcron;: malý příklad systémových úloh cron zobrazených pomocí &kde; &GUI;. Vývojáři &kcron; umožnili výběr toho, zda chcete vytisknout celou tabulku, nebo pouze označenou část.

Dialog pro nastavení tiskových možností &kcron;: přidaná záložka Možnosti Cron je z aplikace &kcron; ale není z &tdeprint;. Je to speciální rozšíření přidané z &kcron; pro tisk přes &tdeprint;. I ostatní vývojáři mohou implementovat takováto rozšíření.

&kcron; přídavek do dialogu &tdeprint;. &kcron; přídavek do dialogu &tdeprint;.

&kcron; přídavek do dialogu &tdeprint;.

### Co &tdeprint; nabízí všem...

&tdeprint; je lehce ovladatelné rozhraní pro všechny podporované tiskové subsystémy, i když neodstraňuje jejich základní nedostatky. Ale aspoň zahlazuje některé problémy. Různí uživatelé mohou používat různé tiskové subsystémy. Mohou je dokonce pro jednotlivé úlohy přepínat za běhu z tiskového dialogu. (Samozřejmě musí být jiné subsystémy nainstalovány a nesmí si překážet.)

Většina uživatelů &UNIX; systémů je zvyklá na LPD. LPD poskytuje pouze základní tiskové funkce, není flexibilní a nepodporuje množství voleb, které poskytují moderní tiskové systémy, jako je například &CUPS;. I když dokáže tisknout vzdáleně (jako každý protokol založený na TCP/IP), LPD nepodporuje obousměrnou komunikaci, přihlášení, ovládání přístupu ani šifrování.

&tdeprint; dokáže s &CUPS; podporovat:

- hledání dostupných tiskáren ve vaší LAN,

- základní, digest a certifikátové přihlášení,

- ovládání přístupu na základě IP adres, síťových adres, síťových masek, jmen hostitelů a domén,

- šifrování tiskových dat pomocí 128-bitového TLS nebo SSL3 a tak ochránit data.

Proto je &tdeprint; daleko robustnější a bezpečnější řešení než starý LPD.

### Jak používat &tdeprint;

Ke &tdeprint; máte přístup těmito různými způsoby:

- pomocí aplikací: pokud zavoláte tiskový dialog (pomocí Soubor Tisk...) nebo tlačítkem s malou tiskárnou.

- pomocí příkazu `kprinter` v terminal nebo okně &konsole; nebo z dialogu Spustit příkaz....

- pomocí tlačítka , které spustí &kcontrol; a použitím Systém Správce tisku. Tím se otevře administrátorská část &tdeprint; v &kcontrolcenter; a umožňuje přepínat do jiných částí &kcontrol;.

- z příkazového řádku (&konsole; nebo dialogu Spustit příkaz...) příkazem ``tdecmshell` `printmgr``. Tím se spustí pouze část &tdeprint; v &kcontrol;.

Dialog &kprinter; spuštěný z okna Spustit příkaz... Spuštění dialogu &kprinter; z okna Spustit příkaz...

Spuštění dialogu &kprinter; z okna Spustit příkaz...

Toto je kresba z &kivio; v dialogu &kprinter;. Vždy můžete přidat novou tiskárnu kliknutím na malé tlačítko Průvodce (na obrázku označené červenou/žlutou barvou).

Spuštěný dialog &kprinter; (náhled kresby &kivio;) Spuštěný dialog &kprinter; (náhled kresby &kivio;)

Spuštěný dialog &kprinter; (náhled kresby &kivio;)