1

印刷ジョブを特定のプリンターに送信するために、次のコードを使用しています。

PrintServiceAttributeSet aset = new HashPrintServiceAttributeSet();
     try {
            aset.add(new PrinterURI(new URI("ipp://hostName/printerName")));
        } catch (URISyntaxException e) {
            System.out.println("URI exception caught: "+e);
        }
        PrintService[] services =
            PrintServiceLookup.lookupPrintServices(DocFlavor.INPUT_STREAM.POSTSCRIPT,aset);  

Strangley、9つのルックアップ結果(=その特定のホストで使用可能なすべてのプリンター)を取得しますが、最初の結果のみが私が探しているものです。PrintService JavaDocsとWebで検索しましたが、問題については何も見つかりませんでした。

PrintServiceLookupは、私の要求に一致するプリンターのみを返すことを期待されていませんか?(この場合-1台のプリンター)

前もって感謝します!

4

1 に答える 1

0

私が使用していたURIが間違っていたことが判明しました(まだ有効な構文であるため、例外はスローされませんでした)。
したがって、私の最初の質問に答えます-Java PrintServiceは間違った属性を無視します(私の予想とは対照的に、PrintServiceは間違った属性の場合に結果を返しません)。

とにかくありがとう

于 2011-04-05T14:23:34.720 に答える