Die meisten Anwendungen benötigen Unterstützung für das Drucken. Die Benutzer erwarten, dass Sie das, was sie auf dem Bildschirm sehen, auch drucken können. Die GNOME-Plattform stellt Bibliotheken zur Verfügung, die Ihnen bei der Hinzufügung der Unterstützung für qualitativ hochwertige Ausdrucke aus Ihrer Anwendung heraus behilflich sind.
- 3.7.1. GNOME Print
- 3.7.2. CUPS
3.7.1. GNOME Print
Beachten Sie, dass dieser Abschnitt veraltet ist, weil libgnomeprint und libgnomeprintui als veraltet markiert und durch GtkPrint ersetzt wurden. Drucken wurde direkt in GTK+ 2.10 und neuere Versionen intergriert. Eine plattformübergreifende Druck-Schnittstelle ist entstanden, die von allen Anwendungen genutzt werden kann. Während die gegenwärtige GNOME-Druckumgebung veraltet sein wird, sobald GTK+ das Drucken direkt unterstützt, stellen die ABI- und API-Stabilitätsgarantien sicher, dass die Funktionalität und Unterstützung während der Lebensdauer von GNOME 2 erhalten bleibt.
Die GNOME-Druckumgebung besteht aus zwei Bibliotheken, die Ihnen helfen, hochwertige Ausdrucke mit einer konsistenten Bedienoberfläche in Ihrer Anwendung anzubieten. Den Kern der Druckumgebung bildet libgnomeprint, eine Bibliothek, die PostScript-Ausgaben erzeugt, die an Drucker gesendet werden können. Darauf baut libgnomeprintui auf, welches standardisierte Bedienelemente für Ihre Benutzeroberfläche bereitstellt.
Die libgnomeprint-Bibliothek implementiert das PostScript-Darstellungsmodell, welches von den meisten Druckern verwendet wird. Drucker, die PostScript nicht unterstützen, werden durch CUPS unterstützt, welches im Folgenden beschrieben wird. Zusätzlich zur vorgegebenen PostScript-Darstellung bietet libgnomeprint auch Unterstützung für den Alphakanal und Kantenglättung.
Die libgnomeprintui-Bibliothek stellt einen standardisierten Druckdialog bereit, eine Dialog zur Druckvorschau und weitere Steuerungen und Funktionalitäten, die zum Erstellen einer intuitiv bedienbaren Benutzerschnittstelle erforderlich ist. Die GNOME-Druckumgebung kümmert sich um die Details wie die Druckererkennung oder die Verwaltung von Warteschlangen. Der Export in PostScript oder PDF ist direkt im Druckdialog möglich.
Wo immer es möglich ist, sollten Sie libgnomeprint zur Ausgabe von Inhalten im PostScript-Format für das Drucken verwenden. Konstruieren Sie mit libgnomeprintui die Benutzerschnittstelle für Druckaufgaben, selbst dann, wenn die gerenderte Ausgabe aus einer anderen Quelle stammt. Mit dem GNOME-Druck-Framework erhält der Benutzer eine konsistente Bedienoberfläche mit den Funktionsmerkmalen, die er von Druckanwendungen erwartet.
3.7.2. CUPS
Auf den meisten GNOME-Systemen bildet CUPS das Rückgrat des Drucksystems. CUPS stellt eine moderne, funktionsreiche Architektur zur Druckererkennung sowie den Zugriff auf Optionen und Warteschlangen für die verschiedenen Druckertypen bereit.
CUPS liefert eine Reihe von Dienstprogrammen für die automatische Erkennung von sowohl lokalen als auch Netzwerkdruckern. Dadurch sehen die Benutzer die verfügbaren Drucker nicht nur, sondern können die verschiedenen Arten von Druckern weitgehend ohne manuelle Konfiguration nutzen.
CUPS stellt eine vereinheitlichte Schnittstelle zum Drucken bereit, unabhängig von Ort oder Art des Druckers. Mehrere Druckprotokolle werden nahtlos von CUPS verarbeitet, indem auf die an die Drucker gesendeten Inhalte automatisch Filter angewendet werden. Anwendungen können so ganz einfach PostScript ausgeben, und CUPS wird es automatisch für Drucker umwandeln, die PostScript nicht direkt unterstützen.
CUPS bietet auch Einstellungsoptionen für das Drucken in Form von »PostScript Printer Description«- (PPD-)Dateien. PPD-Konfigurationen ermöglichen Anwendungen, den Benutzern die Fähigkeiten eines bestimmten Druckers in einer konsistenten Benutzerschnittstelle anzuzeigen. Beispielsweise erlaubt Ihnen PPD zu ermitteln, ob ein Drucker Druckaufträge heften und binden kann und stellt eine entsprechende Option im Druckdialog bereit.
In den meisten Fällen werden Sie die CUPS-Schnittstelle in Ihren Anwendungen nicht benötigen. Durch die GNOME-Druckumgebung haben Sie ganz automatisch Zugriff auf die Stärke und Flexibilität von CUPS. Durch CUPS erreichen Sie eine bessere Benutzbarkeit mit weniger Programmieraufwand.