プリンターへのドキュメントの送信

Output サービスを使用して、レーザー印刷形式およびラベル印刷形式をプリンターに送信できます。サポートされている形式の一覧については、Output サービスを参照してください。

注意: ラベルプリンターの製造元では、様々な印刷言語を使用するデバイスを製造しています。Zebra のすべてのプリンターで ZPL が使用されるわけではありません。使用しているデバイスで特定の印刷言語がサポートされているかどうかを確認してください。

次の図は、Output サービスがドキュメントをネットワークプリンターに送信する状況を示しています。

Output サービスは、次の印刷アクセスメカニズムをサポートしています。

直接アクセス型プリンター:
印刷元のコンピューターにインストールされているプリンターを「直接アクセス型プリンター」と呼び、そのコンピューターを「プリンターホスト」と呼びます。コンピューターに直接接続されたローカルプリンターなどが、このプリンターに該当します。

間接アクセス型プリンター:
Common UNIX® Printing System(CUPS)や Line Printer Daemon(LPD)プロトコルなどのテクノロジーを利用できます。プリントサーバーにインストールされたプリンターに対して、他のコンピューターからアクセスします。間接アクセス型プリンターにアクセスするには、プリントサーバーの IP またはホスト名を指定する必要があります。ネットワークで LPD が実行されている場合は、このメカニズムを使用してドキュメントを LPD の URI に送信できます。このメカニズムを使用すると、LPD が実行されているネットワークに接続されたどのプリンターにでもドキュメントをルーティングすることができます。

この方法でドキュメントをプリンターに送信する場合は、次のいずれかの印刷プロトコルを指定します。

CUPS:
Common UNIX Printing System の略称。このプロトコルは UNIX オペレーティングシステムで使用され、CUPS を実行するコンピューターはプリントサーバーとして機能します。プリントサーバーはクライアントアプリケーションからの印刷要求を受け付けて処理し、設定されたプリンターに送信します。IBM AIX® オペレーティングシステムでは、CUPS を使用しないでください。

DirectIP:
リモート印刷や印刷ジョブ管理のための標準的なプロトコル。このプロトコルは、ローカルで使用することも、リモートで使用することもできます。プリントキューは不要です。

LPD:
Line Printer Daemon プロトコルの略称。Line Printer Remote(LPR)プロトコルとも呼ばれます。このプロトコルは UNIX ベースのシステムにネットワークプリントサーバー機能を提供します。

SharedPrinter:
特定のコンピューターに対して設定されているプリンターを使用できるようにする印刷プロトコル。このプロトコルは、Generate PDF サービスがインストールされており、LiveCycle が Windows Server® 2008 オペレーティングシステムにインストールされている場合は機能しません。この問題は Windows Server 2008 オペレーティングシステムにのみ当てはまります。これに該当する場合は、別のプリンタープロトコルを使用してください。

CIFS:
Output サービスは、Common Internet File System(CIFS)印刷プロトコルをサポートしています(Output サービスのパフォーマンスの向上を参照してください)。

次の表は、各種の入力値、印刷アクセスメカニズムおよびその結果を示しています。

アクセスメカニズム

プリントサーバー URI

プリンター名

結果

SharedPrinter

任意

Null

例外:必須の引数 sPrinterName を null にすることはできません。

SharedPrinter

任意

無効

Output サービスから、プリンターが見つからないという内容の例外がスローされます。

SharedPrinter

任意

有効

印刷ジョブが正常に作成されます。

LPD

Null

任意

Output サービスから、必須の引数 sPrintServerUri を null にすることはできないという内容の例外がスローされます。

LPD

Invalid

Null

Output サービスから、必須の引数 sPrinterName を null にすることはできないという内容の例外がスローされます。

LPD

Invalid

Null 以外

Output サービスから、sPrintServerUri が見つからないという内容の例外がスローされます。

LPD

有効

Invalid

Output サービスから、プリンターが見つからないという内容の例外がスローされます。

LPD

有効

有効

印刷ジョブが正常に作成されます。

CUPS

Null

任意

Output サービスから、必須の引数 sPrintServerUri を null にすることはできないという内容の例外がスローされます。

CUPS

Invalid

任意

Output サービスから、プリンターが見つからないという内容の例外がスローされます。

CUPS

有効

任意

印刷ジョブが正常に作成されます。

DirectIP

Null

任意

Output サービスから、必須の引数 sPrintServerUri を null にすることはできないという内容の例外がスローされます。

DirectIP

Invalid

任意

Output サービスから、プリンターが見つからないという内容の例外がスローされます。

DirectIP

有効

任意

印刷ジョブが正常に作成されます。

CIFS

有効

Null

印刷ジョブが正常に作成されます。

CIFS

Invalid

任意

Output サービスから、CIFS を使用した印刷中に不明なエラーがスローされます。

CIFS

Null

任意

Output サービスから、必須の引数 sPrintServerUri を null にすることはできないという内容の例外がスローされます。

注意: Windows の場合、リモートネットワークプリンターで印刷するには、共有プリンターを使用するよりも、CIFS プロトコルを使用した方が簡単です。CIFS プロトコルはリモート Windows プリントサーバーで使用できます(Output サービスのパフォーマンスの向上を参照してください)。

Windows でのサービスの実行

Windows で JBoss 版の自動インストールを使用して LiveCycle をインストールすると、JBoss はローカルシステムアカウントのコンテキストで実行されます。このコンテキストで実行されるサービスはネットワーク上で認証されないので、プリンターなどのネットワークリソースにはアクセスできません。Output Installation Verification Sample(Output IVS)を使用してドキュメントをネットワークプリンターに送信すると、次のエラーメッセージが表示されます。

Printer \\server\queue not found

この問題を解決するには、有効なユーザーのコンテキストで JBoss を有効にします。そのためには、「ログオン」タブをクリックし、「アカウント」を選択して、JBoss サービスのプロパティを変更します。有効なユーザー名とパスワードを指定します。

注意: この問題は、SharedPrinter アクセスメカニズムを使用する場合にのみ当てはまります。

ネットワークプリンターへのドキュメントの送信

ネットワークで LP デーモンが実行されている場合は、ドキュメントを Line Printer Daemon(LPD)の URI に送信できます。ネットワークに接続されているどのプリンターにでもドキュメントをルーティングすることができます。このプリンターは、別のコンピューターに接続されていてもかまいません。

XML フォームデータを参照し、印刷実行時オプションを設定したら、Output サービスを呼び出すことができます。Output サービスによってドキュメントがネットワークプリンターに送信されます。可能であれば CIFS プロトコルの使用をお勧めします。共有プリンターは、プリンターがローカルにインストールされている場合に使用できます。

カスタムページサイズを含むフォームデザインから作成された PostScript ファイルは、正しく印刷されません。この問題を解決するには、カスタムサイズを処理するようにプリンターを設定します。カスタムサイズの処理方法はプリンターごとに異なります。プリンターによっては、ページサイズ、メディアタイプ、給紙トレイなどを設定できる場合があります。カスタムサイズを処理するようにプリンターを設定する方法については、使用しているプリンターのマニュアルを参照してください。

プリンターにドキュメントを送信するときは、次の点を考慮してください。

  • PrinterProtocolSharedPrinter に設定し、ServerURI を空白値に設定にします。また、PrinterName には、プリンターのパスを指定する値を設定します(例:\\server12r-nt\HP LaserJet 8150 PCL 6 Tower II Level 5)。

  • PrinterName の値は、プリンターがインストールされているパスを使用して取得できます。例えば、プリンターが server12r-nt サーバーに存在するとします。プリンターの名前を取得するには、スタート/プリンターと FAX を選択し、特定のプリンターを右クリックして、「プロパティ」を選択します。「全般」タブのテキストボックスにプリンター名が表示されます。

  • SharedPrinter を使用した印刷で問題が発生した場合、その原因の 1 つとして、ログイン ID の誤りが考えられます(Windows でのサービスの実行を参照してください)。