高度なプリント技術Adobe AIR 2 以降 Adobe AIR 2 以降、PrintJob クラスにはプロパティおよびメソッドが追加されています。また、3 つのクラス(PrintUIOptions、PaperSize および PrintMethod)が追加でサポートされるようになりました。これらの変更によって、プリンターのワークフローを追加できるようになり、作成者はより詳細にプリント処理を制御できるようになりました。変更には、以下の内容が含まれます。
プリントワークフローの変更新しいプリントワークフローは、次の 4 つの手順から構成されます。
ページ設定ダイアログshowPageSetupDialog() メソッドは、現在の環境でサポートされている場合、オペレーティングシステムのページ設定ダイアログを表示します。このメソッドは呼び出す前に、必ず、supportsPageSetupDialog プロパティを確認してください。次に簡単な例を示します。 import flash.printing.PrintJob; var myPrintJob:PrintJob = new PrintJob(); //check for static property supportsPageSetupDialog of PrintJob class if (PrintJob.supportsPageSetupDialog) { myPrintJob.showPageSetupDialog(); } このメソッドは、必要に応じて、ページ設定ダイアログに表示するオプションを制御する PrintUIOptions クラスのプロパティと共に呼び出すことができます。ページ番号の最小値と最大値を設定できます。次の例では、最初の 3 ページの印刷に制限しています。 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); } プリント設定の変更PrintJob インスタンスの設定は、インスタンスの作成後、いつでも変更できます。例えば、addPage() を次回呼び出すときや、プリントジョブが送信または強制終了された後などに、設定を変更できます。printer プロパティなどの一部の設定は、個々のページではなく、プリントジョブ全体に適用されます。これらの設定は、start() または start2() を呼び出す前に設定されている必要があります。 selectPaperSize() メソッドは、ページ設定ダイアログおよび印刷ダイアログで、デフォルトの用紙サイズを設定するために呼び出すことができます。プリントジョブ中に呼び出して、特定のページ範囲の用紙サイズを設定することもできます。このメソッドは PaperSize クラスで定義されている定数を使用して呼び出されます。次の例では、#10 封筒サイズが選択されています。 import flash.printing.PrintJob; import flash.printing.PaperSize; var myPrintJob:PrintJob = new PrintJob(); myPrintJob.selectPaperSize(PaperSize.ENV_10); printer プロパティを使用して、現在のプリントジョブのプリンター名を取得または設定します。デフォルトで、このプロパティは既定のプリンターの名前に設定されます。利用可能なプリンターがないか、システムでプリントがサポートされていない場合、printer プロパティは null です。プリンターを変更するには、最初に printers プロパティを使用して利用可能なプリンターの一覧を取得します。このプロパティは String エレメントが利用可能なプリンター名であるベクターです。printer プロパティをこれらの String 値のいずれかに設定して、対象のプリンターをアクティブにします。アクティブな印刷ジョブの printer プロパティは変更できません。start() または start2() が正常に呼び出された後で、ジョブが送信または強制終了される前にこのプロパティを変更しようとすると、その操作は失敗します。このプロパティの設定例を次に示します。 import flash.printing.PrintJob; var myPrintJob:PrintJob = new PrintJob(); myPrintJob.printer = "HP_LaserJet_1"; myPrintJob.start(); copies プロパティは、オペレーティングシステムの印刷ダイアログの部数の値を取得します。firstPage と lastPage のプロパティによって、ページ範囲を取得します。orientation プロパティは、用紙の向きの設定を取得します。これらのプロパティを設定すると、印刷ダイアログの値を上書きできます。これらのプロパティの設定例を次に示します。 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; PrintJob に関連付けられた次の読み取り専用の設定は、現在のプリンター設定に関する有用な情報を提供します。
プリントの例:ページ設定とプリントオプションを参照してください。 |
![]() |