public abstract class PrinterJob extends Object
PrinterJob
クラスは、印刷を制御する主要なクラスです。アプリケーションはこのクラスのメソッドを呼び出して、ジョブを設定し、必要に応じて印刷のダイアログを呼び出し、そのあとジョブのページを印刷します。コンストラクタと説明 |
---|
PrinterJob()
PrinterJob オブジェクトは、getPrinterJob staticメソッドを使用して作成するようにしてください。 |
修飾子と型 | メソッドと説明 |
---|---|
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)
共通プラットフォームのすべてのサービスに対する印刷ダイアログを表示する簡易メソッドです。
Pageable インタフェースを使用して2Dグラフィックスの印刷が可能です。 |
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 の複製を返します。 |
public PrinterJob()
PrinterJob
オブジェクトは、getPrinterJob
staticメソッドを使用して作成するようにしてください。public static PrinterJob getPrinterJob()
PrinterJob
を作成して返します。システムでプリンタが使用できない場合でも、PrinterJobがこのメソッドから返されます。ただし、getPrintService()
はnull
を返し、このPrinterJob
でprint
を呼び出すと、例外が生成される場合があります。PrinterJob
を作成する前に適切なプリンタがあるかどうかを判別する必要があるアプリケーションは、lookupPrintServices
から返された配列が空でないことを確認する必要があります。PrinterJob
。SecurityException
- セキュリティ・マネージャが存在し、セキュリティ・マネージャのSecurityManager.checkPrintJobAccess()
メソッドにより、このスレッドでの出力ジョブ要求の作成が禁止されている場合public static PrintService[] lookupPrintServices()
PrinterJob
にインストールできます。このメソッドの呼出しは、Pageable DocFlavorを指定してPrintServiceLookup.lookupPrintServices()
を呼出すことと同等です。public static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)
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 (任意の形式を意味)。public PrintService getPrintService()
setPrintService(PrintService)
, getPrinterJob()
public void setPrintService(PrintService service) throws PrinterException
Pageable
およびPrintable
インタフェースをサポートできない場合はPrinterException
をスローします。service
- 2D印刷をサポートする印刷サービスPrinterException
- 指定されたサービスが2D印刷をサポートしない場合、またはこのPrinterJobクラスが2D印刷サービスの設定をサポートしない場合、またはこれ以外の場合で指定されたサービスが有効な印刷サービスではない場合。getPrintService()
public abstract void setPrintable(Printable painter)
painter
を呼び出します。このPrinterJob
によって印刷されるドキュメント内のページは、painter
で指定されたPrintable
オブジェクトによって描画されます。各ページのPageFormat
は、デフォルトのページ書式になります。painter
- ドキュメントの各ページを描画するPrintable
。public abstract void setPrintable(Printable painter, PageFormat format)
format
でページを描画するためにpainter
を呼び出します。このPrinterJob
によって印刷されるドキュメント内のページは、painter
で指定されたPrintable
オブジェクトによって描画されます。各ページのPageFormat
は、format
です。painter
- ドキュメントの各ページを描画するために呼び出すPrintable
format
- 印刷される各ページのサイズと印刷方向public abstract void setPageable(Pageable document) throws NullPointerException
document
に対して、ページ数や、Pageable
のインスタンス(document
)に保持されている各ページのPageFormat
およびPrintable
を問い合わせます。document
- 印刷されるページ。null
であってはならない。NullPointerException
- 渡されたPageable
がnull
だった。PageFormat
、Printable
public abstract boolean printDialog() throws HeadlessException
printDialog(PrintRequestAttributeSet)
を使用します。
PrintServiceの印刷ダイアログを使用できるPrinterJobの実装により、このPrinterJobに対するPrintServiceが更新されユーザーが選択するサービスが反映されます。
true
、そうでない場合はfalse
。HeadlessException
- GraphicsEnvironment.isHeadless()がtrueを返した場合。GraphicsEnvironment.isHeadless()
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の場合。GraphicsEnvironment.isHeadless()
public abstract PageFormat pageDialog(PageFormat page) throws HeadlessException
PageFormat
のインスタンスを変更するためのダイアログを表示します。引数page
は、ページ設定ダイアログのコントロールを初期化するために使用されます。ユーザーがダイアログを取り消すと、このメソッドは元のpage
オブジェクトを変更しないで返します。ユーザーがダイアログを了解すると、このメソッドは変更内容を示す新しいPageFormat
を返します。どちらの場合にも、元のpage
オブジェクトは変更されません。page
- 変更のためにユーザーに対して表示されるデフォルトのPageFormat
page
オブジェクト。ダイアログが受け入れられた場合は、ユーザーが指定した形式を含む新しいPageFormat
オブジェクト。HeadlessException
- GraphicsEnvironment.isHeadless()がtrueを返した場合。GraphicsEnvironment.isHeadless()
public PageFormat pageDialog(PrintRequestAttributeSet attributes) throws HeadlessException
属性パラメータon inputは、クライアントが要求するユーザー・ダイアログでの初期選択を反映します。属性が指定されない場合は、印刷サービスのデフォルトの属性を使用して表示されます。属性パラメータon returnは、ユーザーの選択を反映します。選択は、現在選択されている印刷サービスがサポートする値と一致するように更新されます。
戻り値はPrintRequestAttributeSetでの選択と同等のPageFormatです。ユーザーがダイアログを取り消した場合、属性はユーザーが行った変更を反映しません。戻り値はnullです。
attributes
- on inputは属性が提供するアプリケーションである。on outputはユーザーの選択によって内容が更新される。このパラメータはnullにはならない。null
。HeadlessException
- GraphicsEnvironment.isHeadless()がtrueを返した場合。NullPointerException
- attributes
パラメータがnullの場合。GraphicsEnvironment.isHeadless()
public abstract PageFormat defaultPage(PageFormat page)
PageFormat
引数を複製し、その複製を変更してデフォルトのページ・サイズと印刷方向を記述します。page
- 複製および変更されるPageFormat
PageFormat
を記述するために変更されたpage
の複製。public PageFormat defaultPage()
PageFormat
のインスタンスを生成し、デフォルトのサイズと印刷方向に設定します。PageFormat
。public PageFormat getPageFormat(PrintRequestAttributeSet attributes)
PrintService
でサポートされる値と一致する値(つまり、getPrintService()
で返される値)、およびattributes
に格納されたメディア、印刷可能領域、印刷方向を使用して、PageFormat
を計算します。
このメソッドを呼び出しても、ジョブは更新されません。このメソッドは、クライアントがprintDialog(PrintRequestAttributeSet attributes)
から取得した属性のセットを持ち、Pageableオブジェクトを印刷するためにPageFormatが必要な場合に便利です。
attributes
- 印刷属性のセット。たとえばprintDialogを呼び出すことで取得される。attributes
がnullの場合、デフォルトのPageFormatが返される。PageFormat
。public abstract PageFormat validatePage(PageFormat page)
PrinterJob
の現在のプリンタと互換性があるように調整された設定を持つ、page
の複製を返します。たとえば、返されたPageFormat
は、現在のプリンタが使用している用紙の物理的領域内に収まるように調整されたイメージング可能領域を持つことができます。page
- 複製され、その設定が現在のプリンタと互換性を持つように変更されたPageFormat
page
から複製され、このPrinterJob
に合わせて設定が変更されたPageFormat
。public abstract void print() throws PrinterException
PrinterException
- 印刷システムのエラーが原因でジョブが停止した。Book
、Pageable
、Printable
public void print(PrintRequestAttributeSet attributes) throws PrinterException
一部の属性は、同じメソッドの呼出しによって直接PrinterJobに設定される場合があります。このメソッドの呼出しの例には、copies: 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
- 印刷システムのエラーが原因でジョブが停止した。Book
、Pageable
、Printable
public abstract void setCopies(int copies)
copies
- 印刷する部数getCopies()
public abstract int getCopies()
setCopies(int)
public abstract String getUserName()
public abstract void setJobName(String jobName)
null
を指定することはできません。jobName
- 印刷するドキュメントの名前getJobName()
public abstract String getJobName()
setJobName(java.lang.String)
public abstract void cancel()
print
が呼び出されていても、まだ復帰していない状態のときは、このメソッドはジョブを次の機会に取り消すように通知します。実行中の印刷ジョブがない場合には、何も行いません。public abstract boolean isCancelled()
true
、そうでない場合はfalse
を返します。true
、そうでない場合はfalse
。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2016, Oracle and/or its affiliates. All rights reserved.Use is subject to license termsDocumentation Redistribution Policyも参照してください。