Drucken

Dieser Abschnitt beschreibt das Thema Drucken aus der konzeptionellen Perspektive. Beispiele befinden sich im Kapitel „Beispiele zum Druck“.

jadice document platform nutzt die Java Print Service API um Druckjobs durchzuführen. Die zentrale Klasse um Druckjobs abzusetzen ist PrintManager. Der PrintManager verwaltet den Java-Druckservice, nimmt Druckanfragen entgegen und führt sie aus. Die Klasse bietet verschiedene statische Methoden an, die es erlauben, eine Druckanfrage zu übergeben. Die Übergabe erfolgt mittels einer Instanz von PrintJobConfiguration.

Printer ist die zentrale Klasse zum Druck von Dokumenten aus jadice. Diese Klasse ist abgeleitet von der abstrakten Basisklasse AbstractPrinter, die grundsätzliche Druckfunktionalität bietet und von Integratoren genutzt werden kann, um eigene Printer zu verwirklichen. In den meisten Integrationen der jadice document platform ist es nicht notwendig eigene Printer zu implementieren.

Die zentrale Klasse zur Beschreibung eines Druckjobs ist PrintJobConfiguration. Über die statische create(..)-Methode lässt sich eine vorkonfigurierte Instanz erzeugen und im Anschluss an den eigenen Bedarf anpassen. Sie bietet über die getSourcePages(..)-Methode die Möglichkeit zu druckende Seiten hinzuzufügen. Die Liste die dazu verwendet wird ist eine EventList und muss daher beim Lesen uns Schreiben entsprechend gelockt werden (siehe EventList und Erweiterungen an der Collections API).

Weitere optionale Angaben zum Druck können einem Druckjob über die API und dem Druckdialog vorgegeben werden:

  • Angabe des Seitenformats  über getter-/setter-Methoden oder als Benutzer-Eingabe (Dialog)

  • Weitere Einschränkung der zu druckenden Seiten über Benutzer-Eingabe (Dialog)

  • Flags, die angeben ob und unter welchen Bedingungen Seiten optimal in den Druckbereich eingepasst werden sollen. Ist diese Option aktiviert, versucht jadice zum Beispiel durch Anpassen der Seitengröße und/oder durch automatisches Rotieren die Seite in das Medium einzupassen.

Status von Druckvorgängen

Die zentrale Klasse PrintEventBroadcaster bietet die Möglichkeit, Informationen über den aktuellen Fortschritt von Druckaufträgen zu erhalten. Zu diesem Zweck können über statische Methoden eigene Implementationen des Interface PrintEventListener registriert werden. Mit jeder Statusänderung werden diese durch ein PrintEvent über den neu eingenommenen Zustand informiert. Im Besonderen erhält die integrierende Anwendung somit Informationen darüber, ob ein Druckvorgang erfolgreich abgeschlossen werden konnte oder mit einem Fehler beendet wurde.

[jadice viewer Version 6.1.37: Dokumentation für Entwickler. Veröffentlicht: 2024-11-11]