第84回 Java Print Service API その2
引き続き「Java Print Service API」について学んでいきます。
今回は「docフレーバ」を学びます。
docフレーバとは、印刷データの提供形式を表現するオブジェクトです。
docフレーバは以下の情報で構成されます。
・データをプリンタに送信する方法を指定する表現クラス名(例 URL、InputStream、byte配列)
・データの解釈方法をプリンタに通知するMIMEタイプ
Java Print Service APIでは、標準で様々なdocフレーバが定数として用意されています。
例えば、インターネット上のGIF画像を印刷する場合には、「DocFlavor.URL.GIF」を使用します。
今回のサンプルでは、印刷サービスがサポートしているdocフレーバの一覧を出力します。
(Java5以降)
import javax.print.DocFlavor; import javax.print.PrintService; import javax.print.PrintServiceLookup; public class MyPrintService { public static void main(String args[]) { // デフォルトのプリントサービス取得 PrintService printService = PrintServiceLookup.lookupDefaultPrintService(); System.out.println(printService); System.out.println(); // プリントサービスがサポートするdocフレーバを出力 for (DocFlavor docFlavor : printService.getSupportedDocFlavors()) { System.out.println("docFlavor: " + docFlavor); System.out.println("MediaSubtype: " + docFlavor.getMediaSubtype()); System.out.println("MediaType: " + docFlavor.getMediaType()); System.out.println("MimeType: " + docFlavor.getMimeType()); System.out.println(); } } }
様々な定数が用意されているのに、実際にプリンタがサポートしている形式は少ないということが確認できるでしょう……。