Impression

La plupart des applications ont besoin de fournir la capacité d'imprimer. Les utilisateurs s'attendent à pouvoir imprimer ce qu'ils voient à l'écran. La plate-forme GNOME fournit des bibliothèques pour aider à intégrer une prise en charge de l'impression de haute qualité dans les applications.

III.VII.I. Impression GNOME

Cette section est dorénavant obsolète. libgnomeprint et libgnomeprintui ont été rendus obsolètes par GtkPrint. L'impression a été intégrée directement dans GTK+ à partir de la version 2.10, offrant ainsi une interface de programmation portable que toutes les applications peuvent utiliser pour l'impression. La garantie de stabilité des interfaces de programmation et des interfaces binaires assure que Gnomeprint continuera d'être fonctionnel et pris en charge tout au long du cycle de vie de GNOME 2.

Le cadre applicatif d'impression de GNOME consiste en deux bibliothèques qui aident à intégrer dans votre application l'impression de haute qualité avec une interface cohérente. Au coeur du cadre applicatif d'impression se trouve libgnomeprint, une bibliothèque pour la création de sorties PostScript à destination des imprimantes. libgnomeprintui se situe au-dessus et offre des composants standards d'impression pour l'interface utilisateur.

La bibliothèque libgnomeprint implémente le modèle d'imagerie PostScript, utilisé par la plupart des imprimantes. Les imprimantes qui ne prennent pas en charge le langage PostScript peuvent aussi être gérées par l'intermédiaire de CUPS, comme expliqué ci-dessous. En plus de l'imagerie standard PostScript, libgnomeprint gère également les canaux alpha et l'anti-crénelage.

La bibliothèque libgnomeprintui contient une boîte de dialogue d'impression standard, une boîte de dialogue d'aperçu avant impression et divers autres contrôles et fonctions nécessaires pour l'intégration de l'impression dans une interface utilisateur intuitive. Le cadre applicatif d'impression de GNOME gère les détails de l'emplacement des imprimantes et de la mise en attente des travaux d'impression, et il permet aussi l'exportation PostScript et PDF directement dans la boîte de dialogue d'impression.

Libgnomeprint devrait être utilisée à chaque fois qu'il s'agit de produire du contenu en PostSript pour l'impression. Libgnomeprintui devrait être utilisée pour construire l'interface utilisateur d'impression, même si la sortie à produire provient d'une autre source. L'utilisation du cadre applicatif d'impression de GNOME permet aux utilisateurs d'avoir toujours le même type d'interface utilisateur et d'y rencontrer les fonctionnalités qu'ils attendent pour l'impression dans une application.

III.VII.II. CUPS

Sur la plupart des systèmes GNOME, CUPS (Common UNIX Printing System) joue le rôle du système d'impression de bas niveau. CUPS offre une architecture moderne et riche en fonctionnalités pour la découverte d'imprimantes, l'accès aux options d'impression et la mise en attente (spool) de travaux d'impression à destination de divers types d'imprimantes.

CUPS fournit un ensemble d'utilitaires pour la découverte automatique d'imprimantes locales et en réseau. Cela permet aux utilisateurs non seulement de voir les imprimantes disponibles, mais aussi d'utiliser différents types d'imprimantes sans devoir les configurer manuellement.

CUPS offre une interface unifiée pour l'impression, quel que soit l'emplacement ou le type de l'imprimante. CUPS gère indifféremment plusieurs protocoles d'impression en appliquant automatiquement des filtres aux contenus envoyés aux imprimantes. Les applications n'ont qu'à fournir une sortie PostScript et CUPS se charge de la conversion automatique pour les imprimantes qui ne prennent pas en charge nativement le format PostScript.

CUPS fournit également des options de configuration d'impression sous la forme de fichiers de description d'imprimantes PostScript (PPD). Les configurations PPD permettent aux applications d'exposer aux utilisateurs les possibilités des différentes imprimantes avec une interface commune. Par exemple, les fichiers PPD vous permettent de savoir si une imprimante peut regrouper et agrafer des travaux d'impression, afin de pouvoir présenter l'option correspondante dans l'interface utilisateur.

Dans la plupart des cas, les applications n'ont pas besoin d'interagir directement avec CUPS. En utilisant le cadre applicatif d'impression de GNOME, vous obtenez automatiquement la puissance et la souplesse de CUPS. La présence de CUPS en arrière-plan améliore le confort des utilisateurs en exigeant moins de programmation.