Erweiterte DrucktechnikenAdobe AIR 2 und höher Ab Adobe AIR 2 hat die PrintJob-Klasse zusätzliche Eigenschaften und Methoden. Außerdem werden drei neue Klassen unterstützt: PrintUIOptions, PaperSize und PrintMethod. Diese Änderungen ermöglichen zusätzliche Arbeitsabläufe beim Drucken und bieten Autoren eine bessere Steuerung des Druckvorgangs. Zu den Änderungen zählen:
Änderungen am DruckablaufDer neue Arbeitsablauf beim Drucken setzt sich aus den folgenden Schritten zusammen:
Dialogfeld „Seite einrichten“Die showPageSetupDialog()-Methode zeigt das Dialogfeld „Seite einrichten“ des Betriebssystems an, sofern von der aktuellen Umgebung unterstützt. Überprüfen Sie vor dem Aufruf dieser Methode immer die supportsPageSetupDialog-Eigenschaft. Ein einfaches Beispiel: import flash.printing.PrintJob;
var myPrintJob:PrintJob = new PrintJob();
//check for static property supportsPageSetupDialog of PrintJob class
if (PrintJob.supportsPageSetupDialog) {
myPrintJob.showPageSetupDialog();
}
Die Methode kann wahlweise mit einer Eigenschaft der PrintUIOptions-Klasse aufgerufen werden, um zu steuern, welche Optionen im Dialogfeld „Seite einrichten“ angezeigt werden. Die minimale und maximale Seitenanzahl kann festgelegt werden. Mit dem folgenden Beispiel werden nur die ersten drei Seiten gedruckt: import flash.printing.PrintJob;
var myPrintJob:PrintJob = new PrintJob();
if (PrintJob.supportsPageSetupDialog) {
var uiOpt:PrintUIOptions = new PrintUIOptions();
uiOpt.minPage = 1;
uiOpt.maxPage = 3;
myPrintJob.showPageSetupDialog(uiOpt);
}
Ändern der DruckeinstellungenDie Einstellungen für eine PrintJob-Instanz können jederzeit nach der Konstruktion der Instanz geändert werden. Die Einstellungen können zwischen addPage()-Aufrufen und nach dem Senden oder Beenden eines Druckauftrags geändert werden. Einige Einstellungen, wie beispielsweise die printer-Eigenschaft, gelten für den ganzen Druckauftrag, nicht nur für einzelne Seiten. Diese Einstellungen müssen vor einem Aufruf von start() oder start2() festgelegt werden. Die selectPaperSize()-Methode kann aufgerufen werden, um das standardmäßige Papierformat in den Dialogfeldern „Seite einrichten“ und „Drucken“ festzulegen. Sie kann auch während eines Druckauftrags aufgerufen werden, um das Papierformat für einen Seitenbereich festzulegen. Sie wird mithilfe von Konstanten aufgerufen, die in der PaperSize-Klasse definiert sind, wie in diesem Beispiel, in dem ein Umschlag der Größe 10 ausgewählt wird: import flash.printing.PrintJob;
import flash.printing.PaperSize;
var myPrintJob:PrintJob = new PrintJob();
myPrintJob.selectPaperSize(PaperSize.ENV_10);
Verwenden Sie die printer-Eigenschaft, um den Namen des Druckers für den aktuellen Druckauftrag abzurufen oder festzulegen. Standardmäßig ist sie auf den Namen des Standarddruckers eingestellt. Die printer-Eigenschaft hat den Wert null, wenn keine Drucker verfügbar sind oder wenn das Drucken vom System nicht unterstützt wird. Zum Ändern des Druckers rufen Sie zunächst die Liste der verfügbaren Drucker mithilfe der printers-Eigenschaft ab. Dies ist eine Vector-Eigenschaft, deren String-Elemente die verfügbaren Druckernamen sind. Stellen Sie die printer-Eigenschaft auf einen dieser Stringwerte ein, um den jeweiligen Drucker als aktiven Drucker festzulegen. Die printer-Eigenschaft eines aktiven Druckauftrags kann nicht geändert werden. Wenn Sie versuchen, die Eigenschaft nach einem erfolgreichen Aufruf von start() oder start2() und vor dem Senden oder Beenden des Druckauftrags zu ändern, schlägt der Vorgang fehl. Im folgenden Beispiel wird gezeigt, wie diese Eigenschaft festgelegt werden kann: import flash.printing.PrintJob;
var myPrintJob:PrintJob = new PrintJob();
myPrintJob.printer = "HP_LaserJet_1";
myPrintJob.start();
Mit der copies-Eigenschaft wird der Wert für die Anzahl der Exemplare abgerufen, der im Dialogfeld „Drucken“ des Betriebssystems festgelegt ist. Mit den Eigenschaften firstPage und lastPage wird der Seitenbereich abgerufen. Mit der orientation-Eigenschaft wird die Einstellung für die Papierausrichtung abgerufen. Diese Eigenschaften können festgelegt werden, um die Werte im Dialogfeld „Drucken“ außer Kraft zu setzen. Im folgenden Beispiel werden diese Eigenschaften festgelegt: import flash.printing.PrintJob;
import flash.printing.PrintJobOrientation;
var myPrintJob:PrintJob = new PrintJob();
myPrintJob.copies = 3;
myPrintJob.firstPage = 1;
myPrintJob.lastPage = 3;
myPrintJob.orientation = PrintJobOrientation.LANDSCAPE;
Die folgenden schreibgeschützten Einstellungen für PrintJob bieten nützliche Informationen zur aktuellen Druckereinrichtung:
|
|