<chapter id="technical-overview">
<title
>Survol technique</title>

<para
>Ce chapitre vise à donner un aperçu technique de &kdeprint; que les non-programmeurs puissent comprendre.</para>

<para
>&kdeprint; est un outil nouveau et révolutionnaire pour donner un accès facile aux services d'impression pour à la fois les utilisateurs de &kde; et les développeurs de &kde;.</para>

<sect1 id="brief-description">
<title
>Brève description de &kdeprint;</title>

<para
>Vous pouvez accéder aux fonctions de &kdeprint; de différentes manières : par le gestionnaire d'impression du &centreConfiguration;, par la commande <command
>kprinter</command
> ou par le dialogue qui surgit lorsque vous voulez imprimer.</para>

<sect2 id="what-kdeprint-is-not">
<title
>Ce que ce n'est <emphasis
>pas</emphasis
></title>

<para
>&kdeprint; n'est <emphasis
>pas</emphasis
> un substitut pour le sous-système d'impression lui-même. &kdeprint; ne gère <emphasis
>pas</emphasis
> la file d'attente et ne fait <emphasis
>pas</emphasis
> le traitement de base de &PostScript; ou autre données d'impression.</para>

</sect2>

<sect2 id="what-kde-print-is">
<title
>Ce que c'<emphasis
>est</emphasis
></title>
<para
>&kdeprint; est une couche intermédiaire entre la file d'attente et le sous-système de processus d'impression des données (comme installé), et l'application qui atteint l'imprimante. &kdeprint; fournit une interface commune pour les développeurs de &kde; et les utilisateurs de &kde; pour divers sous-systèmes d'impression. En même temps, elle est personnalisable et très configurable.</para>

<para
>&kdeprint; est facile à utiliser pour à la fois les développeurs et les utilisateurs finaux de &kde;. Les développeurs peuvent porter leurs applications avec un minimum de changements pour utiliser &kdeprint; au lieu de l'ancien système &Qt; print. Les utilisateurs peuvent facilement choisir et configurer leur sous-système d'impression.</para>

<para
>Pour une référence pour les nouveaux utilisateurs de &kde;, &Qt; est la bibliothèque de base et le jeu d'outils graphique qui est utilisé par toutes les applications &kde; ; &Qt; est développé par TrollTech, une société de logiciels norvégienne.</para>

</sect2>

</sect1>

<sect1 id="different-users">
<title
>&kdeprint; -- Différents usages pour différentes personnes</title>

<para
>&kdeprint; a différents visages pour les différentes personnes.</para>

<sect2 id="what-users-can-do">
<title
>Ce que les utilisateurs et les administrateurs peuvent faire avec &kdeprint;</title>

<para
>&kdeprint; permet aux utilisateurs et / ou administrateurs, en fonction de leurs droits, d'accéder aux sous-systèmes d'impression (&CUPS;, <acronym
>LPD</acronym
>, <acronym
>RLPR</acronym
>, <application
>LPRng</application
>, <application
>PDQ</application
> &etc;) à travers une interface graphique utilisateur &kde; (&GUI;). En utilisant &kdeprint;, ils peuvent imprimer, administrer les tâches, les imprimantes et le démon d'impression, le tout d'une manière confortable.</para>

<para
>Les utilisateurs expérimentés aimeront la capacité de connecter n'importe quel filtre pour l'impression de données entre la sortie de leur application et l'entrée, dans le sous-système choisi. Quelques exemples pour ceci sont déjà fournis avec &kdeprint;<quote
>plain vanilla</quote
>. Lisez donc.</para>

</sect2>


<sect2 id="what-developers-can-do">
<title
>Ce que les développeurs de &kde; peuvent faire avec...</title>

<para
>Si un développeur de &kde; a besoin d'un accès à l'impression pour son application, il ne code pas les fonctions d'impression à partir de rien. Avant &kde; 2.2, ce service était fourni par la classe <classname
>QPrinter</classname
>, une fonction de bibliothèque du jeu d'outils &Qt;. La classe <classname
>QPrinter</classname
> reposait sur le démodé <quote
>Line Printer Daemon</quote
> (<acronym
>LPD</acronym
>). La bibliothèque &kdeprint; elle-même repose sur le plus moderne Common &UNIX; Printing System (&CUPS;), alors qu'en même temps, la compatilité rétrograde avec <acronym
>LPD</acronym
> et autres héritages ou systèmes d'impression moins élaborés. Il laisse aussi<quote
>la porte ouverte</quote
> pour n'importe quel développement qui pourrait survenir.</para>

<para
>Pour que les développeurs de &kde; utilisent la nouvelle classe &kdeprint; dans leurs applications, ils n'ont besoin que de changements minimaux à leur code : pour chaque appel de <classname
>QPrinter</classname
>, ils ont juste besoin de changer ceci en <classname
>KPrinter</classname
>. En remplaçant une ( ! ) lettre dans quelques endroits, tout est fait ; leur application peut utiliser toutes les fonctionnalités de la nouvelle bibliothèque &kdeprint;.</para>

<para
>Les développeurs plus ambitieux, ou ceux qui ont des besoins particuliers, peuvent faire mieux : en dépit du cadre riche en fonctionnalités de &kdeprint;, ils sont encore capables de personnaliser le dialogue d'impression de leur application en créant un <quote
>onglet</quote
> supplémentaire, avec leurs extensions au &kdeprint; standard pour se sentir bien chez eux.</para>


<para
>Cette dernière fonctionnalité n'a pas été largement utilisée largement dans &kde; jusqu'à maintenant, car les développeurs ne connaissent pas vraiment la puissance de &kdeprint;. Attendez-en plus dans l'avenir. Un exemple que j'ai découvert est l'application &kcron;. Elle vous permet de modifier le crontab à travers une &GUI;. Les développeurs ont implémenté une fonctionnalité d'impression qui vous permet (ou <systemitem class="username"
>root</systemitem
>) de choisir si vous voulez imprimer la totalité de crontab (pour tous les utilisateurs) ou juste la partie qui est marquée. Vous pouvez voir les effets sur &kdeprint; dans les captures d'écran suivantes.</para>

<para
>Cette capture montre un exemple tiré de l'utilitaire &kcron;. <screenshot>
<screeninfo
>L'utilitaire &kcron; : un petit exemple des tâches programmées du système comme montré par le &GUI; de &kde;.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kcron_to_be_printed.png"
format="PNG"/></imageobject>
<textobject>
<phrase
>Les développeurs de &kcron; vous permettent de choisir d'imprimer la totalité de la table cron ou juste la partie marquée.</phrase
></textobject>
</mediaobject>
</screenshot>
</para>

<para
>La boîte de dialogue pour configurer les options d'impression de &kcron; : l'onglet additionnel intitulé <guilabel
>Cron</guilabel
> vient de l'intérieur de &kcron; et pas de &kdeprint; ; c'est une extension spéciale ajoutée par les développeurs de &kcron; pour un but d'impression, pas originaire, mais exécuté par &kdeprint;. Les développeurs des autres applications sont libres d'implémenter leurs propres modules externes, s'ils en ont besoin ou envie.</para>


<screenshot>
<screeninfo
>L'ajout de &kcron; à la boîte de dialogue &kdeprint;.</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kprinter_with_kcron_developer_special.png"
format="PNG"/></imageobject>
<textobject>
<phrase
>L'ajout de &kcron; à la boîte de dialogue &kdeprint;.</phrase
></textobject>
<caption>
<para
>L'ajout de &kcron; à la boîte de dialogue &kdeprint;.</para>
</caption>
</mediaobject>
</screenshot>

</sect2>

<sect2>
<title
>Ce que &kdeprint; offre à tout un chacun...</title>

<para
>L'interface facile à utiliser de &kdeprint; pour tous les sous-systèmes d'impression n'élimine pas bien sûr les faiblesses traditionnelles de base de ces systèmes. Mais elle arrondit certains angles. Différents utilisateurs peuvent utiliser différents systèmes d'impression sur le même ordinateur. Un utilisateur peut même basculer <quote
>au vol</quote
>, depuis la boîte de dialogue d'impression, de sous-système à utiliser pour la tâche suivante. (C'est possible si différents systèmes sont installés de manière à <quote
>ne pas interférer</quote
>).</para>

<para
>La plupart des utilisateurs d'&UNIX; sont habitués à l'impression <acronym
>LPD</acronym
>. <acronym
>LPD</acronym
> ne fournit que des fonctions d'impression de base, est très rigide et n'utilise pas les nombreuses fonctions des systèmes d'impression plus modernes comme &CUPS;. Lors d'un travail distant (comme basé sur le protocole TCP/IP), <acronym
>LPD</acronym
> manque de communication bidirectionnelle, d'authentification, de contrôle d'accès et de chiffrement.</para>

<para
>&kdeprint; peut utiliser &CUPS; pour gérer :</para>

<itemizedlist>
<listitem>
<para
>La requête par le <acronym
>LAN</acronym
> pour les imprimantes disponibles,</para>
</listitem>
<listitem>
<para
>Bases, résumé et Certificat d'authentification</para>
</listitem>
<listitem>
<para
>Le contrôle d'accès basé sur les adresses <acronym
>IP</acronym
>, les adresses réseau, les masques de réseau, les hôtes et les noms de domaines,</para>
</listitem>
<listitem>
<para
>et le chiffrement des données à imprimer en TLS 128 bits ou SSL3, pour empêcher l'espionnage ou au moins le rendre bien plus difficile.</para>
</listitem>
</itemizedlist>

<para
>Ceci fait de &kdeprint; une solution bien plus robuste et fiable que le vénérable <acronym
>LPD</acronym
>.</para>

</sect2>
<sect2>
<title
>Comment accéder à &kdeprint; </title>

<para
>Vous pouvez accéder à &kdeprint;, ou à certaines de ses parties, de différentes manières :</para>

<itemizedlist>
<listitem
><para
>à travers votre application : si vous appelez le dialogue d'impression (soit <menuchoice
><guilabel
>Fichier </guilabel
><guilabel
>Imprimer...</guilabel
></menuchoice
>, soit le bouton avec une petite icône d'imprimante), cela ouvre le dialogue d'impression.</para
></listitem>

<listitem
><para
>par la commande saisie au clavier <command
>kprinter</command
> dans une fenêtre de <application
>terminal</application
> ou une &konsole;ou depuis <guilabel
>Exécuter...</guilabel
>, la fenêtre de mini-<acronym
>CLI</acronym
> : ceci ouvre aussi la boîte de dialogue d'impression.</para
></listitem>

<listitem
><para
>depuis le <inlinemediaobject
><imageobject
> <imagedata fileref="kcontrol-icon.png" format="PNG"/></imageobject
> </inlinemediaobject
> bouton, en lançant le &centreConfiguration;, puis dans <menuchoice
><guilabel
>Périphériques</guilabel
><guilabel
>Imprimantes</guilabel
></menuchoice
>. Ceci ouvre la gestion de &kdeprint;, qui fait partie du &centreConfiguration;, et aussi vous permet de basculer vers les autres composants du &centreConfiguration;</para
></listitem>

<listitem
><para
>depuis une ligne de commande (&konsole; ou mini-<acronym
>CLI</acronym
>), saisissez <userinput
><command
>kcmshell</command
> <option
>printers</option
></userinput
>. Ceci ouvre juste le composant &kdeprint; du &centreConfiguration; pour changer vos réglages </para
></listitem>
</itemizedlist>
<screenshot>
<screeninfo
>Le dialogue de &kprinter; à lancer depuis la fenêtre <guilabel
>Exécuter...</guilabel
></screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kprinter_called_from_run_command.png"
format="PNG"/></imageobject>
<textobject>
<phrase
>Le dialogue de &kprinter; à lancer depuis la fenêtre <guilabel
>Exécuter...</guilabel
></phrase
></textobject>
<caption
><para
>Le dialogue de &kprinter; à lancer depuis la fenêtre <guilabel
>Exécuter...</guilabel
></para
></caption>
</mediaobject>
</screenshot>

<!-- TODO: This one ought to be a screenshot LW. --> <para
>Voici un dessin &kivio; de la boîte de dialogue &kprinter; comme elle surgit après démarrage... Vous pouvez toujours ajouter une imprimante en cliquant sur le petit bouton <guiicon
>Assistant</guiicon
> (marqué de jaune et de rouge sur ce dessin).</para>
  
<screenshot>
<screeninfo
>Boîte de dialogue de &kprinter; (dessin &kivio;) </screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="kprinter-kivio.png"
format="PNG"/></imageobject>
<textobject>
<phrase
>Boîte de dialogue de &kprinter; (dessin &kivio;)</phrase
></textobject>
<caption
><para
>Boîte de dialogue de &kprinter; (dessin &kivio;)</para
></caption>
</mediaobject>
</screenshot>

</sect2>

</sect1>

</chapter>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:true
sgml-parent-document:"index.docbook" "book"
End:
-->
