JavaTM Platform
Standard Ed. 6

java.awt.print
クラス PrinterJob

java.lang.Object
  上位を拡張 java.awt.print.PrinterJob

public abstract class PrinterJob
extends Object

PrinterJob クラスは、印刷を制御する主要なクラスです。アプリケーションはこのクラスのメソッドを呼び出して、ジョブを設定し、必要に応じて印刷のダイアログを呼び出し、そのあとジョブのページを印刷します。


コンストラクタの概要
PrinterJob()
          PrinterJob オブジェクトの作成には、static メソッドの getPrinterJob を使用する必要があります。
 
メソッドの概要
abstract  void cancel()
          実行中の印刷ジョブを取り消します。
 PageFormat defaultPage()
          新しい PageFormat のインスタンスを生成し、デフォルトのサイズと印刷方向に設定します。
abstract  PageFormat defaultPage(PageFormat page)
          PageFormat 引数を複製し、その複製を変更してデフォルトのページサイズと印刷方向を記述します。
abstract  int getCopies()
          印刷する部数を返します。
abstract  String getJobName()
          印刷するドキュメントの名前を返します。
 PageFormat getPageFormat(PrintRequestAttributeSet attributes)
          このジョブの現在の PrintService でサポートされる値と一致する値 (つまり、getPrintService() で返される値)、および attributes に格納されたメディア、印刷可能領域、印刷方向を使用して、PageFormat を計算します。
static PrinterJob getPrinterJob()
          初期状態でデフォルトプリンタに関連付けられた PrinterJob を作成して返します。
 PrintService getPrintService()
          この印刷ジョブのサービス (プリンタ) を返します。
abstract  String getUserName()
          印刷を行うユーザーの名前を返します。
abstract  boolean isCancelled()
          印刷ジョブが実行中であり、次の機会に取り消される予定の場合は true、そうでない場合は false を返します。
static PrintService[] lookupPrintServices()
          2D 印刷サービスを検索する簡易メソッドです。
static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)
          2D グラフィックスの描画が可能なストリーム印刷サービスのファクトリを検出する簡易メソッドです。
abstract  PageFormat pageDialog(PageFormat page)
          PageFormat のインスタンスを変更するためのダイアログを表示します。
 PageFormat pageDialog(PrintRequestAttributeSet attributes)
          共通プラットフォームのページ設定ダイアログを表示する簡易メソッドです。
abstract  void print()
          ページのセットを印刷します。
 void print(PrintRequestAttributeSet attributes)
          属性セットの設定を使用してページのセットを印刷します。
abstract  boolean printDialog()
          ユーザーに対して、印刷ジョブのプロパティーを変更するためのダイアログを表示します。
 boolean printDialog(PrintRequestAttributeSet attributes)
          共通プラットフォームのすべてのサービスに対する印刷ダイアログを表示する簡易メソッドです。
abstract  void setCopies(int copies)
          印刷する部数を設定します。
abstract  void setJobName(String jobName)
          印刷するドキュメントの名前を設定します。
abstract  void setPageable(Pageable document)
          document に対して、ページ数や、Pageable のインスタンス (document) に保持されている各ページの PageFormat および Printable を問い合わせます。
abstract  void setPrintable(Printable painter)
          ページを描画するために painter を呼び出します。
abstract  void setPrintable(Printable painter, PageFormat format)
          指定された format でページを描画するために painter を呼び出します。
 void setPrintService(PrintService service)
          この PrinterJob を新しい PrintService に関連付けます。
abstract  PageFormat validatePage(PageFormat page)
          この PrinterJob の現在のプリンタと互換性があるように調整された設定を持つ、page の複製を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

PrinterJob

public PrinterJob()
PrinterJob オブジェクトの作成には、static メソッドの getPrinterJob を使用する必要があります。

メソッドの詳細

getPrinterJob

public static PrinterJob getPrinterJob()
初期状態でデフォルトプリンタに関連付けられた PrinterJob を作成して返します。システムでプリンタが使用できない場合でも、PrinterJob がこのメソッドから返されます。 ただし、getPrintService()null を返し、この PrinterJobprint を呼び出すと、例外が生成される場合があります。PrinterJob を作成する前に適切なプリンタがあるかどうかを判別する必要があるアプリケーションは、lookupPrintServices から返された配列が空でないことを確認する必要があります。

戻り値:
新しい PrinterJob
例外:
SecurityException - セキュリティーマネージャーが存在し、セキュリティーマネージャーの SecurityManager.checkPrintJobAccess() メソッドにより、このスレッドでの印刷ジョブ要求の作成が禁止されている場合

lookupPrintServices

public static PrintService[] lookupPrintServices()
2D 印刷サービスを検索する簡易メソッドです。このメソッドから返されたサービスは、印刷サービスをサポートする PrinterJob にインストールできます。このメソッドの呼び出しは、PrintServiceLookup.lookupPrintServices() の呼び出し、および Pageable DocFlavor の指定と同等です。

戻り値:
2D 印刷サービスの空の可能性がある配列
導入されたバージョン:
1.4

lookupStreamPrintServices

public static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)
2D グラフィックスの描画が可能なストリーム印刷サービスのファクトリを検出する簡易メソッドです。使用例は次のとおりです。  
 FileOutputStream outstream;
 StreamPrintService psPrinter;
 String psMimeType = "application/postscript";

 StreamPrintServiceFactory[] factories =
     PrinterJob.lookupStreamPrintServices(psMimeType);
 if (factories.length > 0) {
     try {
         outstream = new File("out.ps");
         psPrinter =  factories[0].getPrintService(fos);
         // psPrinter can now be set as the service on a PrinterJob 
     } catch (FileNotFoundException e) {
     }
 }            
 
このメソッドから返されたサービスは、印刷サービスをサポートする PrinterJob にインストールできます。このメソッドの呼び出しは StreamPrintServiceFactory.lookupStreamPrintServiceFactories() の呼び出しおよび Pageable DocFlavor の指定と同等です。

パラメータ:
mimeType - 要求された出力形式、または null (任意の形式を意味)
戻り値:
出荷時の 2D 印刷サービスストリームが空の可能性がある配列
導入されたバージョン:
1.4

getPrintService

public PrintService getPrintService()
この印刷ジョブのサービス (プリンタ) を返します。印刷サービスをサポートしないこのクラスの実装は null を返します。 プリンタを利用できない場合も null が返されます。

戻り値:
この印刷ジョブのサービス
導入されたバージョン:
1.4
関連項目:
setPrintService(PrintService), getPrinterJob()

setPrintService

public void setPrintService(PrintService service)
                     throws PrinterException
この PrinterJob を新しい PrintService に関連付けます。このメソッドは Print Service の指定をサポートするサブクラスにオーバーライドされます。 指定されたサービスが、2D 印刷のサポートに必要な Pageable および Printable インタフェースをサポートできない場合はPrinterException をスローします。

パラメータ:
service - 2D 印刷をサポートする印刷サービス
例外:
PrinterException - 指定されたサービスが 2D 印刷をサポートしない場合、またはこの PrinterJob クラスが 2D 印刷サービスの設定をサポートしない場合、またはこれ以外の場合で指定されたサービスが有効な印刷サービスではない場合
導入されたバージョン:
1.4
関連項目:
getPrintService()

setPrintable

public abstract void setPrintable(Printable painter)
ページを描画するために painter を呼び出します。この PrinterJob によって印刷されるドキュメント内のページは、painter で指定された Printable オブジェクトによって描画されます。各ページの PageFormat は、デフォルトのページ書式になります。

パラメータ:
painter - ドキュメントの各ページを描画する Printable

setPrintable

public abstract void setPrintable(Printable painter,
                                  PageFormat format)
指定された format でページを描画するために painter を呼び出します。この PrinterJob によって印刷されるドキュメント内のページは、painter で指定された Printable オブジェクトによって描画されます。各ページの PageFormat は、format で指定されたページ書式になります。

パラメータ:
painter - ドキュメントの各ページを描画するために呼び出す Printable
format - 印刷される各ページのサイズと印刷方向

setPageable

public abstract void setPageable(Pageable document)
                          throws NullPointerException
document に対して、ページ数や、Pageable のインスタンス (document) に保持されている各ページの PageFormat および Printable を問い合わせます。

パラメータ:
document - 印刷されるページ。null であってはならない。
例外:
NullPointerException - 渡された Pageablenull だった
関連項目:
PageFormat, Printable

printDialog

public abstract boolean printDialog()
                             throws HeadlessException
ユーザーに対して、印刷ジョブのプロパティーを変更するためのダイアログを表示します。このメソッドは、ネイティブな印刷サービスが選択されている場合はネイティブダイアログを表示し、ユーザーのプリンタの選択はこれらのネイティブな印刷サービスに制限されます。共通プラットフォームのネイティブ印刷サービスを含むすべてのサービスに対する印刷ダイアログを表示するには、代わりに printDialog(PrintRequestAttributeSet) を使用します。

PrintService の印刷ダイアログを使用できる PrinterJob の実装により、この PrinterJob に対する PrintService が更新されユーザーが選択するサービスが反映されます。

戻り値:
ユーザーがダイアログを取り消さない場合は true、そうでない場合は false
例外:
HeadlessException - GraphicsEnvironment.isHeadless() が true を返す場合
関連項目:
GraphicsEnvironment.isHeadless()

printDialog

public boolean printDialog(PrintRequestAttributeSet attributes)
                    throws HeadlessException
共通プラットフォームのすべてのサービスに対する印刷ダイアログを表示する簡易メソッドです。 Pageable インタフェースを使用して 2D グラフィックスの印刷が可能です。印刷ダイアログが初期状態で表示されたときに選択したプリンタは、この印刷ジョブに現在接続されている印刷サービスを反映します。ユーザーが印刷サービスを変更する場合、ユーザーが印刷ダイアログを取り消さないかぎり、PrinterJob が更新されて変更を反映します。ユーザーは出力先プリンタの選択とともに、さまざまな印刷要求属性の値を選択することもできます。

属性パラメータ on input は、アプリケーションが要求するユーザーダイアログでの初期選択を反映します。属性が指定されない場合は、印刷サービスのデフォルトの属性を使用して表示されます。属性パラメータ on return は、ユーザーの選択を反映します。選択は、現在選択されている印刷サービスがサポートする値と一致するように更新されます。

ユーザーがスクロールして新しい印刷サービスを選択すると、値のコピーは、ユーザーの任意の変更とともに直前のサービスの設定に基づいて行われます。この値のコピーは、クライアントが指定した元の設定に基づいて行われるわけではありません。

プリンタの選択の例外として、PrinterJob の状態がユーザーの変更を反映して更新されない場合があります。プリンタの選択によって印刷ジョブを更新できるようにするには、print(PrintRequestAttributeSet) メソッドの呼び出しで属性を指定する必要があります。Pageable インタフェースを使用している場合、ユーザーが選択したメディアを使用する予定のクライアントはユーザーの選択から派生する PageFormat を作成する必要があります。ユーザーが印刷ダイアログを取り消した場合は、属性はユーザーが行った変更を反映しません。

パラメータ:
attributes - on input は属性が提供するアプリケーションである。on output はユーザーの選択によって内容が更新される。このパラメータは null にはならない
戻り値:
ユーザーがダイアログを取り消さない場合は true、そうでない場合は false
例外:
HeadlessException - GraphicsEnvironment.isHeadless() が true を返す場合
NullPointerException - attributes パラメータが null の場合
導入されたバージョン:
1.4
関連項目:
GraphicsEnvironment.isHeadless()

pageDialog

public abstract PageFormat pageDialog(PageFormat page)
                               throws HeadlessException
PageFormat のインスタンスを変更するためのダイアログを表示します。引数 page は、ページ設定ダイアログのコントロールを初期化するために使用されます。ユーザーがダイアログを取り消すと、このメソッドは元の page オブジェクトを変更しないで返します。ユーザーがダイアログを了解すると、このメソッドは変更内容を示す新しい PageFormat を返します。どちらの場合にも、元の page オブジェクトは変更されません。

パラメータ:
page - 変更のためにユーザーに対して表示されるデフォルトの PageFormat
戻り値:
ダイアログがキャンセルされた場合は、元の page オブジェクト。ダイアログが受け入れられた場合は、ユーザーが指定した形式を含む新しい PageFormat オブジェクト
例外:
HeadlessException - GraphicsEnvironment.isHeadless() が true を返す場合
導入されたバージョン:
1.2
関連項目:
GraphicsEnvironment.isHeadless()

pageDialog

public PageFormat pageDialog(PrintRequestAttributeSet attributes)
                      throws HeadlessException
共通プラットフォームのページ設定ダイアログを表示する簡易メソッドです。有効な選択は、この PrinterJob に現在設定されている印刷ジョブを反映します。

属性パラメータ on input は、クライアントが要求するユーザーダイアログでの初期選択を反映します。属性が指定されない場合は、印刷サービスのデフォルトの属性を使用して表示されます。属性パラメータ on return は、ユーザーの選択を反映します。選択は、現在選択されている印刷サービスがサポートする値と一致するように更新されます。

戻り値は PrintRequestAttributeSet での選択と同等の PageFormat です。ユーザーがダイアログを取り消した場合、属性はユーザーが行った変更を反映しません。 戻り値は null です。

パラメータ:
attributes - on input は属性が提供するアプリケーションである。on output はユーザーの選択によって内容が更新される。このパラメータは null にはならない
戻り値:
ユーザーがダイアログを取り消さない場合はページ書式、そうでない場合は null
例外:
HeadlessException - GraphicsEnvironment.isHeadless() が true を返す場合
NullPointerException - attributes パラメータが null の場合
導入されたバージョン:
1.4
関連項目:
GraphicsEnvironment.isHeadless()

defaultPage

public abstract PageFormat defaultPage(PageFormat page)
PageFormat 引数を複製し、その複製を変更してデフォルトのページサイズと印刷方向を記述します。

パラメータ:
page - 複製および変更される PageFormat
戻り値:
デフォルトの PageFormat を記述するために変更された page の複製

defaultPage

public PageFormat defaultPage()
新しい PageFormat のインスタンスを生成し、デフォルトのサイズと印刷方向に設定します。

戻り値:
デフォルトのサイズと向きに設定された PageFormat

getPageFormat

public PageFormat getPageFormat(PrintRequestAttributeSet attributes)
このジョブの現在の PrintService でサポートされる値と一致する値 (つまり、getPrintService() で返される値)、および attributes に格納されたメディア、印刷可能領域、印刷方向を使用して、PageFormat を計算します。

このメソッドを呼び出しても、ジョブは更新されません。このメソッドは、クライアントが printDialog(PrintRequestAttributeSet attributes) から取得した属性のセットを持ち、Pageable オブジェクトを印刷するために PageFormat が必要な場合に便利です。

パラメータ:
attributes - 印刷属性のセット。たとえば printDialog を呼び出すことで取得される。attributes が null の場合、デフォルトの PageFormat が返される
戻り値:
現在のサービスの設定および指定された属性と一致した設定を持つ PageFormat
導入されたバージョン:
1.6

validatePage

public abstract PageFormat validatePage(PageFormat page)
この PrinterJob の現在のプリンタと互換性があるように調整された設定を持つ、page の複製を返します。たとえば、返された PageFormat は、現在のプリンタが使用している用紙の物理的領域内に収まるように調整されたイメージング可能領域を持つことができます。

パラメータ:
page - 複製され、その設定が現在のプリンタと互換性を持つように変更された PageFormat
戻り値:
page から複製され、この PrinterJob に合わせて設定が変更された PageFormat

print

public abstract void print()
                    throws PrinterException
ページのセットを印刷します。

例外:
PrinterException - 印刷システムのエラーが原因でジョブが停止した場合
関連項目:
Book, Pageable, Printable

print

public void print(PrintRequestAttributeSet attributes)
           throws PrinterException
属性セットの設定を使用してページのセットを印刷します。デフォルトの実装は属性セットを無視します。

一部の属性は、同じメソッドの呼び出しによって直接 PrinterJob に設定される場合があります。 このメソッドの呼び出しの例には、copies:setcopies(int)、job name:setJobName(String)、および PageFormat オブジェクトの指定にかかわらずメディアのサイズと印刷方向を指定する場合があります。

サポートされる属性値がこの属性セットに指定されている場合は、この print() オペレーションの場合だけ API 設定より優先されます。次に述べる動作は PageFormat に対して指定されます。クライアントが Printable インタフェースを使用している場合、このメソッドに対する attributes パラメータは、メディアサイズ、印刷方向、およびイメージング可能領域を指定する属性が検査され、これらは Printable オブジェクトの print() メソッドに渡される新しい PageFormat を構築するために使用されます。PrinterJob による最適な印刷に必要な Printable の動作については、Printable を参照してください。Pageable インタフェースを使用するクライアントの場合、PageFormat は常にこのインタフェースにより 1 ページごとに提供されます。

これらの動作により、アプリケーションは printDialog(PrintRequestAttributeSet attributes から返されるユーザー設定を、直接この print() メソッドに渡せるようになります。

パラメータ:
attributes - ジョブの属性のセット
例外:
PrinterException - 印刷システムのエラーが原因でジョブが停止した場合
導入されたバージョン:
1.4
関連項目:
Book, Pageable, Printable

setCopies

public abstract void setCopies(int copies)
印刷する部数を設定します。

パラメータ:
copies - 印刷する部数
関連項目:
getCopies()

getCopies

public abstract int getCopies()
印刷する部数を返します。

戻り値:
印刷する部数
関連項目:
setCopies(int)

getUserName

public abstract String getUserName()
印刷を行うユーザーの名前を返します。

戻り値:
印刷を行うユーザーの名前

setJobName

public abstract void setJobName(String jobName)
印刷するドキュメントの名前を設定します。ドキュメントの名前に null を指定することはできません。

パラメータ:
jobName - 印刷するドキュメントの名前
関連項目:
getJobName()

getJobName

public abstract String getJobName()
印刷するドキュメントの名前を返します。

戻り値:
印刷するドキュメントの名前
関連項目:
setJobName(java.lang.String)

cancel

public abstract void cancel()
実行中の印刷ジョブを取り消します。print が呼び出されていても、まだ復帰していない状態のときは、このメソッドはジョブを次の機会に取り消すように通知します。実行中の印刷ジョブがない場合には、何も行いません。


isCancelled

public abstract boolean isCancelled()
印刷ジョブが実行中であり、次の機会に取り消される予定の場合は true、そうでない場合は false を返します。

戻り値:
実行中のジョブが取り消される予定の場合は true、そうでない場合は false

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。