パッケージjavax.print.attribute.standard
javax.print.attribute.standardには、特定の印刷属性のクラスが含まれています。 親パッケージのjavax.print.attributeは、Java Print Serviceの属性の型とそれらが属性セットに収集される方法を記述するクラスとインタフェースを提供します。
属性は印刷サービスが提供可能な印刷機能を表します。 印刷サービスがすべての属性をサポートする保証はありません。 サポートされる属性の値についても、そのすべてをサポートする保証はありません。
API側では特定の属性のサポートを必須としますが、それ以外はオプションであり、サポートするかどうかはサービス側で選択できます。 受け入れ可能な値は属性によって異なり、特定の属性に対して特定の値が必須になります。 それ以外の属性値は属性自体と同様にオプションであり、サポートするかどうかはサービス側で選択できます。 これらのサポート条件は各属性クラスのドキュメントに記述されます。
パッケージjavax.print.attribute.standardには、標準の印刷属性と、印刷ドメインで広く使用されている標準の印刷属性値が含まれています。 印刷サービスのベンダーは、標準の属性に加えて、ベンダー固有の印刷属性を提供できます。 またたとえば、サブクラスで標準印刷属性にベンダー固有の値を追加することで、拡張できます。 クライアント側でこのような追加属性や拡張属性を使用可能にするためには、ベンダーは新しい属性クラスを公開する必要があります。
多くの標準属性クラスは、javax.print.attributeパッケージの抽象構文クラスの1つを拡張します。 これらの抽象構文クラスは、それぞれ異なる型を表します。 たとえばEnumSyntaxクラスは、型保証された列挙を表します。 抽象構文クラスは属性値のラッパーを提供します。
属性クラスがEnumSyntaxを拡張し、属性の値がIPP互換の場合、属性のtoStringメソッドは属性値のIPP文字列表現を返します。たとえばJobState属性には「processing-stopped」のような値が返されます。 ただしEnumSyntaxクラスは拡張可能であるため、ベンダー独自の属性値を定義できます。 属性がEnumSyntaxクラスを使用し、これらのベンダー定義の値の1つに設定される場合、toStringメソッドは値のIPP文字列表現を返しません。
印刷クライアント・アプリケーションは、通常javax.print.attribute.standardパッケージのすべての印刷属性クラスを使用する必要はなく、アプリケーション関連のものだけを使用します。
パッケージjavax.print.attribute.standardの属性クラスは、Internet RFCドキュメント(2000年9月の「RFC 2911インターネット印刷プロトコル/1.1: モデルとセマンティクス」)で定義されているInternet Printing Protocolの(IPP)属性に基づいています。 詳細は、RFC 2911を参照してください。 各属性クラスの説明は主に上記のドキュメントからの引用です。 これらのドキュメントの作者にこの場を借りて感謝いたします。
属性の構成
印刷属性には、ドキュメント属性、印刷要求属性、印刷ジョブ属性、印刷サービス属性、サポート値属性の5種類があります。ドキュメント属性
ドキュメント属性は個々のドキュメント、およびそのドキュメントに適用される印刷ジョブ設定を指定します。 ドキュメント属性クラスはDocAttributeインタフェースを実装します。 ドキュメント属性はDocAttributeSetで使用できます。印刷要求属性
印刷要求属性は、印刷ジョブ全体、およびそのジョブのすべてのドキュメントに適用される設定を指定します。 印刷要求属性クラスはPrintRequestAttributeインタフェースを実装します。 印刷リクエスト属性は、PrintRequestAttributeSetに表示されます。ドキュメント属性ではあっても印刷要求属性ではない属性があり、このような属性はドキュメント・レベルだけで指定できます。 逆に印刷要求属性ではあってもドキュメント属性ではない属性もあり、このような属性は印刷要求レベルだけで指定できます。 どちらでも指定できる属性もあります。
属性をドキュメント・レベルで指定すると、属性はそのドキュメントだけに適用されます。 印刷要求レベルで指定すると、ジョブ全体、そのジョブに含まれるすべてのドキュメントに適用されます。 両方に指定されている場合、ドキュメント・レベルの属性が印刷要求レベルで同じカテゴリに指定された属性をオーバーライドします。
印刷ジョブ属性
印刷ジョブ属性は印刷ジョブのステータスを通知します。 印刷ジョブ属性クラスは PrintJobAttributeインタフェースを実装します。 印刷ジョブ属性は、PrintJobAttributeSetに表示されます。印刷要求属性および印刷ジョブ属性のどちらとしても指定可能な属性があります。このような属性を印刷要求に追加すると、それ以降の印刷ジョブの特性を指定できます。これらの属性は印刷ジョブの属性セットにも指定されます。 印刷ジョブ属性ではあっても印刷要求属性ではない属性は、印刷サービス自体によって印刷ジョブの属性セットに追加されます。
印刷サービス属性
印刷サービス属性は印刷サービスのステータスを通知します。 印刷サービス属性クラスはインタフェースPrintServiceAttributeを実装します。 印刷サービス属性はPrintServiceAttributeSetで使用できます。サポート値属性
サポート値属性は、印刷サービスがサポートしている、別の属性に対する正当な値を示します。 サポート値属性クラスはSupportedValuesAttributeインタフェースを実装します。 ただし、supported-values属性は属性セットには表示されないため、制限されたAttributeSetサブインタフェースはありません。属性表
次の表はすべての印刷属性のリストです。 Attributeインタフェースに加えて、各属性クラスが実装するタグ機能インタフェースも記載され、APIでの各属性の使用方法を示しています。 印刷サービスが、各ドキュメント属性と印刷要求属性の属性カテゴリに対してサポートしている値を示す、サポート値属性クラスがある場合は、SupportedValuesAttribute列に表示されます。
ご注意ください: javax.print APIでは、メソッドに明示的に記述されていない限り、メソッドへのnull参照パラメータが正しくありません。 これに反する使用は無効なコーディングであり、すぐにまたはあとで実行時の例外が生ずる結果になります。 IllegalArgumentExceptionおよびNullPointerExceptionは、そのような場合の一般的で許容される実行時例外の例です。
- 導入されたバージョン:
- 1.4
-
クラスクラス説明クラス
Chromaticityは、モノクロまたはカラー印刷を指定する列挙型の印刷属性クラスです。ColorSupportedクラスは、ハイライト・カラーおよびフル・プロセス・カラーを含め、デバイスが何らかのタイプのカラー印刷を実行できるかどうかを識別する列挙型の印刷属性クラスです。クラスCompressionは、印刷データの圧縮方法を指定する列挙型の印刷属性クラスです。クラスCopiesは、印刷するコピー数を指定する整数値の印刷属性クラスです。クラスCopiesSupportedは、Copies属性でサポートされている値を与える整数のセットである印刷属性クラスです。クラスDateTimeAtCompletedは、印刷ジョブが完了した日時を示す日時属性の印刷属性クラスです。(または取消または中止された)。クラスDateTimeAtCreationは、印刷ジョブが作成された日時を示す日時属性の印刷属性クラスです。クラスDateTimeAtProcessingは、印刷ジョブが最初に処理を開始した日時を示す日時属性の印刷属性クラスです。クラスDestinationは、スプールされたプリンタのフォーマットされたデータの代替宛先を示すために使用される印刷属性クラス、URIです。印刷またはページ設定のダイアログのリクエストをサポートするために使用される属性クラスは、すべてのウィンドウまたは特定のウィンドウの上に表示されます。クラスDialogTypeSelectionは、印刷オプションを指定するために使用されるユーザー・ダイアログ・タイプを示す列挙型の印刷属性クラスです。クラスDocumentNameは、ドキュメントの名前を指定するテキスト属性である印刷属性クラスです。クラスFidelityは、クライアントが提供した印刷リクエスト属性に対する完全な忠実度が必要かどうかを示す列挙型の印刷属性クラスです。クラスFinishingsは、プリンタがジョブ内の各印刷ドキュメントの各コピーにある種のバインディングの終了操作を適用するかどうかを識別する列挙型の印刷属性クラスです。クラスJobHoldUntilは、ジョブが印刷の候補になる必要がある正確な日時を指定する日時属性の印刷属性クラスです。クラスJobImpressionsは、発行されるthedocument(s)のインプレッション数の合計サイズを指定する整数値印刷属性クラスです。クラスJobImpressionsCompletedは、これまでにジョブに対して完了した印象の数を指定する整数値の印刷属性クラスです。クラスJobImpressionsSupportedは、JobImpressions属性でサポートされている値を与える整数のセットである印刷属性クラスです。クラスJobKOctetsは、Kオクテット(ジョブで処理するようにリクエストされた1024オクテット単位)のthedocument(s)の合計サイズを指定する整数値の印刷属性クラスです。クラスJobKOctetsProcessedは、これまでにKオクテットで処理された印刷データ・オクテットの総数、すなわち1024オクテットの単位を指定する整数値の印刷属性クラスです。クラスJobKOctetsSupportedは、JobKOctets属性でサポートされている値を与える整数のセットである印刷属性クラスです。クラスJobMediaSheetsは、このジョブに対して生成されるメディア・シートの総数を指定する整数値の印刷属性クラスです。クラスJobMediaSheetsCompletedは整数値の印刷属性クラスで、これまでのジョブ全体のマーキングとスタッキングを完了したメディア・シートの数を指定します。クラスJobMediaSheetsSupportedは、JobMediaSheets属性でサポートされている値を与える整数のセットである印刷属性クラスです。クラスJobMessageFromOperatorは、オペレータ、システム管理者、または"intelligent"プロセスからのメッセージを提供して、ジョブに対して行われた変更またはその他の管理アクションの理由をエンドユーザーに示す、印刷属性クラス(テキスト属性)です。クラスJobNameは、印刷ジョブの名前を指定するテキスト属性の印刷属性クラスです。クラスJobOriginatingUserNameは、印刷ジョブを送信したエンド・ユーザーの名前を含むテキスト属性の印刷属性クラスです。クラスJobPriorityは、印刷ジョブの優先度を指定する整数値の印刷属性クラスです。クラスJobPrioritySupportedは、Print ServiceインスタンスがJobPriority属性をサポートしているかどうか、およびサポートされている異なるジョブ優先度レベルの数を指定する整数値の印刷属性クラスです。JobSheetsクラスは、ジョブの開始と終了のシートがあればそれをジョブと共に印刷する必要があるかどうかを決定する列挙型の印刷属性クラスです。JobStateは、印刷ジョブの現在の状態を識別する列挙型の印刷属性クラスです。クラスJobStateReasonは、印刷属性クラス(列挙)で、ジョブの現在の状態に関する追加情報、つまりジョブのJobState属性の値を補強する情報を提供します。クラスJobStateReasonsは、出力属性クラスであり、一連の列挙値であり、ジョブの現在の状態に関する追加情報、つまりジョブのJobState属性の値を補強する情報を提供します。クラスMediaは、印刷する媒体を指定する印刷属性クラスです。クラスMediaNameは、印刷ジョブのメディアを名前として指定する印刷属性クラス(列挙型)のMediaのサブクラスです。クラスMediaPrintableAreaは、メディアの印刷可能領域と印刷不能領域を区別するために使用される印刷属性です。クラスMediaSizeは、下端に沿って実行されるXディメンションと左端に沿って実行されるYディメンションを持つ、縦向きの媒体のディメンションを示す2ディメンションのサイズの値を持つ印刷属性クラスです。クラスMediaSize.Engineeringには、エンジニアリング・メディアのMediaSize値が含まれます。クラスMediaSize.ISOには、ISOメディアのMediaSize値が含まれています。クラスMediaSize.JISには、JIS (日本語)メディアのMediaSize値が含まれています。クラスMediaSize.NAには、北アメリカのメディアのMediaSize値が含まれています。クラスMediaSize.Otherには、その他のメディアのMediaSize値が含まれています。クラスMediaSizeNameは、Mediaのサブクラスです。クラスMediaTrayは、Mediaのサブクラスです。MultipleDocumentHandlingクラスは、終了操作、および1つ以上の印刷ストリーム・ページのインプレッションとメディア・シートへの配置を制御する列挙型の印刷属性クラスです。クラスNumberOfDocumentsは、ドキュメントの印刷データがプリンタに到達したかどうかに関係なく、プリンタがこのジョブに対して受け入れた個々のドキュメントの数を示す整数値印刷属性です。クラスNumberOfInterveningJobsは、(すなわち、現在の予定されたオーダー)を完了するのに必要な時間の相対的な時間順にこのジョブより先行するジョブの数を示す整数値の印刷属性です。クラスNumberUpは、選択されたメディアのインスタンスの片面に適用される印刷ストリーム・ページの数を指定する整数値の印刷属性クラスです。クラスNumberUpSupportedは、NumberUp属性でサポートされている値を与える整数のセットである印刷属性クラスです。クラスOrientationRequestedは、印刷された印刷ストリーム・ページの望ましい方向を示す列挙型の印刷属性クラスです。クライアントが提供する印刷ストリーム・ページの方向は記述されていません。クラスOutputDeviceAssignedは、サービスがこのジョブを割り当てた出力デバイスを識別するテキスト属性の印刷属性クラスです。クラスPageRangesは、印刷する各文書のコピーごとにプリンタ・オブジェクトが使用する印刷ストリーム・ページのtherange(s)を識別する、一連の整数である印刷属性クラスです。クラスPagesPerMinuteは、このプリンタ(e.g., simplex, black-and-white)によって生成される可能性のある最も近い整数に対する1分あたりの名目ページ数を示す整数値の印刷属性です。クラスPagesPerMinuteColorは、色を印刷するときにこのプリンタによって生成される可能性のある、最も近い整数に対する1分あたりの名目ページ数を示す整数値の印刷属性です。(例:シン・プレックス、カラー)。クラスPDLOverrideSupportedは、印刷属性クラス(列挙)で、印刷データの外部の属性として指定された処理命令を使用して、文書の印刷データに埋め込まれた処理命令を上書きするプリンタの機能を表します。PresentationDirectionクラスは、NumberUp属性と組み合わせて使用される列挙型の印刷属性クラスで、選択されたメディアのインスタンスの片面に適用される複数の印刷ストリーム・ページのレイアウトを示します。クラスPrinterInfoは、プリンタに関する記述情報を提供するテキスト属性の印刷属性クラスです。クラスPrinterIsAcceptingJobsは、プリンタが現在ジョブを受け入れることができるかどうかを示す列挙型の印刷属性クラスです。クラスPrinterLocationは、デバイスのロケーションを識別するテキスト属性の印刷属性クラスです。クラスPrinterMakeAndModelは、プリンタの製造元とモデルである印刷属性クラス、テキスト属性です。クラスPrinterMessageFromOperatorは、オペレータ、システム管理者、または"intelligent"プロセスから、プリンタが使用できない理由や使用状況などの情報をエンド・ユーザーに示すメッセージを提供する印刷属性クラス、テキスト属性です利用可能であると予想されます。クラスPrinterMoreInfoは、この特定のプリンタに関する詳細情報を取得するために使用される印刷属性クラス、URIです。クラスPrinterMoreInfoManufacturerは、このタイプのデバイスに関する詳細情報を取得するために使用される印刷属性クラス、URIです。クラスPrinterNameは、プリンタの名前を指定するテキスト属性である印刷属性クラスです。クラスPrinterResolutionは、プリンタでサポートされている、または印刷ジョブで使用されている正確な解像度を指定する印刷属性クラスです。クラスPrinterStateは、プリンタの現在の状態を識別する列挙型の印刷属性クラスです。クラスPrinterStateReasonは、プリンタの現在の状態(プリンタのPrinterState属性の値を増強する情報)に関する追加情報を提供する印刷属性クラス(列挙)です。クラスPrinterStateReasonsは、プリンタの現在の状態(プリンタのPrinterState属性の値を増強する情報)に関する追加情報を提供する、一連の列挙値である印刷属性クラスです。クラスPrinterURIは、プリンタのグローバルに一意な名前を指定する印刷属性クラス、URIです。クラスPrintQualityは、プリンタがそのジョブに使用する印刷品質を指定する列挙型の印刷属性クラスです。クラスQueuedJobCountは、JobStateがPENDING,PENDING_HELD,PROCESSINGまたはPROCESSING_STOPPEDのいずれかであるプリンタ内のジョブの数を示す整数値印刷属性です。クラスReferenceUriSchemesSupportedは、プリンタがURIのロケーションに格納されている印刷データを取得するために使用できる"http:"や"ftp:"などの"URIスキーム、"を示す列挙型の印刷属性クラスです。クラスRequestingUserNameは、印刷ジョブを送信したエンド・ユーザーの名前を指定するテキスト属性の印刷属性クラスです。クラスSeverityは、PrinterStateReason属性の重大度を示す列挙型の印刷属性クラスです。クラスSheetCollateは、Copies属性でドキュメントの複数のコピーが指定されている場合、ジョブ内の各印刷ドキュメントの各コピーのメディア・シートを順番に並べるかどうかを指定する列挙型の印刷属性クラスです。Sidesクラスは、選択されたメディア(インプレッション)のインスタンスの側面に印刷ストリーム・ページをどのように適用するかを指定する列挙型の印刷属性クラスです。