使用中のブラウザでは JavaScript がサポートされていません。このページの機能をすべて使用するには、JavaScript のサポートが必要です。
目次 | 前へ | 次へ 第 3 章
ドキュメントの種類の指定
ユーザーの観点から見ると、ドキュメントは、PDF ファイル、デジタルカメラからのイメージ、電子メール、ワードプロセッサのドキュメント、Web ページなどのさまざまな形式を取ることができます。クライアントでは、特定の書式のドキュメントを印刷する前に、その書式がプリンタで認識されることを確認する必要があります。プリンタによっては、特定の書式のドキュメントを直接印刷できます。たとえば、フォトプリンタでは、さまざまな形式のイメージを直接印刷できます。また、PostScript™ プリンタでは、PostScript™ ドキュメントを直接印刷できます。ただし、広範囲の書式のドキュメントを直接印刷できるプリンタは、ほとんどありません。ほとんどのプリンタでは、ソースドキュメントを印刷できる書式に変換するために、高水準のソフトウェアサポートが必要になります。
印刷 API は、次のことが可能になるように、ドキュメントの種類を記述するための方法を提供する必要があります。
プリンタが印刷可能な書式を報告できる。
クライアントが印刷したいデータの書式を記述できる。
クライアントがテキストデータのエンコーディングを記述できる。
Java™ 印刷サービス API では、DocFlavor クラスを使用してドキュメントの種類を記述します。DocFlavor は、次の要素で構成されます。
プリンタでデータを解釈する方法を指示する MIME タイプ。
データがプリンタに送信される方法を記述した Java クラスを示す表現クラス名。
印刷サービスへの HTML ページを記述するには、クライアントは、「text/html; charset=utf-16」の MIME タイプ文字列と「java.io.InputStream」の表現クラス名を含む DocFlavor を使用することを選択する可能性があります。クライアントでは、次のどちらかの方法で、DocFlavor を取得できます。
DocFlavor:DocFlavor htmlStreamFlavor = new DocFlavor("text/html; charset=utf-16", "java.io.InputStream"); を構築します。
このタイプの DocFlavor:DocFlavor.INPUT_STREAM TEXT_HTML_UTF_16 を表す定義済みのインスタンスを使用します。Java 印刷サービス API には、使用頻度の高いドキュメントフレーバ向けに、定義済みインスタンスセットが組み込まれています。
HTML ページにはテキストデータが含まれるため、MIME タイプ String にはテキストエンコーディング (この例では charset=utf-16) が含まれています。クライアントでは、印刷サービスに対して印刷データを正確に指定する必要があります。「クライアント指定書式付き印刷データ 」のセクションでは、これを実現するために DocFlavor を正しく構築する方法について説明します。MIME タイプにテキストエンコーディングが含まれていない場合は、「文字エンコーディングの重要性 」のセクションで説明されているように、予期しない結果が発生する場合があります。クライアントが Java オブジェクトとして指定したデータの書式は、サービスで決定することもできます。「サービス書式設定済み印刷データ 」のセクションでは、DocFlavor を使用してサービス書式設定済み印刷データを表現する方法について説明します。
DocFlavor API でドキュメントフレーバがあらかじめ宣言されているだけで、特定のフレーバの実装が使用可能になるわけではありません。たとえば、UTF-16 の HTML テキストを表す定義済みの DocFlavor を使用している場合でも、HTML の印刷をサポートする印刷サービスがないかぎり、HTML を印刷することはできません。プリンタが特定の書式をサポートしているかどうかの確認は、ユーザー側で行なってください。
目次 | 前へ | 次へ