モジュール java.desktop
パッケージ java.awt.print

クラスPrinterJob

java.lang.Object
java.awt.print.PrinterJob

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

    コンストラクタ
    コンストラクタ
    説明
    PrinterJobオブジェクトは、getPrinterJob staticメソッドを使用して作成するようにしてください。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    abstract void
    実行中の印刷ジョブを取り消します。
    新しいPageFormatのインスタンスを生成し、デフォルトのサイズと印刷方向に設定します。
    abstract PageFormat
    PageFormat引数を複製し、その複製を変更してデフォルトのページ・サイズと印刷方向を記述します。
    abstract int
    印刷する部数を返します。
    abstract String
    印刷するドキュメントの名前を返します。
    このジョブの現在のPrintServiceでサポートされる値と一致する値(つまり、getPrintService()で返される値)、およびattributesに格納されたメディア、印刷可能領域、印刷方向を使用して、PageFormatを計算します。
    static PrinterJob
    初期状態でデフォルト・プリンタに関連付けられたPrinterJobを作成して返します。
    この印刷ジョブのサービス(プリンタ)を返します。
    abstract String
    印刷を行うユーザーの名前を返します。
    abstract boolean
    印刷ジョブが実行中であり、次の機会に取り消される予定の場合はtrue、そうでない場合はfalseを返します。
    static PrintService[]
    2D印刷サービスを検索する簡易メソッドです。
    2Dグラフィックスの描画が可能なストリーム印刷サービスのファクトリを検出する簡易メソッドです。
    abstract PageFormat
    PageFormatのインスタンスを変更するためのダイアログを表示します。
    共通プラットフォームのページ設定ダイアログを表示する簡易メソッドです。
    abstract void
    ページのセットを印刷します。
    void
    属性セットの設定を使用してページのセットを印刷します。
    abstract boolean
    ユーザーに対して、印刷ジョブのプロパティを変更するためのダイアログを表示します。
    boolean
    共通プラットフォームのすべてのサービスに対する印刷ダイアログを表示する簡易メソッドです。Pageableインタフェースを使用して2Dグラフィックスの印刷が可能です。
    abstract void
    setCopies(int copies)
    印刷する部数を設定します。
    abstract void
    setJobName(String jobName)
    印刷するドキュメントの名前を設定します。
    abstract void
    documentに対して、ページ数や、Pageableのインスタンス(document)に保持されている各ページのPageFormatおよびPrintableを問い合わせます。
    abstract void
    ページを描画するためにpainterを呼び出します。
    abstract void
    setPrintable(Printable painter, PageFormat format)
    指定されたformatでページを描画するためにpainterを呼び出します。
    void
    このPrinterJobを新しいPrintServiceに関連付けます。
    abstract PageFormat
    このPrinterJobの現在のプリンタと互換性があるように調整された設定を持つ、pageの複製を返します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • PrinterJob

      public PrinterJob()
      PrinterJobオブジェクトは、getPrinterJob staticメソッドを使用して作成するようにしてください。
  • メソッドの詳細

    • getPrinterJob

      public static PrinterJob getPrinterJob()
      初期状態でデフォルト・プリンタに関連付けられたPrinterJobを作成して返します。 システムでプリンタが使用できない場合でも、PrinterJobがこのメソッドから返されます。ただし、getPrintService()nullを返し、このPrinterJobprintを呼び出すと、例外が生成される場合があります。 PrinterJobを作成する前に適切なプリンタがあるかどうかを判別する必要があるアプリケーションは、lookupPrintServicesから返された配列が空でないことを確認する必要があります。
      戻り値:
      新しいPrinterJob
      例外:
      SecurityException - セキュリティ・マネージャが存在し、セキュリティ・マネージャのSecurityManager.checkPrintJobAccess()メソッドにより、このスレッドでの出力ジョブ要求の作成が禁止されている場合
    • lookupPrintServices

      public static PrintService[] lookupPrintServices()
      2D印刷サービスを検索する簡易メソッドです。 このメソッドから返されたサービスは、印刷サービスをサポートするPrinterJobにインストールできます。 このメソッドの呼出しは、Pageable DocFlavorを指定してPrintServiceLookup.lookupPrintServices()を呼出すことと同等です。
      戻り値:
      2D印刷サービスの空の可能性がある配列
      導入されたバージョン:
      1.4
    • lookupStreamPrintServices

      public static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)
      2Dグラフィックスの描画が可能なストリーム印刷サービスのファクトリを検出する簡易メソッドです。 使用例:
      
       FileOutputStream outstream;
       StreamPrintService psPrinter;
       String psMimeType = "application/postscript";
       PrinterJob pj = PrinterJob.getPrinterJob();
      
       StreamPrintServiceFactory[] factories =
           PrinterJob.lookupStreamPrintServices(psMimeType);
       if (factories.length > 0) {
           try {
               outstream = new File("out.ps");
               psPrinter =  factories[0].getPrintService(outstream);
               // psPrinter can now be set as the service on a PrinterJob
               pj.setPrintService(psPrinter)
           } catch (Exception e) {
               e.printStackTrace();
           }
       }
       
      このメソッドから返されたサービスは、印刷サービスをサポートするPrinterJobインスタンスにインストールできます。 このメソッドの呼出しは、Pageable DocFlavorを指定してStreamPrintServiceFactory.lookupStreamPrintServiceFactories()を呼出すことと同等です。
      パラメータ:
      mimeType - 要求された出力形式、またはnull (任意の形式を意味)。
      戻り値:
      出荷時の2D印刷サービス・ストリームが空の可能性がある配列
      導入されたバージョン:
      1.4
    • getPrintService

      public PrintService getPrintService()
      この印刷ジョブのサービス(プリンタ)を返します。 印刷サービスをサポートしないこのクラスの実装はnullを返します。プリンタを利用できない場合もnullが返されます。
      戻り値:
      この印刷ジョブのサービス。
      導入されたバージョン:
      1.4
      関連項目:
    • setPrintService

      public void setPrintService(PrintService service) throws PrinterException
      このPrinterJobを新しいPrintServiceに関連付けます。 このメソッドはPrint Serviceの指定をサポートするサブクラスにオーバーライドされます。 指定されたサービスが、2D印刷のサポートに必要なPageableおよびPrintableインタフェースをサポートできない場合はPrinterExceptionをスローします。
      パラメータ:
      service - 2D印刷をサポートする印刷サービス
      例外:
      PrinterException - 指定されたサービスが2D印刷をサポートしない場合、またはこのPrinterJobクラスが2D印刷サービスの設定をサポートしない場合、またはこれ以外の場合で指定されたサービスが有効な印刷サービスではない場合。
      導入されたバージョン:
      1.4
      関連項目:
    • 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だった。
      関連項目:
    • printDialog

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

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

      戻り値:
      ユーザーがダイアログを取り消さない場合はtrue、そうでない場合はfalse
      例外:
      HeadlessException - GraphicsEnvironment.isHeadless()がtrueを返した場合。
      関連項目:
    • 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
      関連項目:
    • pageDialog

      public abstract PageFormat pageDialog(PageFormat page) throws HeadlessException
      PageFormatのインスタンスを変更するためのダイアログを表示します。 引数pageは、ページ設定ダイアログのコントロールを初期化するために使用されます。 ユーザーがダイアログを取り消すと、このメソッドは元のpageオブジェクトを変更しないで返します。 ユーザーがダイアログを了解すると、このメソッドは変更内容を示す新しいPageFormatを返します。 どちらの場合にも、元のpageオブジェクトは変更されません。
      パラメータ:
      page - 変更のためにユーザーに対して表示されるデフォルトのPageFormat
      戻り値:
      ダイアログがキャンセルされた場合は、元のpageオブジェクト。ダイアログが受け入れられた場合は、ユーザーが指定した形式を含む新しいPageFormatオブジェクト。
      例外:
      HeadlessException - GraphicsEnvironment.isHeadless()がtrueを返した場合。
      導入されたバージョン:
      1.2
      関連項目:
    • 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
      関連項目:
    • 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 - 印刷システムのエラーが原因でジョブが停止した。
      関連項目:
    • print

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

      いくつかの属性は、同等のメソッド呼び出し、(例えば)、copiesによって直接PrinterJobに設定されることに注意してください: setCopies(int)、ジョブ名: 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
      関連項目:
    • setCopies

      public abstract void setCopies(int copies)
      印刷する部数を設定します。
      パラメータ:
      copies - 印刷する部数
      関連項目:
    • getCopies

      public abstract int getCopies()
      印刷する部数を返します。
      戻り値:
      印刷する部数。
      関連項目:
    • getUserName

      public abstract String getUserName()
      印刷を行うユーザーの名前を返します。
      戻り値:
      印刷を行うユーザーの名前
      例外:
      SecurityException - セキュリティ・マネージャが存在し、PropertyPermission - user.nameはポリシー・ファイルで指定されていません
    • setJobName

      public abstract void setJobName(String jobName)
      印刷するドキュメントの名前を設定します。 ドキュメントの名前にnullを指定することはできません。
      パラメータ:
      jobName - 印刷するドキュメントの名前
      関連項目:
    • getJobName

      public abstract String getJobName()
      印刷するドキュメントの名前を返します。
      戻り値:
      印刷するドキュメントの名前
      関連項目:
    • cancel

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

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