JavaTM Platform
Standard Ed. 6

パッケージ javax.print

JavaTM Print Service API の主要なクラスおよびインタフェースを提供します。

参照先:
          説明

インタフェースの概要
AttributeException AttributeException インタフェースは mixin インタフェースで、PrintException のサブクラスはこのインタフェースを実装して、特定の Print Service インスタンスがサポートしない 1 つまたは複数の印刷属性に関係するエラー条件を報告できます。
CancelablePrintJob このインタフェースは、印刷ジョブを取り消す際に印刷アプリケーションにより使用されます。
Doc Doc インタフェースは、Print Job 用印刷データの一部を提供するオブジェクトに対するインタフェースを指定します。
DocPrintJob このインタフェースは、ジョブ属性セットを保持する指定されたドキュメントを印刷可能な印刷ジョブを表します。
FlavorException FlavorException インタフェースは mixin インタフェースで、PrintException のサブクラスは、このインタフェースを実装して doc フレーバ (DocFlavor クラス) に関するエラー条件を報告できます。
MultiDoc MultiDoc インタフェースは、Print Job 用印刷データの複数部分を提供するオブジェクトに対するインタフェースを指定します。
MultiDocPrintJob MultiDocPrintService から取得されます。
MultiDocPrintService MultiPrintService インタフェースは、MultiDocPrintJob のファクトリです。
PrintService PrintService インタフェースは、DocPrintJob のファクトリです。
URIException URIException インタフェースは、mixin インタフェースで、PrintException のサブクラスは、このインタフェースを実装して URI アドレスに関するエラー条件を報告できます。
 

クラスの概要
DocFlavor DocFlavor クラスは、印刷データの DocPrintJob への提供形式を指定するオブジェクトをカプセル化します。
DocFlavor.BYTE_ARRAY DocFlavor.BYTE_ARRAY クラスは、事前定義された static 定数 DocFlavor オブジェクトを提供します。
DocFlavor.CHAR_ARRAY DocFlavor.CHAR_ARRAY クラスは、事前定義された static 定数 DocFlavor オブジェクトを提供します。
DocFlavor.INPUT_STREAM DocFlavor.INPUT_STREAM クラスは、事前定義された static 定数 DocFlavor オブジェクトを提供します。
DocFlavor.READER DocFlavor.READER クラスは、事前定義された static 定数 DocFlavor オブジェクトを提供します。
DocFlavor.SERVICE_FORMATTED DocFlavor.SERVICE_FORMATTED クラスは、定義済みの static 定数 DocFlavor オブジェクト (例、サービス形式の印刷データ用 doc フレーバ) を提供します。
DocFlavor.STRING DocFlavor.STRING クラスは、定義済みの static 定数 DocFlavor オブジェクトを提供します。
DocFlavor.URL DocFlavor.URL クラスは、事前定義された static 定数 DocFlavor オブジェクトを提供します。
PrintServiceLookup このクラスの実装は、特定のタイプの印刷サービス (通常はプリンタと同義) 用の検索サービスを提供します。
ServiceUI このクラスは、Java Print Service API を介してルックアップされた印刷サービス閲覧用のグラフィカルなユーザーダイアログを提供する、利便性の高い UI メソッドのコレクションです。
ServiceUIFactory サービスは、オプションで UI を提供することができます。
SimpleDoc このクラスは、一般的な多くの印刷要求で使用可能な Doc インタフェースの実装です。
StreamPrintService このクラスは、PrintService を拡張し、クライアントによって指定された出力ストリームに別の形式でデータを印刷する印刷サービスを表します。
StreamPrintServiceFactory StreamPrintServiceFactory は、StreamPrintService インスタンスのファクトリです。
 

例外の概要
PrintException PrintException クラスは、Print Service インスタンスの使用時に発生する印刷関連のエラー条件をカプセル化します。
 

パッケージ javax.print の説明

JavaTM Print Service API の主要なクラスおよびインタフェースを提供します。Java Print Service API を使用すると、クライアントおよびサーバーアプリケーションが以下のことを実行できるようになります。

印刷サービスの検出

アプリケーションは、abstract クラス PrintServiceLookup の static メソッドを呼び出し、アプリケーションの印刷要求を満たす印刷サービスを探します。たとえば、両面印刷のドキュメントを印刷する場合、アプリケーションは最初に、両面印刷対応のプリンタを検索する必要があります。

JDK には、標準プラットフォームプリンタを検出するための PrintServiceLookup 実装が含まれています。IPP プリンタや JINI プリンタなど、ほかの型のプリンタを検出する場合、印刷サービスプロバイダは、PrintServiceLookup の実装を作成し、これらの PrintServiceLookup を、「JAR ファイルの仕様」に従って動的にインストールできます。

属性の定義

javax.print.attribute および javax.print.attribute.standard パッケージは、印刷サービス機能の記述、印刷ジョブ要件の指定、印刷ジョブの進行状況の追跡を行う印刷属性を定義します。

javax.print.attribute パッケージは、属性型、および属性型をセットにまとめる方法を記述します。javax.print.attribute.standard パッケージは、API のサポートするすべての標準属性を列挙します。これらの属性の大半は、IETF 仕様「RFC 2911 Internet Printing Protocol, 1.1: Model and Semantics」 (2000 年 9 月) で指定された属性の実装です。javax.print.attribute.standard で指定する属性には、解像度、コピー部数、メディアサイズ、ジョブの優先順位、ページ範囲などの一般的な機能が含まれます。

ドキュメント型の仕様

DocFlavor クラスは、JPEG や PostScript などの印刷データ形式を表します。DocFlavor オブジェクトは、形式を記述する MIME タイプと、ドキュメントをプリンタまたは出力ストリームに送信する方法を示すドキュメント表現クラス名で構成されます。アプリケーションは、DocFlavor および属性セットを使用して、DocFlavor により指定されたドキュメント型を印刷可能で、属性セットに指定された機能を保持するプリンタを検出します。

API の使用

Java Print Service API を使用する通常のアプリケーションは、次の手順を実行して、印刷要求を処理します。
  1. DocFlavor を選択する
  2. 属性セットを作成する
  3. DocFlavor および属性セットにより指定された印刷要求の処理が可能な印刷サービスを検出する
  4. DocFlavor および実印刷データをカプセル化した Doc オブジェクトを作成する。これは、Postscript ファイル、JPEG イメージ、URL、プレーンテキストなど、さまざまな形式を取ることがある
  5. DocPrintJob により表される印刷ジョブを印刷サービスから取得する
  6. 印刷ジョブの印刷メソッドを呼び出す
次のサンプルコードは、Java Print Service API の一般的な使用方法を示します。A4 サイズの PostScript ドキュメント (両面) を 5 部印刷可能なプリンタを検出し、返された印刷サービスの 1 つから印刷ジョブを作成し、印刷を呼び出します。

FileInputStream psStream; try { psStream = new FileInputStream("file.ps"); } catch (FileNotFoundException ffne) { } if (psStream == null) { return; } DocFlavor psInFormat = DocFlavor.INPUT_STREAM.POSTSCRIPT; Doc myDoc = new SimpleDoc(psStream, psInFormat, null); PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet(); aset.add(new Copies(5)); aset.add(MediaSize.A4); aset.add(Sides.DUPLEX); PrintService[] services = PrintServiceLookup.lookupPrintServices(psInFormat, aset); if (services.length > 0) { DocPrintJob job = services[0].createPrintJob(); try { job.print(myDoc, aset); } catch (PrintException pe) {} }

注:javax.print API では、メソッドへの null 参照パラメータ指定は、ドキュメントに意味が明記されている場合を除いては不正であることに注意してください。これに反する使用は無効なコーディングであり、すぐにまたはあとで実行時の例外が生ずる結果になります。IllegalArgumentException および NullPointerException は、このような場合の典型的で許容できる実行時の例外の事例です。

導入されたバージョン:
1.4

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 も参照してください。