JP5338496B2 - 情報処理装置、プログラムおよび記録媒体 - Google Patents

情報処理装置、プログラムおよび記録媒体 Download PDF

Info

Publication number
JP5338496B2
JP5338496B2 JP2009137939A JP2009137939A JP5338496B2 JP 5338496 B2 JP5338496 B2 JP 5338496B2 JP 2009137939 A JP2009137939 A JP 2009137939A JP 2009137939 A JP2009137939 A JP 2009137939A JP 5338496 B2 JP5338496 B2 JP 5338496B2
Authority
JP
Japan
Prior art keywords
print data
data
storage area
print
destination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009137939A
Other languages
English (en)
Other versions
JP2010286873A (ja
Inventor
克知 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2009137939A priority Critical patent/JP5338496B2/ja
Priority to US12/793,084 priority patent/US20100309500A1/en
Publication of JP2010286873A publication Critical patent/JP2010286873A/ja
Application granted granted Critical
Publication of JP5338496B2 publication Critical patent/JP5338496B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、プリント出力管理技術に関し、より詳細には、印刷要求を行った情報処理装置に関連付けて印刷出力先を効率的に制御する、データ処理装置、プログラムおよび記録媒体に関する。
コンピュータの性能向上およびネットワーク技術の普及により、オフィス環境に設置された情報処理装置は、ネットワークに接続され、インターネット、SAN(Storage Area Network)、サーバ、ネットワークプリンタなどにアクセスして各種の処理を行うことが多い。情報処理装置がネットワークに接続されていることは、上述したように、情報処理装置のアクセス能力を拡張するという利点を提供する。その一方で、情報処理装置がアクセスできる範囲が広がることから生じる問題もある。例えば、企業、病院、検査機関、官公庁など、個人情報や、機密情報を取り扱う情報処理装置では、文書ファイルを印刷する際、出力するプリンタを情報のレベルに対応して、出力するべきデータを動的に振り分けることが必要とされる場合も多い。
このような環境下、従来の情報処理装置では、印刷出力を指令する際のプリンタダイアログには、例えばUPnPやBonjourなどのプラグアンドプレイ技術の進歩により、ネットワーク上に接続され、情報処理装置が複数のアクセス可能なプリンタが選択可能となるように表示される。このため、プリント出力先を、特定の出力目的で切換えるなどの処理が必要な場合、従来のプリンタ選択方式では、出力先プリンタの指定を間違えて印刷出力を指令する場合も発生することが想定される。
そして、情報処理装置およびプリンタの印刷処理能力が向上するにつれ、印刷データへの変換処理も高速化し、一旦印刷出力を指令すると、その後にキャンセル指令を行ってもプリントキューに残されているデータを除き、誤った出力先プリンタにおいて出力されてしまう。このため、個人情報や高度の機密性を要する文書ファイルを扱うユーザにあっては、上述した出力先プリンタの指定ミスは、重大な問題を生じさせることも想定される。このような不都合を解消するために、クライアントコンピュータ(以下、単にクライアントとして参照する。)のプリントダイアログに対してネットワーク上で利用可能なプリンタを全部表示させないように設定することもできる。
しかしながら、この方式では、複数の異なるベンダから提供されるプリンタを含んで構築されることが多いプリンタネットワークで統一的なプリント出力制御ができず、またクライアントについて個別的な設定が必要になることも想定され効率的な方法ということができない。
これまでも文書ファイルの出力先管理については、種々知られており、例えば、特開2003−140867号公報(特許文献1)には、プリンタの電源オフ、用紙無しなどのプリンタのステータスに対応して出力するプリンタを自動振分けする技術が提案されている。
特許文献1に記載されたシステムは、プリンタのステータスに応答して他のプリンタへと出力先を切換えることで、無駄のないプリント出力を実行させることができる。しかしながら、特許文献1に記載されたシステムは、プリンタのステータスに応じて自動的に出力先プリンタを切換えるものであり、特定の情報処理装置やユーザが利用することができる出力先を管理するものではない。
さらに、プリンタのステータスに応答して他のプリンタを選択するだけでは、クライアントから誤ったプリンタに対して出力指令を発行してもプリンタがエラー状態となっていない場合、印刷出力は行われてしまい、プリント出力を制御するものではない。
また、プリンタサーバやターミナルサーバなどが、プリント指令を行ったユーザ識別値やIPアドレスなど、またはプリントデータの内容などを判断してプリント出力先を集中して管理することも可能ではある。しかしながら、プリンタドライバは、通常、オペレーティング・システム(OS)により管理されているので、1つのプリントジョブがプリンタドライバを専有している場合、プリンタドライバが後続するプリントジョブの処理を開始できず、プリンタドライバがスループットのボトルネックを形成してしまう場合もあった。
また、プリンタドライバが画像処理を終了し、出力データを設定されたプリンタに出力させた後、プリンタドライバは、後続するプリントジョブの処理を開始する。このため、プリンタサーバやターミナルサーバなどのデータ処理装置は、既にディスパッチした出力データについて、指定したプリンタが印刷エラーを発生した場合、エラー通知を行うためにプリンタドライバとは分離されたエラー通知管理モジュールを別途追加する必要もあった。
すなわち、従来のシステムでは、プリンタのステータスに応じて、出力先プリンタを選択することや、ユーザがどのプリンタに出力するかを印刷前にユーザが指定することは可能とするが、その一方で、ユーザが出力先を間違えたまま印刷指令を行うと、文書ファイルが、意図しない出力先プリンタに出力されてしまい、個人情報や機密情報が漏洩してしまうという問題があった。また、従来のシステムでは、情報処理装置にアクセスするユーザに関連付けて出力先プリンタを指定し、誤った出力先プリンタが選択されたままでも情報処理装置やユーザに対して設定された出力先プリンタへと確実に出力を行い、機密性の高い文書ファイルの意図しない情報漏洩を防止することが必要とされていた。
さらに、クライアント数が著しく多い場合やフルカラー画像を大量に印刷する場合にも対応しながら、印刷出力先を管理して高いセキュリティの下で印刷出力を行う技術が必要とされていた。また、複数ベンダからのプリンタが混在している場合でもプログラムの大きな修正や統合などを行うことなく、さらにファットクライアントに加えシンクライアントに対しても効率的にプリント出力制御を行うことが必要とされていた。
本発明は、上述した従来技術の問題点に鑑みてなされたものであり、本発明は、ユーザが情報処理装置のプリンタ出力設定に関わらず、情報処理装置や情報処理装置にアクセスするユーザに関連付けて出力先プリンタとして設定された出力先に対して出力を可能とする情報処理装置、プリント出力制御方法、プログラムおよび記録媒体を提供することを目的とする。さらに、本発明では、複数のベンダからのプリンタが混在している環境においてもベンダの異同にかかわらず、出力先プリンタを制御することが可能な情報処理装置、プログラムおよび記録媒体を提供することを目的する。
本発明では、アプリケーション実行手段からのジョブデータを受領してプリントするデータ処理装置を提供する。情報処理装置は、アプリケーションから印刷データを受け付け、該受け付けた印刷データを記憶するための記憶領域を確保する記憶領域確保手段および前記記憶領域確保手段によって確保された記憶領域に該印刷データを記憶する記憶制御手段
を有する印刷データ処理手段と、
前記記憶領域確保手段が前記アプリケーションから該印刷データを受け付けたとき、印刷データ処理手段によって生成される発送先処理手段であって、該印刷データに含まれる情報に基づいて該印刷データの発送先を決定し、決定した前記発送先に前記印刷データの送信を行う発送処理手段と、
を有する情報処理装置であって、
第1の印刷データの発送先を決定する処理を行う第1の発送処理手段による前記発送先への第1の印刷データの送信が完了する前に第1の印刷データとは異なる第2の印刷データを受け付けた際に、前記記憶領域確保手段によって確保された第1の記憶領域に第1の印刷データが記憶され、前記印刷データ処理手段によって第1の発送処理手段が生成されている場合、前記第1の発送処理手段による前記発送先への第1の印刷データの送信が完了する前に、前記記憶領域確保手段による前記第1の記憶領域とは異なる前記第2の印刷データを記憶するための第2の記憶領域の確保と、前記印刷データ処理手段による前記第1の発送処理手段とは異なる前記第2の印刷データの発送先を決定する第2の発送処理手段の生成とを開始する。
本発明の前記印刷データ処理手段は、さらに、
前記記憶領域確保手段が受け付けた印刷データから該印刷データに含まれる情報を抽出する抽出手段を有し、
前記記憶領域確保手段は、前記印刷データに含まれるイメージデータを前記記憶領域とは異なる記憶領域であるイメージデータ記憶領域に記憶し、
前記記憶制御手段は、前記イメージデータ記憶領域に記憶された前記イメージデータから生成され、該印刷データに含まれる情報によって指定される高次イメージフォーマットの描画データを、該描画データを前記記憶領域に記憶することができる。さらに本発明の情報処理装置は、前記印刷データを識別するための識別情報と、前記印刷データの前記発送先とを対応付ける識別情報テーブル手段を有することができる。
前記発送処理手段は、
前記発送処理手段が決定した発送先に対応するプリンタドライバに前記記憶領域に記憶された前記印刷データを送信して、前記発送先で印刷処理可能なデータ形式に変換を行わせることができる。前記描画データは、描画コードを含む高次イメージフォーマットとすることができる。また、前記描画コードを含む高次イメージフォーマットは、EMF、PostScript、PDF、XPSとすることができる。
前記アプリケーションは、
前記イメージデータを含む印刷データを生成する印刷データ生成手段と、
前記印刷データ生成手段から該印刷データを受け付けると、前記印刷データを識別する識別情報を生成し、前記印刷データ処理手段に該印刷データの印刷を前記印刷データ処理手段に要求する印刷要求手段と
を有することができる。前記印刷データ生成手段は、ネットワークを介して接続された他の情報処理装置からの要求に基づいて前記イメージデータを含む印刷データを生成することができる。
前記アプリケーションは、
請求項1に記載の情報処理装置とは異なる情報処理装置で実行され、
前記印刷データ生成手段は、
前記アプリケーションが実行される情報処理装置とは異なる複数の他の情報処理装置からの要求に基づいて前記イメージデータを含む印刷データを生成し、前記印刷データを、ネットワークを介して請求項1に記載の情報処理装置に送信することができる。
本発明は、さらに、コンピュータを上記機能手段として機能させるためのコンピュータ実行可能なプログラムおよび記録媒体を提供する。
本発明のデータ処理装置110を含むプリンタネットワーク100の実施形態を示した図。 本実施形態のデータ処理装置110の機能ブロック200を示した図。 本実施形態のデータ処理装置110が実行する処理のフローチャート。 本実施形態で、発送先制御部242が管理する対応付けテーブル400の実施形態を示した図。 本実施形態で使用するプロセスIDテーブル500の実施形態を示した図。 、本実施形態で、データ処理装置110が、プリンタステータスをモニタするフローチャートを示した図。 、本実施形態の仮想プリンタドライバ218の状態遷移700を示した図。
以下、本発明を実施形態をもって説明するが、本発明は、後述する実施形態に限定されるものではない。図1は、本発明のデータ処理装置110を含むプリンタネットワーク100の実施形態を示す。プリンタネットワーク100は、オフィスなどに配置される複数のクライアント112、114、116、118が、ネットワーク130に接続されて構成されている。ネットワーク130には、データ処理装置110の他、プリンタサーバ(図示せず)が接続され、各クライアント112、114、116、118からの印刷要求をプリンタサーバが管理してもよい。
図1に示す例示的な実施形態では、MFP122、レーザプリンタ124、126、インクジェットプリンタ128などがリモートプリンタとして接続されている。本実施形態では、上述したMFP122、各ページプリンタ124〜128を、以下、リモートプリンタとして総称する。
データ処理装置110は、図1に示す実施形態では、クライアント112〜118からの印刷要求および印刷要求に対応する印刷データを取得し、クライアント112〜118に割当てられたリモートプリンタを判断し、リモートプリンタに対応するリモートドライバ250を起動する。その後、データ処理部210は、印刷データに対応するRAWデータを、当該クライアントに割当てられたリモートプリンタに宛てて送付する。なお、作成されたRAWデータは、例えばPDL(Page Description Language)コマンドの追加処理などが行われて出力データとされ、指定されたリモートプリンタ122〜128に送付される。リモートプリンタ122〜128は、クライアント112〜118に対応し、リモートプリンタが設置されたロケーションで印刷処理を実行する。
なお、本実施形態ではクライアント112〜118に対してリモートプリンタを割当てる際には、クライアントのハードウェア上の識別値、例えばIPアドレス、MACアドレス(Media Access Control Address)、クライアントに付されたコンピュータ名、またはユーザのログイン名などを使用することができ、本実施形態では、これらの値を総じて、出力要求元識別値として参照する。また、本発明の好ましい実施形態では、クライアント112、114、116は、ICカードリーダを備え、クライアント112、114、116の利用者を識別して利用者ごとに割当てたリモートプリンタに文書の印刷を可能としている。
データ処理装置110は、好ましい実施形態では、サーバ装置として実装され、シングルコア、マルチコアのCPU、ROM、実行空間を提供するRAM、ハードディスク装置などを含み、Windows(登録商標)200Xサーバ、UNIX(登録商標)、LINUX(登録商標)、Solaris(登録商標)などのオペレーティングシステム(OS)による制御の下、印刷データの出力先を制御する。また、データ処理装置110と、クライアント112〜118の間は、RDPなどの適切な遠隔接続プロトコルを使用してトランザクションが可能とされている。また、データ処理装置110の機能は、クライアント112がファットクライアントとして実装される場合、クライアントの機能として実装することもできる。
クライアント112〜118と、リモートプリンタ122〜128の割当てについては種々の態様が考えられる。例えば、特定の実施形態では、クライアントまたはユーザを固有に識別する出力要求元識別値ごとに出力先にリモートプリンタを割当てることができる。また、他の実施形態では、クライアントグループまたはユーザグループを設定し、これらのグループ単位で特定のリモートプリンタを割当てる態様も採用することができる。図1に示した実施形態では、クライアント112−リモートプリンタ122とがロケーション140を構成し、各クライアントとプリンタとが対応付けられてロケーション150、160を構成する。クライアントはロケーション140〜160に複数存在することもでき、リモートプリンタについても各ロケーションに複数存在していてもよい。
本実施形態で、プリンタネットワーク100にプリンタサーバを接続する場合、プリンタサーバがクライアント112〜118からの印刷要求を受領して、各クライアント112〜118に割当てられたリモートプリンタ122〜128に対して印刷データを送付し、印刷ジョブを実行させる構成とすることができる。プリンタサーバを利用する場合、プリンタサーバは、ハードウェア構成およびOS構成についてデータ処理装置110と同様の構成とすることができる。なお、プリンタサーバは、必ずしもサーバ装置上に実装される必要はなく、パーソナルコンピュータに、プリンタサーバアプリケーションを実装して構成することもできる。
クライアント112〜118は、それぞれ同様の構成を有しており、ファットクライアント装置、例えば、それぞれがアプリケーションプログラムを実装し、各種処理を完結する、パーソナルコンピュータまたはワークステーションなどから構成することができる。ファットクライアントとしてクライアント112〜118を実装する場合、各クライアント112〜118は、シングルコア、マルチコアのCPUを搭載し、RAM、ROM、ハードディスク装置、ネットワークインタフェースカード(NIC)を含み、Windows(登録商標)、UNIX(登録商標)、LINUX(登録商標)、Mac OS(登録商標)などの適切なOSの下で、各リモートプリンタ122〜128へと印刷処理を依頼している。
ファットクライアントとして実装されるクライアント112〜118は、ハードディスク装置などからアプリケーションプログラムおよびデータをRAMに読込んで、CPUがアプリケーションプログラムを実行させることにより、文書、イメージ、マルチメディアまたはこれらが複合的に組合わされた電子的データとして印刷対象とする文書ファイルを生成する。
また、他の実施形態では、クライアント112〜118は、いわゆるシンクライアントとして実装することができる。シンクライアントは、ネットワーク接続モジュール、ユーザ認証機能、セッション生成モジュールなど、専らデータ処理装置110に対してサービス要求を発行し、処理結果を受領して印刷出力を依頼する機能のみを実装する。クライアント112〜118がシンクライアントとして実装される場合では、クライアント112〜118は、アプリケーションにより処理を終了した後、データ処理装置110に対して印刷要求を発行する。
データ処理装置110は、シンクライアントの要求に対応して作成したデータを、仮想プリンタドライバに渡し、ジョブごとに出力先、ステータス管理および画像変換処理を可能とする。作成された出力データは、クライアント112〜118に対応するリモートプリンタに送付され、印刷処理が実行される。なお、仮想プリンタドライバについてより詳細に後述する。本実施形態では、仮想プリンタドライバは、多数のクライアントからの印刷要求が発行された場合に、データ処理装置110の仮想プリンタドライバが複数のクライアントからの印刷要求をジョブ単位の並列処理を可能とすることで、印刷効率を向上させつつ、ステータス管理を効率化する。さらに、本実施形態の仮想プリンタドライバは、ビットマップなどの低位イメージデータの他、EMF(Enhanced Metafile)、PDF、XPSなど描画情報を伴う上位フォーマットで記述された印刷要求であっても効率的な処理を可能としている。
ネットワーク130は、1000Base−TXなどのイーサネット(登録商標)、光ネットワーク、IEEE802.11などの規格の無線ネットワークを含んで構成することができ、フレームまたはTPC/IPプロトコルに基づくパケット通信によって、相互通信を行う。また、ネットワーク130は、LANの他、VPN(Virtual Private Network)などによるセキュア環境下で構築されたインターネットなどの広域ネットワークを含んで構成されていてもよい。
図2は、本実施形態のデータ処理装置110の機能ブロック200である。なお、図2に示すように、データ処理装置110は、複数の機能手段を含んで構成され、これらの機能手段は、RAMなどにプログラムを読込んで、CPUがプログラムを実行することによりコンピュータ上に実現されている。
図2に示すように、データ処理装置110は、データ処理部210と、アプリケーション実行部212とを含んで構成される。データ処理装置110のデータ処理部210と、アプリケーション実行部212とは、図2に示すように一体として構成することができる、また特定の実装形態では、図2に示す破線をネットワーク境界として、左手側の機能部をターミナルサーバとして実装し、破線の右手側の機能部分を、本実施形態のデータ処理装置110として分離して実装することもできる。アプリケーション実行部212は、ネットワーク130を介してクライアント112〜118の処理要求および印刷要求を受領して処理を実行し、実行結果を作成する。実行結果は、プリント指令部216によるプリント指令イベントの発生に応答して、GDIなどのAPIコールを経てプリントジョブ(以下、単にジョブとして参照する。)とした後、ジョブデータをデータ処理部210に送付する。
他の実施形態では、図2に示した機能モジュールは、図2の通りに実装される必要は無く、例えば、クライアント112〜118がそれぞれ、アプリケーション実行部212およびデータ処理部210の機能を保有するか、またはクライアント112〜118がそれぞれアプリケーション実行部212を実装する、いわゆるファットクライアントとして実装することができる。さらに他の実装形態としては、シンクライアントからの要求を処理するターミナルサーバが、アプリケーション実行部212およびデータ処理部210の機能を保有している実施形態として実装することもできる。さらに、クライアント112〜118がシンクライアントであり、ターミナルサーバが、アプリケーション実行部212を実装し、データ処理部210がプリンタサーバとして実装される実装形式も採用することができる。これらの特定の実装形式は、プリンタネットワーク100が設置される環境やユーザの特定の用途に応じて適宜変更することができる。
データ処理部210は、仮想プリンタドライバ218と、仮想プリンタドライバ218が呼出された段階で、アプリケーション214から送付されたジョブデータからイメージデータおよびジョブ情報データを一旦格納するジョブ格納部226と、出力先のリモートプリンタの発送先を制御しながら印刷出力するべきデータをリモートドライバに送付する発送処理部240とを含んでいる。仮想プリンタドライバ218は、アプリケーション実行部212のプリント指令モジュールとして実装されるプリント指令部216からの呼出しに対応して起動され、アプリケーション214から送付されるジョブデータを受領して処理を開始する。
本実施形態では、ジョブデータは、イメージデータおよびジョブ情報データを含んで構成される。イメージデータは、ビットマップ、JPEG、GIFなどの低次イメージデータを含むことができるし、また描画コードを含むEMF、PostScript(登録商標)、PDFなどの高次イメージデータを含むこともできるし、さらに他の実施形態では低次イメージデータおよび高次イメージデータの両方を含むことができる。また、ジョブ情報データは、印刷要求の発行元を固有に識別する識別値、イメージデータの面付け情報、マージン、サイズ設定などの印刷設定に関連するデータである。
プリント指令部216は、説明する実施形態ではクライアント112〜118からの印刷要求を受領すると、仮想プリンタドライバ218に、現在開始したジョブを固有に識別するためのプロセスIDを生成し、新たなジョブが開始したことをプロセスIDを送付することによって通知する。仮想プリンタドライバ218は、プロセスIDを生成すると、当該ジョブのため発送処理部240のプライベートインスタンス240a〜240cを生成し、それぞれのプライベートインスタンスごとに発送先を決定する処理を実行させる。ジョブごとに起動されたプライベートインスタンス240a〜240cは、作業空間それぞれの作業空間230a〜230c内のイメージデータを取得し、それぞれイメージ処理部236で面付け、印刷設定の割付を実行する。
この間に、対応する発送処理部、例えばプライベートインスタンス240aは、ジョブ情報データが含むユーザ名、IPアドレスなどを参照して出力先とするべきリモートプリンタを、対応付けテーブルを参照して決定する。対応付けテーブルは、ユーザ名やクライアントのIPアドレスなどの値と、出力するべきリモートプリンタの割当てを登録するテーブルであり、発送先制御部242が管理することができる。発送先制御部242が発送先とするべきリモートプリンタを決定した段階で、データ発送部244は、作業空間230a内に生成された高次イメージフォーマットのデータを取得し、決定されたリモートドライバ250Aに送信する。
また、発送先として決定されているリモートドライバ250Aがページ割り当てや面付けの機能を持っている場合には、イメージ処理部236は高次イメージフォーマットとして生成されたイメージデータ234を、リモートドライバ250Aの受信可能なフォーマットへのイメージ変換を行い、ジョブ情報データ232をリモートドライバ250Aの機能設定値として指定してリモートドライバ250Aに変換させることでRAWデータを作成することも可能である。例えば、特定の実施形態で、Windows(登録商標)のプリンタドライバにおいては、ほとんどのプリンタドライバがEMFを受信できるので、イメージデータ234がEMFであった場合にはデータの変換は必要なく、ジョブ情報データ232を印刷設定構造体DEVMODEに設定すれば、リモートプリンタドライバ250Aが目的のRAWデータを作成可能となる。リモードドライバ250Aにページ割当てや面付けの機能のない場合は、EMFをページごとのEMFに分割し、ページ順の入れ替えや描画位置の指定をすることで目的のRAWデータを得ることができる。
なお、プライベートインスタンス240a〜240cは、図2に示すリモートドライバ250Aだけを管理するのではなく、発送先制御部242が決定した発送先とするべきリモートドライバを呼出す。本実施形態では、データ処理部210のジョブ処理機能を、仮想プリンタドライバ218と、発送処理部240とに分離し、発送処理部240のプライベートインスタンスをプライベートインスタンス240a〜240cとして生成することにより、ジョブ単位で発送先のリモートプリンタに対する発送処理を実行させることで、リモートプリンタのエラーが発生した場合のプリント停止を最小限としている。
この結果、発送処理部240は、ジョブごとに独立したスプール空間を取得でき、特定のリモートプリンタがエラーとなって、プリンタキューから、エラージョブが削除できなくなった場合でもエラーによる障害を、仮想プリンタドライバ218が処理する前ジョブに影響を与えることなく、当該エラーを生じたリモートプリンタのジョブのみに限定できる。なお、データ処理装置110がユーザからの入力を受付けて処理を制御できる場合、プリント指令部216は、マウスイベントなどを受領してプリント指令を発行することができる。
イメージデータが、カラー画像データであって、ビットマップなどの低次イメージデータから構成されている場合、イメージデータのスプール処理には時間を要し、また、従来、スプール処理が完了しない限り、次の印刷要求を受け付けないという排他処理が行われるため、特にカラー画像の低次イメージデータを処理する際のデータ処理装置110の処理が、イメージ変換処理によってボトルネックを形成してしまう。そこで、本実施形態では、カラー画像を含むジョブデータを可能な限り描画コードを含む高次イメージフォーマットとすることで、画像データ量を低減し、さらに、ジョブごとに分離した作業空間を割当ててカラー画像データを作業空間230a〜230cに移行させることで、発送先とするべきリモートプリンタが出力可能なRAW形式の出力データを効率的に生成させている。
より詳細に仮想プリンタドライバ218の構成を、以下に説明する。仮想プリンタドライバ218は、仮想プリント管理部220と、データ抽出部222と、仮想描画部224とを含んで実装されている。仮想プリンタドライバ218は、ジョブデータを受領すると、仮想プリント管理部220を呼出し、ジョブデータをジョブ格納部226に格納する。一方、仮想プリント管理部220は、仮想描画部224を呼出して、ジョブ格納部226に格納されたジョブデータのうち、イメージデータをジョブに対応付けて処理するための記憶空間を、作業空間230a〜230cとして確保させる。作業空間230a〜230cは、データ処理部210が管理するRAMなどの記憶空間の適切な容量を割当てて形成され、本実施形態では、例えば仮想スプーラとして参照することができる。データ抽出部222は、一旦ジョブ格納部226に格納したジョブデータからジョブ情報データ232を抽出し、発送処理部240のプライベートインスタンス240a〜240cのうち関連ずる発送先制御部242に渡す。
以下、現在処理中のジョブデータが、作業空間230aが処理を担当するものとして処理を実行する。仮想描画部224は、現在、ジョブ格納部226に格納されているイメージデータを、ジョブ格納部226から作業空間230aに移動して、高次イメージフォーマットの描画データを作業空間内230aに生成する。例えば特定の実施形態であるWindows(登録商標)システムであれば、Spollerの生成するEMFファイルを、プリンタプロセッサが作業空間にコピーすることでも実現できるし、グラフィックモジュールがEMFを生成することもできる。描画データは、ジョブ情報データ232を参照して、ページ割当ておよびマージン設定などが行われた形式として生成される。ジョブ格納部226を空とし、アプリケーション実行部212に対してイメージ処理終了を通知する。アプリケーション214は、この段階で、ジョブ格納部226に対する排他管理を解除し、後続する印刷要求の処理を実行することが可能となる。なお、排他管理としては、種々の手法を使用することができ、セマフォや、同期クラスなどを利用して実装することができる。他の実施形態では、また、アプリケーション実行部212のプリント指令部216を提供するGUI(Graphical User Interface)をイベントを受領しない形式に変更して表示することで、簡易的に排他制御を行うこともできる。
ジョブ格納部226は、データ処理部210の実施形態に応じて、プリンタバッファまたはスプールファイルを格納する記憶領域として実装することができ、特定OSの実装形式に限定されるものではない。例えば、作業空間230aに移動されたイメージデータは、データ処理部210のイメージ処理部236に送付される。イメージ処理部236は、ジョブごとに生成される作業空間230aのイメージデータおよびジョブ情報データ232を取得して、ページ割当て、面付けなどの処理を実行する。プライベートインスタンス240aは、その時点で決定されている発送先とするべきリモートドライバ250Aを呼出して、受領したイメージデータ、面付けおよび印刷設定値を使用して、リモートプリンタ122〜128に固有のRAW形式に変換し、例えば、プリンタ122にRAW形式で出力データを送付する。
イメージ処理部236は、本実施形態では、リモートドライバ250および描画プロセッサを含む描画モジュールなどの画像処理モジュールとして実装することができる。より具体的には、イメージ処理部236は、EMF、PDF、PostScript(登録商標)など描画制御コードやベクトルイメージを含む高次イメージフォーマットの場合には、描画プロセッサを呼出して処理を実行する。また処理対象のイメージデータがBMPなどの低次イメージデータの場合、リモートドライバ250を呼出してイメージ変換を実行し、リモートドライバ250によるラスタイメージの作成が終了するまで作業空間230aとの間で処理を反復して、RAW形式の出力データを生成することもできる。さらに、プライベートインスタンス240aは、データ抽出部222が抽出したジョブ情報データ232を、プロセスIDおよび画像に紐付けし、以後のジョブ管理リスト238a〜238cとして生成し、各プライベートインスタンスの対応管理のために利用することができる。
本実施形態では、イメージデータがビットマップ、JPEG、JPEG2000、PNG、GIFなどの描画コードを含まない低次イメージデータを含んでもよい。本実施形態では、低次イメージデータを含む場合でも、作業空間230a〜230cを生成し、呼出されたリモートドライバ250のRAWデータの生成が終了するまで、作業空間230a〜230cを利用して処理を反復させる。なお、低次イメージデータと高次イメージデータとが混在しているジョブ情報の場合、描画プロセッサおよびリモートドライバ250A〜250Cを適宜呼出して処理を実行する処理を実行する。上述した構成を採用することで、発送処理部240は、ジョブごとのデータの整合性を確保しながら、リモートプリンタ122〜128での良好な出力を確保する。
さらに発送処理部240の構成を、プライベートインスタンス240aを例示しながら説明する。なお、発送処理部240b、240cは、プライベートインスタンス240aと同様の構成として生成される。プライベートインスタンス240aは、発送先制御部242と、データ発送部244とを含んで実装される。発送先制御部242は、データ抽出部222がジョブデータから分離・抽出したジョブ情報データ232から、対応付けテーブル246を参照して、印刷要求の発行元に関連付けて出力データの発送先を取得する。その後、発送先制御部242は、取得した発送先をデータ発送部244に通知する。データ発送部244は、発送先制御部242からの通知に応じて出力データの送付先とするべきリモートドライバ250Aなどを呼出す。
データ発送部244は、発送先制御部242から発送先の通知を受けると、発送管理リストの対応するジョブIDのレコードにプロセスIDごとに発送先を設定する。データ発送部244は、作業空間230aから出力データを受領すると、ポートモニタなどへと出力データを送付し、リモートプリンタ122〜128からの印刷出力を可能とする。なお、発送管理リストの詳細な実施形態については、後述する。
本実施形態では、アプリケーション214は、ジョブを、可能な限り高次イメージデータを含む形式で仮想プリンタドライバ218に送付することが好ましい。この理由は、高次イメージデータとしてイメージデータを送付することにより、特にカラーイメージについてはイメージあたりのデータ量を削減でき、ひいては、データ処理部210がより多くの印刷要求に対応することが可能となるためである。
図3は、本実施形態のデータ処理装置110が実行する処理のフローチャートである。図3に示す処理は、ステップS300から開始し、ステップS301で、仮想プリンタドライバ218が選択され、各種設定を登録する。なお、この登録は、データ処理装置110の管理者などが専用のGUIにより行うことができる。なお、図2に示した実施形態の場合、実行結果は、アプリケーション214がクライアント112〜118の要求に対応して作成し、仮想プリンタドライバ218に渡す。ステップS302で、仮想プリンタドライバ218は、ジョブをアプリケーション214から受領してプロセスID(PID)を生成し、ジョブ管理リスト238a〜238cのフィールドに登録する。
その後、ステップS304でデータ抽出部222がジョブデータからジョブ情報データ232を分離してジョブ管理リスト238aにジョブ情報ID(JID)を登録し、ジョブに関連する、例えばプライベートインスタンス240aに送付する。同時に分離されたイメージデータに、イメージID(IMGID)を割当ててジョブ格納部226に送付する。また、イメージ処理部236によるイメージ変換処理と並列的に、プライベートインスタンス240aによる発送先の決定処理を開始させる。
ステップS303では、作業空間230aを生成し、ジョブ格納部226から作業空間230aにイメージデータを移動させ、ステップS305でイメージ処理部236を呼出してイメージ変換処理を開始させる。ステップS305では、イメージデータをジョブ格納部226から作業空間230aに移動し、イメージデータが高次イメージフォーマットではないカラー画像の場合、イメージ処理部236は、高次イメージフォーマットを実行する。また、ステップS305では、イメージ処理部236が、ジョブ情報データ232を使用してイメージ変換処理を実行する。なお、イメージ変換には、イメージの面付けおよび印刷サイズ、マージン割当てなどの処理を含む。
ステップS307では、イメージ処理部236によるイメージ処理が終了したか否かを判断し、イメージ処理が終了していない場合(no)、ステップS306で作業空間230aからイメージデータを取得して、作業空間230aで現在処理中の全イメージについてイメージ変換およびフォーマット設定が終了するまでを反復させる。全イメージについてイメージ変換処理が終了した後(yes)ステップS308で、データ発送部244に対して出力データを送付する。データ発送部244は、発送管理テーブルをルックアップしてプロセスIDに割当てられた発送先に対応するリモートドライバ250Aを呼出して出力データを生成し、例えばポートモニタを介してターゲットとするリモートプリンタ250Aに宛てて送付する。なお、リモートドライバ250Aは、出力データをデータ発送部244に送付する前に、イメージ変換済みの出力データに対し、PDL(Page Description Language)などを追加して、ターゲットのリモートプリンタに宛てて出力データを送付することができる。
本実施形態では、イメージ処理部236は、ジョブデータが含むイメージを高次イメージフォーマットとして生成する機能を含んで構成され、リモートドライバ250は、例えば、UPnP、Bonjourなどのプラグアンドプレイ機能を利用して自動的に取得される。この結果、特定のメーカの特定実装形式のページプリンタを使用することなく、プリンタネットワーク100に接続され、プラグアンドプレイ、すなわち、自動ドライバ転送プロトコルを利用することができるページプリンタであれば、特定のメーカに依存せずに処理を行うことができる。
図4は、本実施形態で、発送先制御部242が管理する対応付けテーブル400の実施形態を示す。対応付けテーブル400Aは、クライアント112〜118の出力要求元を識別する識別値として、クライアントが入力するIPアドレスやICカードなどから読み取ったユーザ名を使用して、IPアドレスまたはユーザ名と、当該ユーザ名について割当てるべきプリンタのローカルプリンタ名とを対応付けて登録する。ローカルプリンタとは、データ処理部210に対してリモートプリンタとして識別され、ロケーション140〜160に設置されるプリンタを固有に識別する値が割当てられる。また、IPアドレスは、対応付けテーブル400Aに示すような単独の値ではなく、特定のグループなどに対応付けることができるように、サブネットマスクなどで指定されたIPアドレス範囲とすることができる。
対応付けテーブル400Bは、出力要求元の識別値として、ユーザ名を使用し、リモートプリンタを固有に識別するためのプリンタ名を、ローカルプリンタAなどとして、対応付けて登録する実施形態である。なお、ユーザ名に対応付けて出力先を管理する実施形態では、ユーザがアクセスしているクライアントにかかわらず、ユーザに対応して出力先プリンタを固定することができ、この際、ユーザは、端末が変更してもクライアントに対してプリンタ設定の変更を入力せずとも確実に設定された出力先に送付できるので、操作性および文書ドキュメントのセキュリティ確保の面で効率化を可能とする。図4に示した対応付けテーブル400は、データ処理装置110の管理者が、適切なデータベースを使用して入力することができる。
また、本実施形態では、特定のIPアドレスが割当てられたクライアントおよびユーザ名などを連結し、同一のユーザでも異なるクライアントで作業する場合には、異なる出力先プリンタに出力させる構成とすることもできる。
対応付けテーブル400Cは、出力先の紐付けを行う際に、ユーザといった識別値に加え、出力内容を組み合わせて制御するために使用する実施形態である。対応付けテーブル400Cでは、さらにユーザ3に対して複数のネットワークプリンタが割当てられていて、それぞれプリンタ名としてローカルプリンタCおよびローカルプリンタDとされている。
出力内容は、例えば帳票印刷や、ラベル印刷、カラー印刷ではプリンタ機能も異なり、また帳票印刷であってもフォーマットや出力機能が異なるため、これらの相違に基づいて出力先を制御するために利用される。なお、出力内容は、ジョブ情報データ232としてアプリケーションから渡されてもよいし、データ処理装置110が、ジョブ情報データのメタデータを使用して判断することもできる。また、特定の識別値に複数のリモートプリンタが割当てられている場合には、登録上位のプリンタ名をデフォルト設定として選択可能とし、クライアント112〜118に問合わせてインタラクティブに設定された範囲に限定しながらリモートプリンタを可能とすることができる。
図5は、本実施形態で使用する発送管理テーブル500の実施形態を示す。図5に示す発送管理テーブル500は、プロセスIDと、発送先とが対応付けて登録されている。発送管理テーブル500は、本実施形態では、データ発送部244が集約して管理することができ、特定の用途および実装形式に対応して適宜いかなるモジュールが管理し作成および更新することができる。発送管理テーブル500には、アプリケーション214がジョブを仮想プリンタドライバ218に依頼した時点でジョブに対して固有の値として生成されるプロセスIDが、例えば、PID_001として登録される。
プライベートインスタンス240a〜240cは、受領したジョブ情報データ232を使用して対応付けテーブル400をルックアップして、発送先を決定し、発送管理テーブル500の対応するプロセスIDが登録された発送先フィールドに決定された発送先を登録する。発送先は、プリンタ名でもよいし、IPアドレスでもよい。
データ発送部244は、処理開始するべきジョブのプロセスIDを参照して、発送先の値を取得し、取得した発送先の値を引数として対応するリモートプリンタドライバをモジュールとして呼出す。その後、データ発送部244は、RAW形式の出力データの生成を開始する。その後、データ発送部244は、適宜PDLなどを追加処理を実行した後、ポートモニタなどのディスパッチ処理部にデータを送付し、ネットワーク130を介して、リモートのMFP122、ページプリンタ124〜128からの出力を可能としている。
なお、データ処理部210が発送先に対応するプリンタドライバを保有していない場合には、UPnPなどのプロトコルにより、リモートドライバ250A〜250Cを取得し、データ発送部244が利用可能とされている。なお、データ処理装置110がデフォルト設定でUPnPをサポートしている場合には、通常では利用可能なリモートプリンタに対するリモートドライバは、データ処理装置110が保有している。
図6は、本実施形態で、データ処理装置110が、プリンタステータスをモニタするフローチャートを示す。仮想プリンタドライバ218は、自己が管理するプロセスIDのための作業空間230aの生存期間中生存し、作業空間230aの処理の生成およびハードウェア資源上での資源割当ての削除などを管理する。同時に、仮想プリンタドライバ218は、自己が管理するプロセスIDに対応するリモートプリンタからのステータス情報を、SNMPプロトコルを使用して監視している。図6に示した処理は、ステップS600から開始し、ステップS601では、RAWデータを作成し、PDLコマンドなどの追加を行った後、RAWデータを含む出力データを出力先のプリンタに宛てて発行する。ステップS602では、出力先のプリンタのステータスは正常か否かを判断する。ステップS602の判断でステータスが正常であると判断した場合(yes)、ステップS603で、出力先のプリンタから印刷完了通知を受領したか否かを判断する。
印刷が完了していない場合(no)、処理をステップS602に戻し、印刷完了の通知を受領するまで出力先プリンタのステータスを継続検査し、当該検査を印刷完了まで続行する。なお、データ処理装置110の当該処理は、データ処理装置110がSNMPマスタとして機能し、出力先プリンタがSNMPスレーブとして機能することにより直接検査することができ、ステータス変化の検出については、SNMPtrapコマンドを利用し、ステータス状態については、出力先プリンタがMIBを使用して公開することによりデータ処理装置110が取得する。
一方、ステップS602で、出力先のプリンタのステータスが異常であると判断された場合(no)、ステップS605でデータ処理装置110は、発送管理テーブル500、ジョブ管理リスト238a〜238cおよび対応付けテーブル400を参照してエラーに関連するクライアント112〜118を特定し、該当するクライアントにエラーダイアログを表示させる。エラーダイアログを表示させる際、データ処理装置110は、仮想プリンタドライバ218のステータス異常として、プリント指令部216を呼出し、特定されたクライアント112〜118のいずれかに対して、プリンタステータスダイアログを表示させることにより行われる。
データ処理部210は、このため、SNMPマネージャサービスを起動し、trapコマンドを受領すると、リモートプリンタが公開するMIBを検査し、クライアント112〜118またはデータ処理装置110のデスクトップ画面上にエラーダイアログを表示し、ステップS606でエラーダイアログ上にエラー対策の方法を表示するテキスト画面などを表示させる。その後、処理を、ステップS602に戻し、当該エラーを生じさせたプリンタのステータスが正常となるまで、文書ファイルの残りのデータを保持し、印刷の完了を保証する。
出力先プリンタのステータスが正常となり、ステップS603で、印刷するべきデータが終了し、データ処理装置110が印刷完了の通知を受領すると、ステップS604で、印刷完了ダイアログをクライアントのデスクトップ画面上に表示し、ステップS607で、ステータスチェックを完了する。
図7は、本実施形態のデータ処理部210の状態遷移700を示す。データ処理部210は、起動されると、アプリケーション214からのジョブを受領するイベント待機状態に遷移する。データ処理部210は、ジョブを受領して、仮想描画部224を呼出し、説明する実施形態では、プロセスIDに対応付けられ、仮想スプーラとして参照する作業空間230a〜230cをジョブごとに生成する。そして、生成した作業空間230a内にジョブ格納部226内のデータを高次フォーマットの描画データを保存して生成させ、移動および描画データの生成を完了した段階で作業空間230a〜230c仮想スプーラを使用したイメージ変換処理を開始させる。作業空間230a〜230cへのイメージデータ移動が終了した段階で、データ処理部210は、新たなジョブに対応するイベント待機状態に遷移する。
一方、仮想スプーラに移動されたイメージデータは、イメージ処理部236による印刷設定が施された後、それぞれ発送先として決定されたリモートドライバA〜リモートドライバCを呼出し、出力データ(RAWデータ)の生成処理へと送られる。図7の破線で示す出力データの生成処理では、発送先に対応するリモートドライバ250A〜250Cが呼出され、データ発送部244から渡されたデータに基づいて出力データをRAWデータとして生成させる処理が実行される。データ処理部210は、データ発送部244が出力データの生成処理を起動し、処理するべきデータを渡した後、イベント待機状態に遷移し、後続するジョブを待機する。
図7に示すように、本実施形態のデータ処理装置110は、ジョブ格納部226のデータを高次イメージデータの描画処理をスキップして作業空間230a〜230cに高速に移動させ、移動終了時にアプリケーション214によるイメージ処理部236の排他管理を開放し、アプリケーション実行部212による次のプリント指令イベントの待機状態とすることができる。このため、アプリケーション実行部212への制御の戻しが高速化でき、この結果作業空間230a〜230cの生成後、直ちにイベント待機状態に状態遷移することが可能となるのでより高いジョブ処理容量を、文書印刷のセキュリティを確保しつつ提供することができる。
以上説明したように、本発明によれば、パーソナルコンピュータやシンクライアントが複数の画像形成装置にアクセスすることが可能な現在のネットワークプリント環境で、ネットワークを介して接続されるクライアントから、ユーザ情報やクライアント情報を使用して常時同一のプリンタから出力することが可能となり、出力業務ごとの管理を効率化し、さらに情報セキュリティの向上を可能とする、データ処理装置、プログラムおよび記憶媒体が提供できる。また、本発明によれば、特に、カラー画像を描画コードを含む高次イメージデータとして処理することで、多数のクライアントからのカラー画像印刷要求にも効率的に対応でき、さらにはより高速・大容量のプリント出力を可能としながら出力先を制御することが可能なデータ処理装置、プログラムおよび記憶媒体が提供できる。
さらに、本発明によれば、シンクライアントに対して印刷するべきリモートプリンタのプリンタドライバの追加実装を排除して、より柔軟なネットワーク構成に対応しつつ、印刷出力の出力先管理を可能とする、データ処理装置、プリンタネットワークシステム、データ処理方法、プログラムおよび記憶媒体が提供できる。
本実施形態の上記機能は、C、C++、C#、Java(登録商標)などのオブジェクト指向プログラミング言語などで記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、CD−ROM、MO、DVD、フレキシブルディスク、EEPROM、EPROMなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用効果を奏する限り、本発明の範囲に含まれるものである。
100…プリンタネットワーク、110…データ処理装置、112、114、116、118…クライアント、130…ネットワーク、122…MFP、124、126…レーザプリンタ、128…インクジェットプリンタ、140、150、160…ロケーション、200…機能ブロック、210…データ処理部、212…アプリケーション実行部、214…アプリケーション、216…プリント指令部、218…仮想プリンタドライバ、220…仮想プリント管理部、222…データ抽出部、224…仮想描画部、226…ジョブ格納部、230…作業空間、232…ジョブ情報データ、236…イメージ処理部、238a〜238c…ジョブ管理リスト、240…発送処理部、242…発送先制御部、244…データ発送部、250A〜250C…リモートドライバ
特開2003−140867号公報

Claims (11)

  1. アプリケーションから印刷データを受け付け、該受け付けた印刷データを記憶するための記憶領域を確保する記憶領域確保手段および前記記憶領域確保手段によって確保された記憶領域に該印刷データを記憶する記憶制御手段を有する印刷データ処理手段と、
    前記記憶領域確保手段が前記アプリケーションから該印刷データを受け付けたとき、印刷データ処理手段によって生成される発送先処理手段であって、該印刷データに含まれる情報に基づいて該印刷データの発送先を決定し、決定した前記発送先に前記印刷データの送信を行う発送処理手段と、
    を有する情報処理装置であって、
    第1の印刷データの発送先を決定する処理を行う第1の発送処理手段による前記発送先への第1の印刷データの送信が完了する前に第1の印刷データとは異なる第2の印刷データを受け付けた際に、前記記憶領域確保手段によって確保された第1の記憶領域に第1の印刷データが記憶され、前記印刷データ処理手段によって第1の発送処理手段が生成されている場合、前記第1の発送処理手段による前記発送先への第1の印刷データの送信が完了する前に、前記記憶領域確保手段による前記第1の記憶領域とは異なる前記第2の印刷データを記憶するための第2の記憶領域の確保と、前記印刷データ処理手段による前記第1の発送処理手段とは異なる前記第2の印刷データの発送先を決定する第2の発送処理手段の生成とを開始する
    ことを特徴とする情報処理装置。
  2. 前記印刷データ処理手段は、さらに、
    前記記憶領域確保手段が受け付けた印刷データから該印刷データに含まれる情報を抽出する抽出手段を有し、
    前記記憶領域確保手段は、前記印刷データに含まれるイメージデータを前記記憶領域とは異なる記憶領域であるイメージデータ記憶領域に記憶し、
    前記記憶制御手段は、前記イメージデータ記憶領域に記憶された前記イメージデータから生成され、該印刷データに含まれる情報によって指定される高次イメージフォーマットの描画データを、該描画データを前記記憶領域に記憶することを特徴とする請求項1に記載の情報処理装置。
  3. 前記印刷データを識別するための識別情報と、前記印刷データの前記発送先とを対応付ける識別情報テーブル手段を有することを特徴とする請求項1に記載の情報処理装置。
  4. 前記発送処理手段は、
    前記発送処理手段が決定した発送先に対応するプリンタドライバに前記記憶領域に記憶された前記印刷データを送信して、前記発送先で印刷処理可能なデータ形式に変換を行わせることを特徴とする請求項1に記載の情報処理装置。
  5. 前記描画データは、描画コードを含む高次イメージフォーマットであることを特徴とする請求項に記載の情報処理装置。
  6. 前記描画コードを含む高次イメージフォーマットは、EMF、PostScript、PDF、XPSであることを特徴とする請求項5に記載の情報処理装置。
  7. 前記アプリケーションは、
    前記イメージデータを含む印刷データを生成する印刷データ生成手段と、
    前記印刷データ生成手段から該印刷データを受け付けると、前記印刷データを識別する識別情報を生成し、前記印刷データ処理手段に該印刷データの印刷を前記印刷データ処理手段に要求する印刷要求手段と
    を有することを特徴とする請求項1に記載の情報処理装置。
  8. 前記印刷データ生成手段は、ネットワークを介して接続された他の情報処理装置からの要求に基づいて前記イメージデータを含む印刷データを生成することを特徴とする請求項に記載の情報処理装置。
  9. 前記アプリケーションは、
    請求項1に記載の情報処理装置とは異なる情報処理装置で実行され、
    前記印刷データ生成手段は、
    前記アプリケーションが実行される情報処理装置とは異なる複数の他の情報処理装置からの要求に基づいて前記イメージデータを含む印刷データを生成し、前記印刷データを、ネットワークを介して請求項1に記載の情報処理装置に送信することを特徴とする請求項に記載の情報処理装置。
  10. コンピュータを、アプリケーション実行手段からのジョブデータを受領してプリントするデータ処理装置として機能させるためにコンピュータ実行可能なプログラムであって、
    前記プログラムは、前記コンピュータを、
    アプリケーションから印刷データを受け付け、該受け付けた印刷データを記憶するための記憶領域を確保する記憶領域確保手段、
    前記記憶領域確保手段によって確保された記憶領域に該印刷データを記憶する記憶制御手段、
    前記記憶領域確保手段が前記アプリケーションから該印刷データを受け付けたとき、印刷データ処理手段によって生成される発送先処理手段であって、該印刷データに含まれる情報に基づいて該印刷データの発送先を決定し、決定した前記発送先に前記印刷データの送信を行う発送処理手段として機能させ、前記プログラムは、
    第1の印刷データの発送先を決定する処理を行う第1の発送処理手段による前記発送先への第1の印刷データの送信が完了する前に第1の印刷データとは異なる第2の印刷データを受け付けた際に、前記記憶領域確保手段によって確保された第1の記憶領域に第1の印刷データが記憶され、前記印刷データ処理手段によって第1の発送処理手段が生成されている場合、前記第1の発送処理手段による前記発送先への第1の印刷データの送信が完了する前に、前記記憶領域確保手段による前記第1の記憶領域とは異なる前記第2の印刷データを記憶するための第2の記憶領域の確保と、前記印刷データ処理手段による前記第1の発送処理手段とは異なる前記第2の印刷データの発送先を決定する第2の発送処理手段の生成とを開始する
    コンピュータ実行可能なプログラム。
  11. 請求項10に記載されたプログラムを記録したコンピュータ可読な記録媒体。
JP2009137939A 2009-06-09 2009-06-09 情報処理装置、プログラムおよび記録媒体 Active JP5338496B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009137939A JP5338496B2 (ja) 2009-06-09 2009-06-09 情報処理装置、プログラムおよび記録媒体
US12/793,084 US20100309500A1 (en) 2009-06-09 2010-06-03 Data processing apparatus, program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009137939A JP5338496B2 (ja) 2009-06-09 2009-06-09 情報処理装置、プログラムおよび記録媒体

Publications (2)

Publication Number Publication Date
JP2010286873A JP2010286873A (ja) 2010-12-24
JP5338496B2 true JP5338496B2 (ja) 2013-11-13

Family

ID=43300543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009137939A Active JP5338496B2 (ja) 2009-06-09 2009-06-09 情報処理装置、プログラムおよび記録媒体

Country Status (2)

Country Link
US (1) US20100309500A1 (ja)
JP (1) JP5338496B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5444881B2 (ja) 2009-06-26 2014-03-19 株式会社リコー 情報処理装置および情報処理システム
JP5458997B2 (ja) * 2010-03-18 2014-04-02 株式会社リコー データ処理装置、データ処理方法およびプログラム
JP5870527B2 (ja) 2011-07-26 2016-03-01 株式会社リコー 出力振り分けシステム、出力振り分け装置、出力先情報提供装置および記録媒体
JP5879807B2 (ja) 2011-08-11 2016-03-08 株式会社リコー 印刷制御装置、制御プログラム及び記録媒体
JP6205878B2 (ja) 2012-07-25 2017-10-04 株式会社リコー データ処理装置、システムおよびプログラム
JP6111728B2 (ja) 2013-02-20 2017-04-12 株式会社リコー 画像形成出力制御システム、画像形成出力制御プログラム及び情報処理装置
JP6292009B2 (ja) 2013-05-27 2018-03-14 株式会社リコー システム、及び方法
US10481839B2 (en) 2016-10-07 2019-11-19 Ricoh Company, Ltd. Communication system, mobile terminal, and device
JP6809320B2 (ja) 2017-03-17 2021-01-06 株式会社リコー 情報処理装置、プログラム、通信システム、通信方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US360802A (en) * 1887-04-05 Chaeles gomee
US362047A (en) * 1887-04-26 tuebk
US360272A (en) * 1887-03-29 Henby g
US351453A (en) * 1886-10-26 Fluid-discharging apparatus
US6111659A (en) * 1995-09-26 2000-08-29 Matsushita Electric Industrial Co., Ltd. Digital copier with image scanner apparatus and offline image data and control data interface
JP2970529B2 (ja) * 1996-05-08 1999-11-02 富士ゼロックス株式会社 画像処理装置
JP4371516B2 (ja) * 1999-02-08 2009-11-25 キヤノン株式会社 管理サーバ装置及び印刷処理方法及び情報処理装置及び印刷制御方法及びコンピュータ読取可能な記憶媒体
EP2270645B1 (en) * 2000-04-07 2014-01-29 Seiko Epson Corporation Control of distributed printing with multiple printers
JP4785303B2 (ja) * 2000-10-31 2011-10-05 キヤノン株式会社 印刷制御装置、印刷制御方法およびプログラム
JP2002215352A (ja) * 2001-01-18 2002-08-02 Minolta Co Ltd 画像処理装置
JP2006178654A (ja) * 2004-12-21 2006-07-06 Ricoh Co Ltd 情報処理装置、画像形成要求処理方法、画像形成要求処理プログラム
JP2006324857A (ja) * 2005-05-18 2006-11-30 Ricoh Co Ltd デジタル複合機
JP4623469B2 (ja) * 2005-12-27 2011-02-02 キヤノンマーケティングジャパン株式会社 プリントサーバおよびプリントシステムおよびプリント方法およびプログラムおよび記録媒体
US9213513B2 (en) * 2006-06-23 2015-12-15 Microsoft Technology Licensing, Llc Maintaining synchronization of virtual machine image differences across server and host computers
US20080002225A1 (en) * 2006-06-27 2008-01-03 Masajiro Iwasaki Printing control method, printing control device, printing sytem, terminal device, program, and recording medium
US8149431B2 (en) * 2008-11-07 2012-04-03 Citrix Systems, Inc. Systems and methods for managing printer settings in a networked computing environment

Also Published As

Publication number Publication date
JP2010286873A (ja) 2010-12-24
US20100309500A1 (en) 2010-12-09

Similar Documents

Publication Publication Date Title
JP5444881B2 (ja) 情報処理装置および情報処理システム
JP5338496B2 (ja) 情報処理装置、プログラムおよび記録媒体
US8654379B2 (en) Data processing apparatus and recording medium
JP5402392B2 (ja) プリンタネットワークシステム、サーバ装置、プリント方法、プログラムおよび記録媒体
EP2498177B1 (en) Printer
JP5803290B2 (ja) データ処理装置およびプログラム
JP5870527B2 (ja) 出力振り分けシステム、出力振り分け装置、出力先情報提供装置および記録媒体
US20070297006A1 (en) Output management device setting apparatus and setting method
JP5293035B2 (ja) データ処理装置、データ処理方法、プログラムおよび記録媒体
US20070299905A1 (en) System for setting print end notification either when data transmission ends or when printing ends based on print check ability of printing devices
JP2010157208A (ja) データ処理装置、プリンタネットワークシステム、データ処理方法、プログラムおよび記録媒体
US20070091361A1 (en) Printer, print control method, and program for executing print control method
US8711390B2 (en) Method and apparatus for executing load distributed printing
JP5655909B2 (ja) 方法および情報処理装置
US11593050B2 (en) Printing system and method of easier printing when information processing apparatus acquires workflow from cloud server to identify whether the information processing apparatus connected to internal network at first location or second location
JP5458997B2 (ja) データ処理装置、データ処理方法およびプログラム
JP5884884B2 (ja) データ処理装置、印刷システム、データ処理方法、プログラムおよび記録媒体
JP2010271988A (ja) データ処理装置、プリント出力制御方法、プログラムおよび記録媒体
JP2012133590A (ja) プリントシステム、クラインアントpc及びその制御方法、プリントサーバ及びその制御方法
JP5790341B2 (ja) データ処理装置、印刷システム、データ処理方法、プログラムおよび記録媒体
JP5729036B2 (ja) データ処理システム、印刷制御方法、プログラムおよび記録媒体
JP2013200892A (ja) データ処理装置、データ処理方法および記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130510

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130722

R151 Written notification of patent or utility model registration

Ref document number: 5338496

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151