Titel | Inhalt | Suchen | Index | DOC | Handbuch der Java-Programmierung, 7. Auflage |
<< | < | > | >> | API | Kapitel 35 - Drucken |
Eine weitere interessante Alternative ist das Drucken mit dem Desktop API. Zentrum des API ist die Klasse Desktop des Package java.awt. Hierbei wird eine Datei anhand ihrer Endung an die dafür zuständige Applikation übergeben und diese angewiesen, den Druck durchzuführen. So kann sie sich beispielsweise den Acrobat Reader für das Drucken von PDF-Dateien zunutze machen, den Standardbrowser zum Drucken von HTML-Dateien usw.
Allerdings ist nicht sichergestellt, dass das Drucken auf allen Plattformen funktioniert. Folgende Voraussetzungen müssen erfüllt sein:
Mit den folgenden Methoden kann man abfragen, ob der Desktop auf dieser Plattform unterstützt wird und das Drucken ermöglicht:
static boolean isDesktopSupported() boolean isSupported(Action action) |
java.awt.Desktop |
Das folgende Programm zeigt die beispielhafte Verwendung des API. Es druckt die Datei, die als Parameter über die Kommandozeile übergeben wird:
001 /* Listing3504.java */ 002 003 import java.awt.*; 004 import java.awt.Desktop.Action; 005 import java.io.*; 006 007 public class Listing3504 008 { 009 public static void main(String[] args) throws IOException 010 { 011 Desktop d; 012 if (Desktop.isDesktopSupported()) { 013 d = Desktop.getDesktop(); 014 015 if (d.isSupported(Action.PRINT)) { 016 File file = new File(args[0]); 017 if (file.exists()) { 018 d.print(file); 019 } 020 else { 021 throw new IllegalStateException( 022 file + " existiert nicht"); 023 } 024 } 025 else { 026 throw new IllegalStateException( 027 "Drucken wird nicht unterstützt"); 028 } 029 } 030 else { 031 throw new IllegalStateException( 032 "Desktop wird nicht unterstützt"); 033 } 034 } 035 } |
Listing3504.java |
Beim Drucken über das Desktop API ist es nicht möglich, die Ausgabe optisch zu beeinflussen, außerdem können keine Kopien gedruckt oder abweichende Druckerfächer angesteuert werden. Zudem eignet es sich aufgrund seiner konzeptionell bedingten Trägheit natürlich nicht für den Massendruck.
Titel | Inhalt | Suchen | Index | DOC | Handbuch der Java-Programmierung, 7. Auflage, Addison Wesley, Version 7.0 |
<< | < | > | >> | API | © 1998, 2011 Guido Krüger & Heiko Hansen, http://www.javabuch.de |