(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-21
(45)【発行日】2022-11-30
(54)【発明の名称】印刷装置及び印刷処理方法
(51)【国際特許分類】
B41J 29/38 20060101AFI20221122BHJP
B41J 29/42 20060101ALI20221122BHJP
G03G 21/00 20060101ALI20221122BHJP
H04N 1/00 20060101ALI20221122BHJP
【FI】
B41J29/38 201
B41J29/38 202
B41J29/42 F
G03G21/00 396
H04N1/00 912
(21)【出願番号】P 2018219085
(22)【出願日】2018-11-22
【審査請求日】2021-11-10
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100104710
【氏名又は名称】竹腰 昇
(74)【代理人】
【識別番号】100090479
【氏名又は名称】井上 一
(74)【代理人】
【識別番号】100124682
【氏名又は名称】黒田 泰
(74)【代理人】
【識別番号】100166523
【氏名又は名称】西河 宏晃
(74)【代理人】
【識別番号】100187539
【氏名又は名称】藍原 由和
(72)【発明者】
【氏名】大島 康裕
(72)【発明者】
【氏名】古田 泰大
【審査官】上田 正樹
(56)【参考文献】
【文献】特開2004-070871(JP,A)
【文献】特開2007-257015(JP,A)
【文献】特開2016-215526(JP,A)
【文献】特開2005-327123(JP,A)
【文献】米国特許出願公開第2017/0083265(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B41J 29/38
B41J 29/42
G03G 21/00
H04N 1/00
(57)【特許請求の範囲】
【請求項1】
他の印刷装置と印刷ジョブを共有する印刷装置であって、
前記他の印刷装置と通信を行う通信部と、
前記通信部の制御を行う処理部と、
前記印刷ジョブを蓄積する記憶部と、
前記印刷ジョブに基づいて印刷を行う印刷部と、
を含み、
前記処理部は、
前記印刷装置と前記他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、
前記他の印刷装置が蓄積する前記印刷ジョブが、機種依存の印刷設定を含むか否かの第1判定、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像の回転処理に関する第2判定、及び、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像のデータ形式に関する第3判定、の少なくとも1つの判定に基づいて、前記他の印刷装置が蓄積する前記印刷ジョブを、前記印刷部が印刷可能であるか否かを判定
し、
前記他の印刷装置に蓄積された前記印刷ジョブが印刷できないと判定された場合、前記他の印刷装置と同一機種である印刷装置における前記印刷ジョブの印刷を促す報知処理を行うことを特徴とする印刷装置。
【請求項2】
他の印刷装置と印刷ジョブを共有する印刷装置であって、
前記他の印刷装置と通信を行う通信部と、
前記通信部の制御を行う処理部と、
前記印刷ジョブを蓄積する記憶部と、
前記印刷ジョブに基づいて印刷を行う印刷部と、
を含み、
前記処理部は、
前記印刷装置と前記他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、
前記他の印刷装置が蓄積する前記印刷ジョブが、機種依存の印刷設定を含むか否かの第1判定、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像の回転処理に関する第2判定、及び、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像のデータ形式に関する第3判定、の少なくとも1つの判定に基づいて、前記他の印刷装置が蓄積する前記印刷ジョブを、前記印刷部が印刷可能であるか否かを判定
し、
前記他の印刷装置に蓄積されている前記印刷ジョブを、前記他の印刷装置と、前記印刷ジョブを前記他の印刷装置に送信した端末装置のいずれから取得するかを判定し、
前記印刷ジョブが印刷できないと判定された場合、前記端末装置から前記印刷ジョブを取得することを特徴とする印刷装置。
【請求項3】
請求項
1又は2に記載の印刷装置において、
前記処理部は、
印刷可能と判定されたことを条件に、前記他の印刷装置に蓄積された前記印刷ジョブを前記他の印刷装置から取得し、取得した前記印刷ジョブを前記印刷部に印刷させることを特徴とする印刷装置。
【請求項4】
請求項
1乃至3のいずれか一項
に記載の印刷装置において、
前記処理部は、
前記第1判定に基づいて、前記印刷ジョブを印刷可能であるか否かを判定する場合に、
前記印刷ジョブが機種依存の印刷設定を含まないと判定されることを条件に、印刷可能と判定することを特徴とする印刷装置。
【請求項5】
請求項
4に記載の印刷装置において、
前記機種依存の印刷設定は、印刷用紙種の設定及び特殊印刷に関する設定の少なくとも1つを含むことを特徴とする印刷装置。
【請求項6】
請求項
4又は5に記載の印刷装置において、
前記機種依存の印刷設定は、前記他の印刷装置が有し、且つ、自身の印刷装置が有さないハードウェア資源に関する設定であることを特徴とする印刷装置。
【請求項7】
請求項1乃至
6のいずれか一項に
記載の印刷装置において、
前記処理部は、
前記第2判定に基づいて、前記印刷ジョブを印刷可能であるか否かを判定する場合に、
前記印刷ジョブの印刷対象である印刷画像の前記回転処理が必要で無いこと、又は、前記印刷画像の前記回転処理が必要であり且つ前記回転処理を実行可能であることを条件に、印刷可能と判定することを特徴とする印刷装置。
【請求項8】
請求項1乃至
7のいずれか一項に
記載の印刷装置において、
前記処理部は、
他の印刷装置が蓄積する前記印刷ジョブのうち、選択された前記印刷ジョブを対象として印刷可能か否かを判定することを特徴とする印刷装置。
【請求項9】
請求項
8に
記載の印刷装置において、
表示部をさらに含み、
前記処理部は、
前記記憶部に蓄積された前記印刷ジョブ、及び、前記他の印刷装置に蓄積された前記印刷ジョブに関する情報を取得し、取得した情報に基づいてジョブ選択画面を前記表示部に表示する処理を行い、
前記ジョブ選択画面において選択された前記印刷ジョブを対象として印刷可能か否かを判定することを特徴とする印刷装置。
【請求項10】
請求項1乃至
7のいずれか一項に
記載の印刷装置において、
表示部をさらに含み、
前記処理部は、
前記他の印刷装置に蓄積された前記印刷ジョブが印刷可能か否かを判定し、
前記処理部は、
前記記憶部に蓄積された前記印刷ジョブ、及び、前記他の印刷装置に蓄積された前記印刷ジョブのうち印刷可能と判定された前記印刷ジョブを表示するジョブ選択画面を、前記表示部に表示する処理を行い、
前記ジョブ選択画面において選択された前記印刷ジョブを前記印刷部に印刷させることを特徴とする印刷装置。
【請求項11】
請求項1乃至
7のいずれか一項に
記載の印刷装置において、
前記処理部は、
前記他の印刷装置に蓄積された前記印刷ジョブが印刷可能か否かを判定し、
前記処理部は、
前記他の印刷装置に蓄積された前記印刷ジョブのうち印刷可能と判定された前記印刷ジョブを、前記印刷部に印刷させることを特徴とする印刷装置。
【請求項12】
他の印刷装置と印刷ジョブを共有する印刷装置における印刷処理方法であって、
前記印刷装置と、前記他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、
前記他の印刷装置が蓄積する前記印刷ジョブが、機種依存の印刷設定を含むか否かの第1判定、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像の回転処理に関する第2判定、及び、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像のデータ形式に関する第3判定、のうちの少なくとも1つの判定に基づいて、前記他の印刷装置が蓄積する前記印刷ジョブを前記印刷装置が印刷可能であるか否かを判定
し、
前記他の印刷装置に蓄積された前記印刷ジョブが印刷できないと判定された場合、前記他の印刷装置と同一機種である印刷装置における前記印刷ジョブの印刷を促す報知処理を行う、
ことを特徴とする印刷処理方法。
【請求項13】
他の印刷装置と印刷ジョブを共有する印刷装置における印刷処理方法であって、
前記印刷装置と、前記他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、
前記他の印刷装置が蓄積する前記印刷ジョブが、機種依存の印刷設定を含むか否かの第1判定、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像の回転処理に関する第2判定、及び、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像のデータ形式に関する第3判定、のうちの少なくとも1つの判定に基づいて、前記他の印刷装置が蓄積する前記印刷ジョブを前記印刷装置が印刷可能であるか否かを判定
し、
前記他の印刷装置に蓄積されている前記印刷ジョブを、前記他の印刷装置と、前記印刷ジョブを前記他の印刷装置に送信した端末装置のいずれから取得するかを判定し、
前記印刷ジョブが印刷できないと判定された場合、前記端末装置から前記印刷ジョブを取得する、
ことを特徴とする印刷処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷装置及び印刷処理方法等に関する。
【背景技術】
【0002】
従来、ネットワークを介して互いに通信可能な複数の印刷装置において、印刷ジョブを共有する手法が知られている。この場合、印刷ジョブが送信された印刷装置とは異なる印刷装置が、当該印刷ジョブの印刷処理を実行することが可能になる。ユーザーは、いずれの印刷装置に印刷ジョブを送信したかにかかわらず、任意の印刷装置において印刷処理の実行及び印刷結果の取得が可能であるため、利便性が高い。例えば特許文献1は、サーバーを用いずに、複数の印刷装置の間で印刷データを送受信する手法を開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1のようにサーバーシステムを用いずに印刷ジョブの共有を行う場合、印刷ジョブの送信元がいずれかの印刷装置となる。印刷ジョブを共有する複数の印刷装置に、異なる機種が混在する場合、所与の印刷装置に蓄積された印刷ジョブを、他の印刷装置における印刷処理に用いたのでは、所望の結果が得られないケースがある。そのため、異なる機種間における印刷ジョブの送受信を無条件に許可することは好ましくない。一方、異なる機種間における印刷ジョブの送受信を一律に禁止した場合、印刷ジョブを共有できる蓋然性が低下するため、利便性が損なわれてしまう。
【課題を解決するための手段】
【0005】
本発明の一態様は、他の印刷装置と印刷ジョブを共有する印刷装置であって、前記他の印刷装置と通信を行う通信部と、前記通信部の制御を行う処理部と、前記印刷ジョブを蓄積する記憶部と、前記印刷ジョブに基づいて印刷を行う印刷部と、を含み、前記処理部は、前記印刷装置と前記他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、前記他の印刷装置が蓄積する前記印刷ジョブが、機種依存の印刷設定を含むか否かの第1判定、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像の回転処理に関する第2判定、及び、前記他の印刷装置が蓄積する前記印刷ジョブの印刷画像のデータ形式に関する第3判定、の少なくとも1つの判定に基づいて、前記他の印刷装置が蓄積する前記印刷ジョブを、前記印刷部が印刷可能であるか否かを判定する印刷装置に関係する。
【図面の簡単な説明】
【0006】
【
図3】印刷システムにおける処理を説明するフローチャート。
【
図5】印刷ジョブの蓄積処理を説明するシーケンス図。
【
図6】印刷ジョブに関する情報の取得及び表示処理を説明する模式図。
【
図7】印刷ジョブに関する情報の取得及び表示処理を説明するシーケンス図。
【
図8】第1の実施形態における印刷処理を説明するシーケンス図。
【
図9】端末装置から取得した印刷ジョブの印刷処理を説明する模式図。
【
図10】他の印刷装置から取得した印刷ジョブの印刷処理を説明する模式図。
【
図11】印刷を実行する印刷装置における処理を説明するフローチャート。
【
図12】第1の実施形態における他の印刷処理を説明するシーケンス図。
【
図13】印刷を実行する印刷装置における他の処理を説明するフローチャート。
【
図14】第2の実施形態における印刷処理を説明するフローチャート。
【
図15】第2の実施形態における印刷可能か否かの判定処理を説明するフローチャート。
【発明を実施するための形態】
【0007】
以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【0008】
1.システム構成
図1、
図2を用いて、印刷装置100、及び印刷装置100を含む印刷システム10の構成例を説明する。
図1は、複数の印刷装置100の間で印刷ジョブを共有する印刷システム10の構成例である。
図1においては、印刷装置100として、第1プリンター100A~第5プリンター100Eの5つを例示したが、印刷装置100の数はこれに限定されない。
【0009】
第1プリンター100A~第5プリンター100Eは、ネットワークを介して互いに通信可能である。ここでのネットワークは、イントラネット等の内部ネットワークであってもよいし、インターネット等の公衆回線を用いたネットワークであってもよい。
【0010】
端末装置200は、ネットワークを介して、印刷ジョブを所与の印刷装置100に送信する装置である。端末装置200は、例えばPCであるが、スマートフォンやタブレット端末等の携帯端末装置であってもよい。端末装置200の数も1つに限定されず、複数の端末装置200がネットワークに接続されてもよい。
【0011】
図2は、印刷装置100の構成例である。印刷装置100は、処理部110、通信部120、記憶部130、印刷部140、表示部150を含む。ただし印刷装置100は
図2の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。また印刷装置100は、印刷機能を含む複数の機能を有する複合機(MFP:Multifunction Peripheral)であってもよい。
【0012】
処理部110は、印刷装置100の各部の制御を行う。例えば処理部110は、メインCPU(Central Processing Unit)、サブCPUなどの複数のCPU、或いはMPU(Micro-processing unit)を含むことができる。メインCPUは、印刷装置100の各部の制御や全体的な制御を行う。サブCPUは、例えば印刷についての各種の処理を行う。或いは通信処理のためのCPUが更に設けられてもよい。
【0013】
処理部110は、下記のハードウェアにより構成される。ハードウェアは、デジタル信号を処理する回路及びアナログ信号を処理する回路の少なくとも一方を含むことができる。例えば、ハードウェアは、回路基板に実装された1又は複数の回路装置や、1又は複数の回路素子で構成することができる。1又は複数の回路装置は例えばIC等である。1又は複数の回路素子は例えば抵抗、キャパシター等である。
【0014】
また処理部110は、下記のプロセッサーにより実現されてもよい。本実施形態の印刷装置100は、情報を記憶するメモリーと、メモリーに記憶された情報に基づいて動作するプロセッサーと、を含む。情報は、例えばプログラムと各種のデータ等である。プロセッサーは、ハードウェアを含む。プロセッサーは、CPU、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)等、各種のプロセッサーを用いることが可能である。メモリーは、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)などの半導体メモリーであってもよいし、レジスターであってもよいし、ハードディスク装置(HDD:Hard Disk Drive)等の磁気記憶装置であってもよいし、光学ディスク装置等の光学式記憶装置であってもよい。例えば、メモリーはコンピューターにより読み取り可能な命令を格納しており、当該命令がプロセッサーにより実行されることで、印刷装置100の各部の機能が処理として実現される。ここでの命令は、プログラムを構成する命令セットの命令でもよいし、プロセッサーのハードウェア回路に対して動作を指示する命令であってもよい。
【0015】
通信部120は、ネットワークを介して、他の印刷装置100及び端末装置200との通信を行う。ここでのネットワークはWAN(Wide Area Network)やLAN(Local Area Network)などにより実現することができ、有線・無線を問わない。通信部120は、具体的には有線通信又は無線通信を行うチップやモジュールである。
【0016】
記憶部130は、データやプログラムなどの各種の情報を記憶する。処理部110や通信部120は例えば記憶部130をワーク領域として動作する。記憶部130は、半導体メモリーであってもよいし、レジスターであってもよいし、磁気記憶装置であってもよいし、光学式記憶装置であってもよい。
【0017】
印刷部140は、印刷エンジンを含む。印刷エンジンとは、印刷媒体への画像の印刷を実行する機械的構成である。印刷エンジンは、例えば搬送機構やインクジェット方式の吐出ヘッド、当該吐出ヘッドを含むキャリッジの駆動機構等を含む。印刷エンジンは、搬送機構により搬送される印刷媒体に対して、吐出ヘッドからインクを吐出することによって、印刷媒体に画像を印刷する。印刷媒体は、紙や布等、種々の媒体を利用できる。なお、印刷エンジンの具体的構成はここで例示したものに限られず、電子写真方式でトナーにより印刷するものでもよい。
【0018】
表示部150は、各種情報をユーザーに表示するディスプレイ等で構成される。表示部150は、例えばタッチパネルであり、ユーザーからの入力操作を受け付ける操作インターフェースを兼ねてもよい。
【0019】
端末装置200は、例えば第1プリンター100Aに、印刷ジョブを送信する。端末装置200を用いて印刷ジョブを送信したユーザーは、所望の印刷装置100まで移動し、当該印刷装置100において印刷結果を取得する。印刷ジョブが共有されるため、ユーザーが印刷結果を取得する印刷装置100は、第1プリンター100Aに限定されない。ユーザーは、第1プリンター100A~第5プリンター100Eのうちの任意の印刷装置100において、印刷結果の取得が可能である。
【0020】
図1に示したようにユーザーが第2プリンター100Bに印刷指示を行った場合を考える。ここでの印刷指示は、例えば後述するログイン操作、認証操作である。特許文献1等の従来手法においては、第2プリンター100Bは第1プリンター100Aから印刷ジョブを取得した後、当該印刷ジョブの印刷処理を実行する。しかし、第1プリンター100Aの処理能力に起因して第2プリンター100Bの印刷パフォーマンスを十分に発揮できないおそれがある点、第1プリンター100Aと第2プリンター100Bの機種によっては第2プリンター100Bが印刷を適切に実行できないおそれがある点、が問題となりうる。以下、上記2点についてそれぞれ説明する。
【0021】
まず印刷ジョブ送信側の印刷装置100の処理能力に起因する問題点について説明する。印刷装置100は、サーバーシステムやPCに比べて処理能力が低いケースが多く、負荷が集中した場合、印刷ジョブの転送能力も低下する。例えば、
図1の例において、第1プリンター100Aが、第2プリンター100B以外のプリンターにも印刷ジョブを供給する状況となった場合、第1プリンター100Aから第2プリンター100Bへの印刷ジョブの転送速度が低下する。その場合、第2プリンター100Bの印刷速度に比べて、印刷ジョブの転送速度が低くなり、第2プリンター100Bの印刷パフォーマンスをフルに発揮できない可能性がある。印刷速度とは、例えば単位時間当たりに印刷可能なデータサイズにより表され、転送速度は単位時間当たりに転送可能なデータサイズにより表される。印刷速度>転送速度である場合、実際の印刷速度は転送速度による制限を受けるため、第2プリンター100Bの本来の印刷能力が発揮されない。
【0022】
第1の実施形態に係る印刷装置100は、
図1に示すように、他の印刷装置100と印刷ジョブを共有する印刷装置である。また印刷装置100は、
図2に示すように、他の印刷装置100と通信を行う通信部120と、通信部120の制御を行う処理部110と、印刷ジョブを蓄積する記憶部130と、印刷ジョブに基づいて印刷を行う印刷部140を含む。
【0023】
自身の記憶部130に蓄積されておらず、且つ、他の印刷装置100に蓄積されている印刷ジョブが実行対象ジョブとして決定された場合を考える。
図1の例であれば、印刷処理を実行する印刷装置100は第2プリンター100Bであり、他の印刷装置100は第1プリンター100Aである。この場合、処理部110は、実行対象ジョブを蓄積する他の印刷装置100と、実行対象ジョブを他の印刷装置100に送信した端末装置200のいずれかから、実行対象ジョブを取得する。例えば第2プリンター100Bは、第1プリンター100Aと端末装置200のいずれかから、実行対象ジョブを取得する。
【0024】
端末装置200は、印刷装置100に比べて処理能力が高いケースが多い。端末装置200からの印刷ジョブの取得を可能にすることによって、印刷ジョブの転送速度低下を抑制し、印刷装置100の印刷パフォーマンスを適切に発揮させることが可能になる。
【0025】
ただし、端末装置200は、ラップトップ型のPCや携帯端末装置等、持ち運び可能な装置の場合がある。そのため、電源がオフにされたり、ネットワークとの通信が切断されることによって、印刷ジョブの送信ができなくなるおそれがある。例えばユーザーは、端末装置200から会議資料を印刷するための印刷ジョブを所与の印刷装置100に送信する操作を行った後、会議室への移動のために、当該端末装置200をネットワークから切断するケースが考えられる。つまり、印刷ジョブの取得先を端末装置200に限定してしまうことによって、印刷装置100が印刷ジョブを適切に取得できないおそれが生じる。その点、第1の実施形態に係る印刷装置100は、印刷ジョブを蓄積する他の印刷装置100と、当該印刷ジョブの送信元である端末装置200の両方を、印刷ジョブ取得先の候補とする。このようにすれば、印刷装置100は、状況に応じて適切な機器から印刷ジョブを取得することが可能になる。例えば、端末装置200の電源がオフの場合、第1プリンター100Aから印刷ジョブを取得することが可能である。第1の実施形態の手法によれば、速度と可用性の両方を考慮した印刷装置100を実現することが可能になる。なお、端末装置200から印刷ジョブを取得して印刷するという流れは、一般的な印刷処理と同様であるようにも思える。ただし第1の実施形態における処理は、印刷装置100が、印刷処理の実行にあたって、当該印刷処理に必要な情報を端末装置200から能動的に取得するプル式の処理であるという点で、従来手法とは明確に異なる。
【0026】
ここでの印刷ジョブとは、印刷装置100が一度の印刷処理を実行する際に用いられるデータの集合を表す。印刷ジョブは、当該印刷ジョブを一意に識別するための識別情報と、印刷対象となる印刷画像データと、を少なくとも含む。なお、
図4を用いて後述するように、端末装置200のプリンタードライバー202は、元データをページ記述言語(PDL:page description language)等を用いて記述された別形式の印刷データに変換する処理を行ってもよい。端末装置200は、変換前の元データを蓄積する。印刷装置100は、変換後の印刷データを受信、解析した後、解析処理結果を蓄積する。即ち、同じ印刷ジョブであっても、状況に応じてデータ形式が異なる場合がある。第1の実施形態、第2の実施形態、及びそれらの変形例における印刷ジョブとは、上記元データ、印刷データ、印刷データの解析処理結果等、種々のデータ形式の情報を含むものとする。
【0027】
また、
図1に示す手法に対する比較例として、サーバーシステムを用いる手法が考えられる。比較例においては、端末装置200からの印刷ジョブはサーバーシステムに集約される。サーバーシステムは、ユーザーによる印刷操作が行われた印刷装置100に、当該ユーザーに対応する印刷ジョブを送信する。このような比較例においては、印刷装置100に比べて処理能力の高いサーバーシステムが印刷ジョブの取得先となるため、転送速度の低下が生じにくい。ただしこの比較例は、サーバーシステムの導入、運用のためのコストがかかってしまう。また、サーバーシステムが故障した場合、全ての印刷装置100において印刷が実行できなくなってしまう。この点を考慮し、第1の実施形態に係る印刷装置100を含む印刷システム10は、サーバーシステムを含まないシステムを考える。
【0028】
次に、印刷ジョブ送信側の印刷装置100と、印刷実行側の印刷装置100との機種によって生じうる問題について説明する。
図1において、第1プリンター100A~第5プリンター100Eの全てが同一の機種であれば、印刷装置100のハードウェア構成、用いられるインクやトナーの特性、利用可能な印刷設定等が共通である。即ち、所与の印刷装置100に蓄積された印刷ジョブは、他の印刷装置100において流用可能であるため、印刷ジョブの共有が容易である。
【0029】
しかし異なる機種が混在する場合、所与の印刷装置100に蓄積された印刷ジョブを、他の印刷装置100における印刷処理に用いたのでは、所望の結果が得られないケースがある。即ち、印刷ジョブの共有を無条件に許可することによって、所望の印刷結果を得られないおそれがある。一方、機種の異なる印刷装置100の間での印刷ジョブの共有を一律に禁止した場合、不適切な印刷処理が行われることは抑制できるものの、印刷ジョブを共有できる蓋然性が低下するため、利便性が損なわれてしまう。
【0030】
第2の実施形態に係る印刷装置100は第1の実施形態と同様に、他の印刷装置100と印刷ジョブを共有する印刷装置である。印刷装置100は、
図2に示すように、他の印刷装置100と通信を行う通信部120と、通信部120の制御を行う処理部110と、印刷ジョブを蓄積する記憶部130と、印刷ジョブに基づいて印刷を行う印刷部140を含む。
【0031】
処理部110は、当該処理部110を含む印刷実行側の印刷装置100と、他の印刷装置100が同一機種であるか否かを判定する。同一機種でないと判定された場合、処理部110は以下の第1判定、第2判定及び第3判定の少なくとも1つの判定に基づいて、他の印刷装置100が蓄積する印刷ジョブを、自身の印刷部140が印刷可能であるか否かを判定する。第1判定は、他の印刷装置100が蓄積する印刷ジョブが、機種依存の印刷設定を含むか否かの判定である。第2判定は、他の印刷装置100が蓄積する印刷ジョブの印刷画像の回転処理に関する判定である。第3判定は、他の印刷装置100が蓄積する印刷ジョブの印刷画像のデータ形式に関する判定である。
【0032】
このようにすれば、第1判定~第3判定という適切な判定条件に基づいて、異なる機種間の印刷ジョブの共有を許可することが可能になる。即ち、不適切な印刷処理が実行されることを抑制しつつ、印刷ジョブを可能な限り共有することによって利便性を向上させることが可能になる。
【0033】
また上述したように、
図1に示す手法に対する比較例として、サーバーシステムを用いる手法が考えられる。このような比較例においては、印刷ジョブの送信元であるサーバーシステムにおいて、印刷実行側の印刷装置100に合わせたデータ形式の変換等が可能であるため、異なる機種間の連携が比較的容易である。ただし上述した通り、サーバーシステムの導入、運用のためのコスト、及び故障リスクを考慮し、第2の実施形態に係る印刷装置100を含む印刷システム10は、サーバーシステムを含まないシステムを考える。
【0034】
以下、第1の実施形態、第2の実施形態についてそれぞれ説明する。その後、第1の実施形態と第2の実施形態の組み合わせを含めたいくつかの変形実施について説明する。
【0035】
2.第1の実施形態
第1の実施形態について説明する。具体的には、全体処理について説明した後、各処理の詳細を説明していく。
【0036】
2.1 処理の流れ
図3は、第1の実施形態の印刷装置100を含む印刷システム10における処理を説明するフローチャートである。この処理が開始されると、まず端末装置200において印刷操作が実行され、所与の印刷装置100の記憶部130に印刷ジョブが蓄積される(S101)。以下、印刷ジョブを蓄積する印刷装置100が第1プリンター100Aである例について説明する。
【0037】
次に、ユーザーが印刷実行を望む印刷装置100に印刷を指示する。以下、印刷処理の実行主体となる印刷装置100が第2プリンター100Bである例について説明する。具体的には、ユーザーは第2プリンター100Bにおいて認証操作を行う。認証操作は、所与の認証カードをカードリーダーにかざす操作であってもよいし、第2プリンター100BのタッチパネルにおいてユーザーID、パスワード等の認証情報を入力する操作であってもよい。認証操作は、ログイン操作を言い換えることが可能である。第2プリンター100Bは、認証処理を行い、ユーザーが正規ユーザーであると判定された場合に、印刷に関する具体的な処理に移行する。認証印刷については広く知られているため、詳細な説明は省略する。なお、印刷原稿の持ち去り、取り違え等を考慮すれば認証印刷を行うことが望ましいが、本実施形態において認証印刷は必須の構成ではなく、省略が可能である。
【0038】
第2プリンター100Bは、自身の記憶部130、及びネットワークを介して通信可能な他の印刷装置100から印刷ジョブに関する情報を取得し、印刷ジョブを選択するためのジョブ選択画面を表示部150に表示する(S102)。なお、ここではジョブ選択画面を表示できればよいため、第2プリンター100Bが取得する情報は、印刷ジョブの一部の情報とすることが可能である。例えば
図6を用いて後述するように、S102の処理においては、印刷において必須となる印刷画像データを取得する必要はない。
【0039】
第2プリンター100Bは、ユーザーによる実行対象ジョブの選択入力を受け付けることによって、実行対象ジョブを決定した後、当該実行対象ジョブの印刷処理を実行する(S103)。第1の実施形態においては、第2プリンター100Bは、第1プリンター100Aと、端末装置200のいずれかから、実行対象ジョブを取得し、取得した実行対象ジョブの印刷を実行する。
【0040】
2.2 印刷ジョブの蓄積
図3のS101に示した印刷ジョブの蓄積処理について詳細に説明する。
図4は、印刷ジョブの蓄積処理を説明する模式図であり、
図5は印刷ジョブの蓄積処理の流れを説明するシーケンス図である。
【0041】
ユーザーは、端末装置200のアプリケーションソフトウェア201において印刷操作を行う(S201)。アプリケーションソフトウェア201は、端末装置200のOS(Operating System)上で動作可能であり、且つ、印刷操作を実行可能な任意のソフトウェアである。具体的には、端末装置200は、不図示のプロセッサーとメモリーを含む。そしてアプリケーションソフトウェア201は、メモリーに記憶される。プロセッサーがアプリケーションソフトウェア201に従って動作することによって、印刷操作を含むアプリケーションソフトウェア201の各機能が実現される。
【0042】
上記印刷操作に基づいて、端末装置200のプリンタードライバー202は、印刷データを生成し、スプール204に保存する(S202)。ここでの印刷データは、印刷ジョブの識別情報、及び印刷ジョブを作成したユーザーを表すユーザー情報を含む。印刷データは、第1プリンター100Aにおいて解釈処理が行われることによって、印刷設定情報及び印刷画像データを含むデータに変換可能である。
【0043】
スプール204に保存された印刷データは、ポートモニター205等のインターフェースを経由して、第1プリンター100Aに送信される(S203)。スプール204は、端末装置200のメモリーである。ポートモニター205は、端末装置200に含まれる印刷装置100用の通信インターフェースである。プリンタードライバー202は、端末装置200のOS上で動作可能なソフトウェアである。プリンタードライバー202は、端末装置200のメモリーに記憶され、端末装置200のプロセッサーがプリンタードライバー202に従って動作することによって、印刷データの生成処理を含むプリンタードライバー202の各機能が実現される。
【0044】
第1プリンター100Aは、端末装置200から印刷データを受信し、処理部110において印刷言語の解析処理を行った後、解析処理結果を記憶部130に蓄積する(S204)。
【0045】
また、端末装置200は、ページごとの印刷画像データと、印刷ジョブの識別情報を、自身のジョブプール203に保存する(S205)。ジョブプール203は、端末装置200のメモリーである。ジョブプール203とスプール204は、同じメモリーであってもよいし、異なるメモリーであってもよい。
【0046】
図4において、端末装置200のジョブプール203に蓄積される情報、及び第1プリンター100Aの記憶部130に記憶される情報は、いずれも印刷ジョブに対応する。印刷ジョブは、
図4に示すように、当該印刷ジョブの識別情報、印刷設定情報、及び印刷画像データを含む。識別情報を含むことによって、端末装置200及び各印刷装置100において、印刷ジョブを混同することなく、適切な処理を実行可能である。また、印刷画像データは、印刷対象となる画像を特定する情報である。印刷設定情報は、印刷用紙のサイズ、カラー/モノクロ設定、両面/片面印刷設定等の情報を含む。また、印刷設定情報は、第2の実施形態において後述するように、他の設定に関する情報を含んでもよい。印刷ジョブが印刷設定情報及び印刷画像データを含むことによって、所望の画像を所望の設定を用いて印刷することが可能になる。
【0047】
また、他の印刷装置100である第1プリンター100Aに記憶される印刷ジョブは、当該印刷ジョブの送信元である端末装置200を特定する情報を含む。端末装置200を特定する情報は、例えば、印刷ジョブの送信元である端末装置200のアドレスを表す送信元アドレスである。送信元アドレスは、狭義には端末装置200のIPアドレス(Internet Protocol address)であるが、MACアドレス等の他のアドレスを用いてもよい。また、端末装置200を特定する情報はアドレスに限定されず、機器固有の他の情報を用いてもよい。印刷ジョブが、送信元である端末装置200を特定する情報を含むことによって、印刷実行側の印刷装置100は、印刷ジョブの取得先として端末装置200を選択することが可能になる。例えば、第2プリンター100Bが、第1プリンター100Aに蓄積された印刷ジョブを実行対象ジョブとして決定した場合に、当該実行対象ジョブを端末装置200から取得することが可能になる。
【0048】
また、他の印刷装置100である第1プリンター100Aに記憶される印刷ジョブは、印刷ジョブを作成したユーザーを特定するユーザー情報を含む。印刷ジョブがユーザー情報を含むことによって、認証印刷が可能になり、印刷結果の持ち去りや取り違えを抑制できる。ユーザー情報は、例えばプリンタードライバー202による印刷データの生成時に付加される情報である。
【0049】
2.3 ジョブ選択画面表示及び選択受け付け
図3のS102に示した印刷ジョブに関する情報の取得処理、及びジョブ選択画面の表示処理について詳細に説明する。
図6は、印刷ジョブに関する情報の取得処理及びジョブ選択画面の表示処理を説明する模式図であり、
図7は当該処理の流れを説明するシーケンス図である。
【0050】
ユーザーは、印刷実行を希望する印刷装置100である第2プリンター100Bにおいて、ログイン操作を実行する(S301)。S301のログイン操作とは、例えば上述した通り、カードリーダーに認証カードをかざす認証操作である。
【0051】
第2プリンター100Bは、印刷ジョブを共有する印刷装置100である第1プリンター100A、第3プリンター100C、第4プリンター100D、第5プリンター100Eに、ログインしたユーザーの印刷ジョブが存在するか否かを問い合わせる。広義には、ログインが行われた印刷装置100は、印刷ジョブの共有グループに含まれる自分以外の印刷装置100に問い合わせを行う(S302)。S302の処理において、第2プリンター100Bは、ログインしたユーザーを表すユーザー情報をキーとして、問い合わせを行う。
【0052】
第2プリンター100B以外の各プリンターは、対象ユーザーの印刷ジョブを蓄積していた場合、当該印刷ジョブに関する情報を回答する(S303)。具体的には、第2プリンター100Bからユーザー情報を取得し、印刷ジョブに含まれるユーザー情報が、取得したユーザー情報に合致すると判定された印刷ジョブに関する情報を回答する。なお、S303の処理において、第2プリンター100B以外の各プリンターが印刷画像データを含む印刷ジョブを回答すると、各プリンターの負荷が大きくなってしまう。よって
図6に示すように、S303の処理において、第2プリンター100Bは、印刷ジョブのうち少なくとも印刷画像データを除いたデータを取得する。
【0053】
具体的には、第2プリンター100Bは、印刷ジョブを一意に識別する必要があるため、印刷ジョブの識別情報を取得する。また第2プリンター100Bは、送信元の端末装置200から印刷ジョブを取得する場合を想定し、送信元アドレスを取得する。後述する第2の実施形態においては、第2プリンター100Bは、各印刷ジョブが印刷可能であるか否かを判定するために、印刷設定情報を取得する必要がある。ただし、本実施形態においては、S303の時点での印刷設定情報の取得は省略可能である。また、ユーザー情報は第2プリンター100B以外の各プリンターにおけるユーザー照合処理で用いられる情報であり、第2プリンター100Bはユーザー情報の取得を省略可能である。ただし、他のプリンターから全ての印刷ジョブに関する情報を取得し、第2プリンター100Bにおいてユーザー情報が合致するか否かの照合処理を行ってもよい。その場合、第2プリンター100Bは他のプリンターからユーザー情報を取得する必要がある。
【0054】
なお、後述する第2の実施形態においては、第2プリンター100Bは、各印刷ジョブ印刷画像データのデータ形式に関する第3判定を行う場合がある。そのため、S303の処理において、第2プリンター100Bは、印刷ジョブの印刷画像データを取得することも妨げられない。ただし、各プリンターの負荷を考慮すれば、第2プリンター100Bは、印刷画像データ全体を取得することは好ましくない。例えば第2プリンター100Bは、S303の処理において、印刷画像データのデータ形式を表すメタデータ、或いは、印刷画像データのうちの一部のデータを取得する。
【0055】
また第2プリンター100Bは、自身の記憶部130からも印刷ジョブの情報を取得する(S304)。端末装置200から印刷ジョブが送信される印刷装置100と、ユーザーがログインする印刷装置100が一致するケースも十分考えられるためである。
【0056】
印刷ジョブに関する情報の取得後、第2プリンター100Bは、取得した印刷ジョブから、印刷対象となる実行対象ジョブをユーザーに選択させるための画面を、表示部150に表示する(S305)。即ち、印刷装置100の処理部110は、記憶部130に蓄積された印刷ジョブに関する情報、及び、他の印刷装置100に蓄積された印刷ジョブに関する情報を取得し、取得した情報に基づいてジョブ選択画面を表示部150に表示する処理を行う。ジョブ選択画面は、例えば取得した印刷ジョブを一覧表示する画面である。ただし、ジョブ選択画面は、1又は複数の印刷ジョブを実行対象ジョブとして選択可能な画面であればよく、一覧表示画面に限定されない。ジョブ選択画面を表示することによって、ユーザーに実行対象ジョブの選択を促すことが可能になる。
【0057】
なお、処理部110は、通信部120による他の印刷装置100との通信が可能か否かを、定期的に判定してもよい。そして処理部110は、通信不能と判定された他の印刷装置100を、印刷ジョブに関する情報の取得対象から除外する処理を行う。このようにすれば、通信不能な印刷装置100に対して印刷ジョブに関する情報を要求することを抑制できる。例えば、通信不能な印刷装置100に対して印刷ジョブに関する情報の取得要求を行ってしまうと、タイムアウトが検出されるまで待つことになるため、S301のユーザーのログインから、S305のジョブ選択画面の表示までの時間が長くなりユーザーにストレスを与えるおそれがある。その点、バックグラウンドで予め各印刷装置100の状態を確認しておくことによって、S302の処理対象を通信可能な印刷装置100に限定できるため、ログインからジョブ選択画面の表示までの時間を短くすることが可能になる。
【0058】
2.4 印刷データの取得及び印刷処理
本実施形態の印刷装置100は、実行対象ジョブを端末装置200から取得してもよいし、他の印刷装置100から取得してもよい。具体的な手法は2通り考えられる。例えば印刷装置100の処理部110は、他の印刷装置100と、端末装置200のいずれから、実行対象ジョブを取得するかの決定処理を行う。この場合、処理部110は、決定されたいずれか一方の装置から、実行対象ジョブを取得する処理を行う。或いは処理部110は、他の印刷装置100及び端末装置200の両方に実行対象ジョブの取得要求を送信する。決定処理を行う手法においては、取得対象が一方の装置となるため、通信帯域を圧迫せず、取得処理をシンプルにできるという利点がある。一方、両方に取得要求を送信する処理は、例えば一方の機器が通信不可能の状態であってもタイムアウトを待つ必要が無いため、実行対象ジョブを高速に取得可能という利点がある。以下、それぞれの手法について詳細に説明する。
【0059】
2.4.1 いずれか一方の装置に取得要求を送信
いずれの装置から実行対象ジョブを取得するかの決定処理を行う手法について説明する。
図8は、決定処理を行う場合における、S103の印刷処理の流れを説明するシーケンス図である。
【0060】
まず第2プリンター100Bの処理部110は、ジョブ選択画面においてユーザーからの選択入力を受け付ける。そして処理部110は、選択された印刷ジョブを、実行対象ジョブとして決定する(S401)。このようにすれば、ジョブ選択画面を用いて適切に実行対象ジョブを決定することが可能になる。
【0061】
処理部110は、第1プリンター100Aと端末装置200のいずれから、実行対象ジョブを取得するかの決定処理を行う(S402)。S402の処理の詳細は、
図11を用いて後述する。
【0062】
端末装置200から実行対象ジョブを取得するという決定処理が行われた場合、第2プリンター100Bは、端末装置200に実行対象ジョブの取得要求を送信し(S403)、端末装置200は実行対象ジョブを返信する(S404)。
【0063】
図9は、S403及びS404の処理を説明する模式図である。
図9に示すように、第2プリンター100Bは、ジョブ選択画面に基づいて決定された実行対象ジョブの識別情報を特定し、当該識別情報を含む取得要求を端末装置200に送信する。端末装置200の印刷データサービス206は、取得した識別情報に紐付けられた印刷設定情報及び印刷画像データを、ジョブプール203から取得する。そして印刷データサービス206は、取得した印刷設定情報及び印刷画像データに基づいて印刷データを生成し、生成した印刷データを第2プリンター100Bに送信する。
【0064】
ここで、印刷データサービス206は、端末装置200のOS上で動作可能なソフトウェアである。印刷データサービス206は、端末装置200のメモリーに記憶され、端末装置200のプロセッサーが印刷データサービス206に従って動作することによって、印刷データの生成処理を含む印刷データサービス206の各機能が実現される。ここでの印刷データは、例えば、第2プリンター100Bにおいて解釈可能なページ記述言語によって記述されたデータである。印刷データを生成するという点で、印刷データサービス206とプリンタードライバー202は同様の機能を有するため、同じソフトウェアとして実現されてもよい。ただし、プリンタードライバー202はアプリケーションソフトウェア201からの情報に基づいて印刷データを生成するのに対して、印刷データサービス206は、ジョブプール203からの情報に基づいて印刷データを生成するという点で相違する。そのため、印刷データサービス206とプリンタードライバー202は、異なるソフトウェアとして実現されてもよい。
【0065】
第2プリンター100Bは、端末装置200から印刷データを受信し、処理部110において印刷言語の解析処理を行った後、解析処理結果を印刷部140を用いて印刷することによって、印刷結果をユーザーに提供する(S407)。
【0066】
以上のように、端末装置200から実行対象ジョブを取得する場合、端末装置200側で第2プリンター100Bに合わせた印刷データを生成することが可能である。そのため、最初に実行対象ジョブを取得した第1プリンター100Aと、第2プリンター100Bが異なる機種であっても、適切に印刷を実行することが可能になる。換言すれば、端末装置200から実行対象ジョブを取得可能とすることによって、印刷パフォーマンスの低減抑制だけでなく、異なる機種間の連携を容易にすることも可能である。
【0067】
一方、他の印刷装置100である第1プリンター100Aから実行対象ジョブを取得する場合、第2プリンター100Bは、第1プリンター100Aに実行対象ジョブの取得要求を送信し(S405)、端末装置200は実行対象ジョブを返信する(S406)。
【0068】
図10は、S405及びS406の処理を説明する模式図である。
図10に示すように、第2プリンター100Bは、ジョブ選択画面に基づいて決定された実行対象ジョブの識別情報を特定し、当該識別情報を含む取得要求を第1プリンター100Aの印刷画像送信処理部111に送信する。印刷画像送信処理部111は、例えば第1プリンター100Aの処理部110に含まれる。第1プリンター100Aの印刷画像送信処理部111は、取得した識別情報に紐付けられた印刷設定情報及び印刷画像データを、自身の記憶部130から取得する。そして印刷画像送信処理部111は、取得した印刷設定情報及び印刷画像データを第2プリンター100Bに送信する。
【0069】
第2プリンター100Bは、第1プリンター100Aから印刷設定情報及び印刷画像データである印刷ジョブを受信し、受信した印刷ジョブを印刷部140を用いて印刷することによって、印刷結果をユーザーに提供する(S407)。
【0070】
以上のように、他の印刷装置100である第1プリンター100Aから実行対象ジョブを取得する場合、実行対象ジョブとは、第1プリンター100A用の印刷データに対して、第1プリンター100Aにおいて解析処理が行われた結果に相当する。そのため、第1プリンター100Aと第2プリンター100Bが同一機種でない場合、所望の印刷結果が取得できない場合がある。
【0071】
図8に戻って説明を続ける。第2プリンター100Bの処理部110は、印刷部140が実行対象ジョブの印刷処理を完了したと判定した場合、即ち、S407の処理後に、他の印刷装置100である第1プリンター100A、及び端末装置200に実行対象ジョブの削除要求を送信する(S408、S409)。S408及びS409の削除要求は、実行対象ジョブの識別情報と紐付けて送信される。
【0072】
端末装置200は、指定された識別情報に紐づけられた印刷ジョブをジョブプール203から削除する。また第1プリンター100Aは、指定された識別情報に紐づけられた印刷ジョブを、自身の記憶部130から削除する。このようにすれば、所与の印刷ジョブの印刷処理が完了した場合に、当該印刷ジョブを蓄積する各機器に、適切に印刷ジョブの削除を実行させることが可能になる。
【0073】
なお、本実施形態の手法は、例えば第2プリンター100Bである印刷装置100と、例えば第1プリンター100Aである他の印刷装置100と、端末装置200と、を含む印刷システム10に適用できる。
図4に示したように、端末装置200は、他の印刷装置100に印刷ジョブを送信した場合、送信した印刷ジョブを端末装置200の記憶部に蓄積する。記憶部は例えばジョブプール203である。ジョブプール203に蓄積される情報と、第1プリンター100Aに送信される印刷データが異なる形式であってもよく、本実施形態ではいずれの情報も印刷ジョブと表現する点は上述した通りである。
【0074】
そして端末装置200は、再起動が行われた場合、他の印刷装置100から当該他の印刷装置100が蓄積する印刷ジョブに関する情報を取得する。そして、端末装置200から送信された印刷ジョブを他の印刷装置100が蓄積していない場合、端末装置200の記憶部から、他の印刷装置100に送信した印刷ジョブを削除してもよい。
【0075】
上述したように、端末装置200は、印刷装置100に比べて電源がオフになったり、ネットワークから切断される蓋然性が高い。そのため端末装置200は、S408に示す削除要求を受信できないおそれがある。印刷が完了した印刷ジョブを削除できないと、端末装置200が必要性の低いデータをジョブプール203に蓄積し続けることになるため好ましくない。その点、端末装置200が所与のタイミングで印刷ジョブの送信先である印刷装置100に問い合わせを行うことによって、当該印刷ジョブの印刷が完了したか否かを判定できる。印刷装置100から印刷ジョブが削除されていれば、当該印刷ジョブの印刷は完了したと判定できるため、端末装置200は自身のジョブプール203から当該印刷ジョブを削除する。なお、削除要求を受信できない典型的な状況としては、電源オフのケースが考えられるため、端末装置200の再起動時に印刷装置100に問い合わせを行うことによって、適切なタイミングで印刷ジョブを削除するか否かを判定できる。また、端末装置200は定期的に再起動が行われる蓋然性が高く、再起動時に削除判定を行うことによって、印刷が完了したジョブが長期間削除されずに放置されることを抑制可能である。
【0076】
図11は、
図8のS402~S409に対応する第2プリンター100Bの処理を説明するフローチャートである。この処理が開始されると、第2プリンター100Bの処理部110は、実行対象ジョブが自身の記憶部130に蓄積された印刷ジョブであるか否かを判定する(S501)。S501でYesの場合、ユーザーは印刷ジョブを送信した印刷装置100において、印刷操作を行ったことになる。第2プリンター100Bは、他の装置から実行対象ジョブを取得する必要がないため、自身の記憶部130から実行対象ジョブを取得し、取得した実行対象ジョブを印刷する(S502)。その後、処理部110は、記憶部130から実行対象ジョブを削除する(S503)。また、実行対象ジョブの送信元である端末装置200に、対応する印刷ジョブの削除要求を送信し(S512)、処理を終了する。
【0077】
S501でNoの場合、第2プリンター100Bの処理部110は、実行対象ジョブを他の印刷装置100から取得可能であるか否かを判定する(S504)。ここでは第1プリンター100Aを他の印刷装置100とする。本実施形態において、S504の判定は、第1プリンター100Aと第2プリンター100Bが同一機種であるか否かの判定である。同一機種の場合、第2プリンター100Bの処理部110は、第1プリンター100Aに蓄積された印刷ジョブを、自身の印刷部140において印刷可能と判定する。
【0078】
第1プリンター100Aからの実行対象ジョブの取得及び印刷が可能であると判定された場合(S504でYes)、第2プリンター100Bの処理部110は、第1プリンター100Aの転送能力を表す情報を取得する(S505)。転送能力とは、印刷ジョブの供給能力と言い換えてもよい。転送能力を表す情報とは、具体的には第1プリンター100Aが第2プリンター100Bに印刷ジョブを転送する転送速度を表すパラメーターである。第1プリンター100Aの転送速度は、第1プリンター100Aの最大通信速度、第1プリンター100Aが第2プリンター100B以外の機器との間で既に行っている通信の通信速度、第1プリンター100Aの記憶部130からのデータの読み取り速度、第1プリンター100Aの処理部110の処理速度等、種々の要因に基づいて決定される。第1プリンター100Aは、これらを表すパラメーターを取得し、当該パラメーターに基づいて、第1プリンター100Aから第2プリンター100Bへの実行対象ジョブの予想転送速度を表すパラメーターを演算する。或いは、予想転送速度を第1プリンター100A側で演算し、第2プリンター100Bは当該演算の結果を表すパラメーターを取得してもよい。
【0079】
また第2プリンター100Bの処理部110は、自身の印刷部140の印刷速度を表すパラメーターを取得する。印刷速度を表すパラメーターとは、単位時間当たりに印刷可能なデータサイズを表す情報であり、例えば仕様として決定されている最大印刷速度である。そして処理部110は、印刷部140による実行対象ジョブの印刷速度を表すパラメーターと、他の印刷装置100による実行対象ジョブの転送速度を表すパラメーターとに基づいて、他の印刷装置100と端末装置200のいずれから実行対象ジョブを取得するかの決定処理を行う。このようにすれば、各印刷装置100の能力に基づいて、実行対象ジョブの取得要求を行う機器を決定することが可能になる。
【0080】
具体的には、第1プリンター100Aからの転送速度<第2プリンター100Bの印刷速度であるか否かを判定する(S506)。S506においてNoの場合、第1プリンター100Aからの実行対象ジョブの転送速度が印刷のボトルネックとならず、第2プリンター100Bの印刷パフォーマンスを十分発揮可能である。よって処理部110は、実行対象ジョブを第1プリンター100Aから取得し、取得した実行対象ジョブを印刷する(S507)。
【0081】
印刷完了後、処理部110は、第1プリンター100Aと端末装置200に、それぞれ実行対象ジョブの削除要求を送信した後(S511、S512)、処理を終了する。
【0082】
機種が異なるため第1プリンター100Aに蓄積された実行対象ジョブを第2プリンター100Bにおいて印刷できない場合(S504でNo)、処理部110は、実行対象ジョブを端末装置200から取得し、取得した実行対象ジョブを印刷する(S508)。第1プリンター100Aからの転送速度が要因で印刷パフォーマンスが低下する場合(S506でYes)も同様に、処理部110は、実行対象ジョブを端末装置200から取得し、取得した実行対象ジョブを印刷する。
【0083】
ただし端末装置200は、実行対象ジョブを要求した際に、電源がオフであったり、ネットワークから切断されている場合がある。或いは、端末装置200は、実行対象ジョブの転送途中の段階で電源がオフにされる、或いはネットワークから切断されるおそれもある。よってS508の処理を行う場合、処理部110は、実行対象ジョブを全て正常に受信できたか、或いは通信エラーが発生したかを判定する(S509)。通信エラーが発生しなかった場合(S509でNo)、印刷が正常に完了しているため、処理部110は、第1プリンター100Aと端末装置200に印刷ジョブの削除要求を送信し(S511、S512)、処理を終了する。
【0084】
通信エラーが発生した場合(S509でYes)、処理部110は、第1プリンター100Aに蓄積された実行対象ジョブを自身の印刷部140で印刷可能か否かを判定する(S510)。S510の判定は、S504における判定結果を流用可能である。印刷可能と判定された場合(S510でYes)、処理部110は、実行対象ジョブを第1プリンター100Aから取得し、取得した実行対象ジョブを印刷する(S507)。印刷できないと判定された場合(S510でNo)、いずれの装置からも適切に実行対象ジョブを取得できないため、通信エラーを理由として、処理を異常終了する。
【0085】
以上のように、第2プリンター100Bの処理部110は、端末装置200から実行対象ジョブを取得可能か否か判定し、取得できないと判定された場合、他の印刷装置100である第1プリンター100Aから実行対象ジョブを取得する。具体的には、S509及びS510でYesと判定されることによって、S507の処理に移行する。このようにすれば、端末装置200から実行対象ジョブを取得できない場合にも、当該実行対象ジョブの印刷処理を継続することが可能になる。
【0086】
また、第2プリンター100Bの処理部110は、他の印刷装置100である第1プリンター100Aから実行対象ジョブが取得できないと判定された場合に、エラー処理を実行する。具体的にはS510でNoと判定された場合に、処理を異常終了する。このようにすれば、第1プリンター100Aと端末装置200のいずれからも実行対象ジョブを取得できない場合に、適切にエラー処理を実行することが可能になる。なお、エラー処理は単純にはエラーの内容をユーザーに報知する処理であるがこれには限定されない。例えば、第3プリンター100C~第5プリンター100E等の他の印刷装置100における印刷をユーザーに促す報知処理であってもよい。ただし、S504及びS510に示したように、印刷を指示する印刷装置100は、第1プリンター100Aと同一機種である必要がある。よってここでのエラー処理は、第1プリンター100Aと同一機種での印刷をユーザーに促す報知処理とすることが望ましい。報知処理は、「第1プリンター100Aと同一機種のプリンターで印刷してください」というテキストの表示であってもよい。或いは、報知処理は具体的に印刷装置100を特定する「第xプリンターで印刷してください」といったテキストの表示であってもよい。また、報知処理はテキストの表示に限定されず、種々の変形実施が可能である。
【0087】
また、以上の説明では、S504のタイミングにおいて、第1プリンター100Aに蓄積された印刷ジョブを第2プリンター100Bの印刷部140が印刷可能であるか否か、即ち、第1プリンター100Aと第2プリンター100Bが同一機種であるか否かを判定した。しかし処理の流れはこれに限定されない。例えば第2プリンター100Bは、ジョブ選択画面を表示する際に、各印刷装置と第2プリンター100Bが同一機種か否かを判定してもよい。そして第2プリンター100Bは、収集した印刷ジョブに関する情報のうち、第2プリンター100Bと同一機種の印刷装置100から取得した印刷ジョブに関する情報のみを、ジョブ選択画面における表示対象とする。このようにすれば、ジョブ選択画面で選択される実行対象ジョブは、第2プリンター100Bの印刷部140において印刷可能な印刷ジョブに限定される。この場合、
図11のフローチャートは、S504及びS510のステップが省略される。S501においてNoと判定された場合、S505の処理が行われる。S509においてYesと判定された場合、S507の処理が行われる。
【0088】
2.4.2 両方の装置に取得要求を送信
次に、第2プリンター100Bの処理部110が、第1プリンター100Aと端末装置200の両方に実行対象ジョブの取得要求を送信する手法について説明する。
図12は、第1プリンター100Aと端末装置200の両方に実行対象ジョブの取得要求を送信する場合における、S103の印刷処理の流れを説明するシーケンス図である。
【0089】
まず第2プリンター100Bの処理部110は、ジョブ選択画面においてユーザーからの選択入力を受け付ける。そして処理部110は、選択された印刷ジョブを、実行対象ジョブとして決定する(S601)。
【0090】
処理部110は、第1プリンター100Aに蓄積された印刷ジョブを自身の印刷部140において印刷可能であるか否かを判定する(S602)。この処理は、S504と同様に、第1プリンター100Aと第2プリンター100Bが同一機種であるか否かの判定である。
【0091】
印刷できないと判定された場合、第1プリンター100Aから実行対象ジョブを取得する意義がない。第2プリンター100Bは、端末装置200に実行対象ジョブの取得要求を送信し(S603)、端末装置200は実行対象ジョブを返信する(S604)。S603及びS604の処理は、
図8のS403及びS404、
図9に示した通りである。なお、
図12では省略しているが、端末装置200との通信がエラーとなった場合、第2プリンター100Bは、エラー処理を行う。また、実行対象ジョブ取得後の処理であるS611~S613は、
図8のS407~S409と同様である。
【0092】
印刷可能である場合、第2プリンター100Bは、端末装置200と第1プリンター100Aの両方に実行対象ジョブの取得要求を送信する(S605、S606)。端末装置200が取得要求を正常に受信した場合、
図9に示したように、ジョブプール203からの情報の読み出し処理、印刷データの生成処理、第2プリンター100Bへの送信処理が行われる。第1プリンター100Aが取得要求を正常に受信した場合、
図10に示したように、記憶部130の情報の読み出し処理、第2プリンター100Bへの送信処理が行われる。
【0093】
ただし、端末装置200から送信される情報と、第1プリンター100Aから送信される情報は、データ形式は異なるかもしれないが同じ印刷ジョブを表す情報である。そのため、第2プリンター100Bが両方の装置からの実行対象ジョブ取得を継続した場合、データが重複してしまい非効率である。また第1プリンター100Aからの実行対象ジョブの取得が継続されることによって、第1プリンター100Aの負荷が増大してしまう。
【0094】
よって第2プリンター100Bの処理部110は、端末装置200による実行対象ジョブの転送が開始された場合(S607)、他の印刷装置100である第1プリンター100Aからの実行対象ジョブの取得処理を停止する(S608)。このようにすれば、実行対象ジョブの重複取得を抑制できる。その際、第1プリンター100Aの通信を切断することによって、転送能力の高い端末装置200から実行対象ジョブを取得することが可能である。
【0095】
一方、端末装置200から実行対象ジョブを取得できない場合、第2プリンター100Bと端末装置200との間の通信は、タイムアウトとなり、第2プリンター100Bの通信部120には通信エラーが返される(S610)。この場合、第1プリンター100Aからの実行対象ジョブの取得が継続される。具体的には、第2プリンター100Bは、第1プリンター100Aから印刷設定情報及び印刷画像データである実行対象ジョブを取得する(S609)。S606及びS609の処理は、
図8のS405及びS406、
図10に示した通りである。実行対象ジョブ取得後の処理であるS611~S613は、
図8のS407~S409と同様である。
【0096】
図13は、
図12のS602~S613に対応する第2プリンター100Bの処理を説明するフローチャートである。S701~S704の処理は、
図11のS501~S504と同様である。
【0097】
第1プリンター100Aからの実行対象ジョブの取得及び印刷が可能であると判定された場合(S704でYes)、第2プリンター100Bの処理部110は、第1プリンター100Aと端末装置200の両方に印刷ジョブの取得要求を送信する(S705)。S705の処理後、第2プリンター100Bは、端末装置200から実行対象ジョブの取得が開始されたか否かを判定する(S706)。
【0098】
S706においてYesの場合、実行対象ジョブの重複取得を避けるため、及び第1プリンター100Aの負荷を軽減するため、第2プリンター100Bは第1プリンター100Aとの接続を切断する(S707)。即ち、第1プリンター100Aは、端末装置200から実行対象ジョブを取得し、取得した実行対象ジョブを印刷する(S708)。
【0099】
S708においては、端末装置200からの実行対象ジョブの取得が開始されているが、実行対象ジョブの取得を完了するまで端末装置200との接続が維持されることは保証されていない。よって処理部110は、実行対象ジョブの受信が完了するまでの間に通信エラーが発生したか否かを判定する(S709)。
【0100】
S709でNoの場合、端末装置200からの実行対象ジョブの取得、及び取得した実行対象ジョブの印刷が正常に完了したため、第2プリンター100Bは、第1プリンター100Aと端末装置200に実行対象ジョブの削除要求を送信した後(S713、S714)、処理を終了する。
【0101】
S709でYesの場合、端末装置200からの実行対象ジョブの取得が正常終了しなかったと判定される。第2プリンター100Bの処理部110は、端末装置200による実行対象ジョブの転送がエラーになった場合、他の印刷装置100である第1プリンター100Aに実行対象ジョブの取得要求を送信する(S710)。このようにすれば、実行対象ジョブの取得途中に端末装置200との通信がエラーになった場合にも、実行対象ジョブの取得を継続することが可能になる。
【0102】
S706でNoの場合、又は、S710の処理が行われた場合、第2プリンター100Bは、第1プリンター100Aからの実行対象ジョブの取得を完了し、取得した実行対象ジョブを印刷する(S711)。印刷完了後、第2プリンター100Bは、第1プリンター100Aと端末装置200に実行対象ジョブの削除要求を送信した後(S713、S714)、処理を終了する。
【0103】
第1プリンター100Aからの実行対象ジョブの取得及び印刷が可能でないと判定された場合(S704でNo)、処理部110は、実行対象ジョブを端末装置200から取得し、取得した実行対象ジョブを印刷する(S712)。印刷完了後、第2プリンター100Bは、第1プリンター100Aと端末装置200に実行対象ジョブの削除要求を送信した後(S713、S714)、処理を終了する。
【0104】
なお、S710において第1プリンター100Aに実行対象ジョブを要求する場合、端末装置200から実行対象ジョブの途中のデータまで取得していることが想定される。そのため、第1プリンター100Aからの実行対象ジョブの取得をデータの先頭から行った場合、受信する実行対象ジョブに重複が発生してしまう。よって第2プリンター100Bの処理部110は、端末装置200による実行対象ジョブの転送がエラーになった場合、実行対象ジョブのうち、端末装置からの受信が完了していない情報の取得要求を、他の印刷装置100である第1プリンター100Aに送信してもよい。例えば、第2プリンター100Bは、端末装置200から取得済みのデータの続きを第1プリンター100Aに要求する。このようにすれば、データの重複を抑制し、効率的な通信を実現することが可能になる。
【0105】
3.第2の実施形態
上述してきたように、第1プリンター100Aと第2プリンター100Bが同一機種である場合、第1プリンター100Aに蓄積された印刷ジョブを、第2プリンター100Bの印刷部140において印刷することが可能である。一方、第1プリンター100Aと第2プリンター100Bが異なる機種である場合、第1プリンター100Aに蓄積された印刷ジョブを、第2プリンター100Bの印刷部140において印刷できない可能性が出てくる。ただし、異なる機種間においても印刷ジョブの共有が可能な場合がある。そのため、異なる機種間における印刷ジョブの共有を一律に禁止することは過剰な対応であり、ユーザーの利便性を損なうおそれがある。
【0106】
本実施形態に係る印刷装置100の処理部110は、他の印刷装置100が異なる機種である場合であっても、第1判定~第3判定に基づいて印刷可能と判定されたことを条件に、他の印刷装置100に蓄積された印刷ジョブを他の印刷装置100から取得し、取得した印刷ジョブを印刷部140に印刷させる。このようにすれば、他の印刷装置100から実行対象ジョブを取得するか否かを適切に判定できる。そのため、不適切な印刷を抑制することと、利便性を向上させることを両立することが可能になる。なお、第1判定~第3判定は、そのうちの1つ又は2つの判定を省略してもよいし、他の判定が追加されてもよい。以下、判定処理を含む具体的な処理を説明する。
【0107】
なお、本実施形態においては端末装置200から実行対象ジョブを取得する構成は必須ではない。よってここでは、他の印刷装置100、より具体的には第1プリンター100Aから実行対象ジョブを取得する例について説明する。
【0108】
3.1 印刷処理
第2の実施形態における処理フローは、
図3と同様である。また、S101及びS102の処理も
図4~
図7を用いて上述した通りである。ただし、本実施形態においては、端末装置200からの実行対象ジョブの取得を想定していない。そのため、S102の処理において、第2プリンター100Bは、他の印刷装置100から送信元アドレスを取得することが必須とならない。一方、
図15を用いて後述するように、第2プリンター100Bは、印刷可能か否かの判定において印刷設定に関する第1判定を実行する場合がある。その場合、第2プリンター100Bは、他の印刷装置100から印刷設定情報を取得する必要がある。また、本実施形態の手法においては、S103の処理内容が第1の実施形態とは異なる。
【0109】
図14は、第2の実施形態における印刷処理を説明するフローチャートである。まず第2プリンター100Bは、ジョブ選択画面を用いて実行対象ジョブの選択入力を受け付ける(S801)。ここでは、第1プリンター100Aに蓄積された印刷ジョブが、実行対象ジョブとして選択されたとする。本実施形態では端末装置200からの実行対象ジョブの取得を考慮しない。よって、第2プリンター100Bは、第1プリンター100Aに蓄積された実行対象ジョブを、自身の印刷部140において印刷可能であるか否かを判定する(S802)。
【0110】
印刷可能と判定された場合(S802でYes)、第2プリンター100Bは、第1プリンター100Aから実行対象ジョブを取得し、取得した実行対象ジョブを印刷する(S803)。第2プリンター100Bは、第1プリンター100Aに実行対象ジョブの削除要求を送信した後(S804)、処理を正常終了する。印刷できないと判定された場合(S802でNo)、第2プリンター100Bは、エラー処理を行ったあと、処理を異常終了する。例えば第2プリンター100Bの処理部110は、他の印刷装置100に蓄積された印刷ジョブが印刷できないと判定された場合、他の印刷装置100と同一機種である印刷装置100における印刷ジョブの印刷を促す報知処理を行う。
【0111】
図15は、本実施形態におけるS802の処理を説明するフローチャートである。この処理が開始されると、第2プリンター100Bは、第1プリンター100Aと第2プリンター100Bが同一機種であるか否かを判定する(S901)。同一機種である場合(S901でYes)、第2プリンター100Bは、第1プリンター100Aの印刷ジョブを印刷可能と判定する。本実施形態の手法は、S901でNoと判定された場合に、即座に印刷できないと判定するのではなく、条件によっては印刷可能と判定する余地を残すものである。
【0112】
図15の例では、第2プリンター100Bは、まず印刷画像データのデータ形式について判定する第3判定を行う(S902)。例えば、印刷装置100には、印刷画像データをRGB(Red,Green,Blue)の画素値の組み合わせであるビットマップデータによって表現する機種と、CMY(cyan,magenta,yellow)の組み合わせであるビットマップデータによって表現する機種がある。なお実際の印刷画像データは、ビットマップデータに対して圧縮処理が施されたデータであってもよい。RGB形式とCMY形式との間には互換性がなく、一方の形式に対応する機種は、他方の形式の印刷画像データを取得しても所望の印刷処理を実行できない。
【0113】
また、印刷装置100には、白色の領域、即ち印刷用紙の色をそのまま利用可能な領域について、ビットマップデータの代わりに紙送り命令を表すデータを用いる機種がある。一方、印刷装置100によっては紙送り命令に対応しておらず、白色の領域についてもビットマップデータを必要とする機種がある。紙送り命令に対応する機種とは、例えばシリアルインクジェットプリンターである。紙送り命令に対応しない機種とは、例えばラインインクジェットプリンター又はレーザープリンターである。第1プリンター100Aの蓄積する印刷画像データに紙送り命令が含まれており、且つ、第2プリンター100Bが紙送り命令に対応しない機種である場合、所望の印刷処理を実行できない。
【0114】
第2プリンター100Bは、S902において第1プリンター100Aにおける印刷画像データのデータ形式と、第2プリンター100Bにおける印刷画像データのデータ形式とに互換性があるか否かを判定する。互換性がない場合(S902でNo)、第2プリンター100Bは、第1プリンター100Aの印刷ジョブを印刷できないと判定する。なお、印刷画像データの互換性を判定する際に、印刷画像データ全体を取得することは好ましくない。よって第2プリンター100Bは、S102の処理において、印刷ジョブに関する情報として、印刷画像のデータ形式を特定可能な情報を取得する。データ形式を特定可能な情報とは、例えばヘッダー等の情報であってもよいし、印刷画像データの一部を抽出した情報であってもよい。
【0115】
互換性があると判定された場合(S902でYes)、第2プリンター100Bは、第1プリンター100Aに蓄積された印刷ジョブが、機種依存の印刷設定を含むか否かの第1判定を行う(S903)。具体的には、第2プリンター100Bの処理部110は、印刷ジョブが機種依存の印刷設定を含まないと判定されることを条件に、印刷可能と判定する。即ち、印刷ジョブが機種依存の印刷設定を含む場合(S903でYes)、第2プリンター100Bは、第1プリンター100Aの印刷ジョブを印刷できないと判定する。
【0116】
ここで機種依存の印刷設定は、印刷用紙種の設定及び特殊印刷に関する設定の少なくとも1つを含む。印刷用紙種とは、印刷用紙のサイズ及び材質を表す情報である。例えば、A4サイズ以下の印刷が可能な印刷装置100は、A3サイズを指定した印刷ジョブを適切に実行できない。また、印刷装置100に応じて、写真用紙の印刷可否、或いはCDレーベルの印刷可否等が異なる。第2プリンター100Bは、第1プリンター100Aから印刷ジョブに関する情報として印刷設定情報を取得し、当該印刷設定情報に含まれる印刷用紙種と、自身が対応可能な印刷用紙種を比較する。印刷設定情報により表される印刷用紙種が、対応不可能な印刷用紙種である場合、第2プリンター100Bは、機種依存の印刷設定が含まれると判定する。即ちS903でYesとなり、第1プリンター100Aの印刷ジョブは印刷できないと判定される。
【0117】
また、特殊印刷とは、例えば原稿の領域に応じてインクの吐出量を調整する印刷である。特殊印刷としては、例えばバーコード印刷が考えられる。印刷媒体に印刷されたバーコードを精度よく読み取るためには、バーコード部分のにじみを抑制する必要がある。よって、特にインクジェットプリンターにおいては、バーコードが印刷される部分において、インクの吐出量を抑制する。ただし、インク量を抑制する具体的な制御は、印刷装置100の機械的な構成や、印刷装置100に充填されるインクの特性等に応じて変化する。即ち、所与の機種におけるバーコード印刷の設定を他の機種において流用した場合、所望の印刷処理を実行できない。
【0118】
また特殊印刷としては透かし印刷が考えられる。透かし印刷とは、例えば原本となる原稿の印刷時に、背景部分に透かしを印刷するモードである。透かしは、テキスト等の任意の情報であり、例えば原本においては視認性の低い態様で印刷される。当該原本がコピーされた場合、コピー結果には透かしが視認性の高い態様で印刷される。透かしの印刷は、例えば大きさや密度の異なる微小な点を背景領域に印刷することで実現される。そのため、透かしを埋め込む部分において、印刷装置100は通常の文字や画像とは異なる態様でインクの吐出等を行う。この場合も、印刷装置100の機種に応じて望ましいインクの吐出制御が異なるため、所与の機種における透かし印刷の設定を他の機種において流用した場合、所望の印刷処理を実行できない。
【0119】
第1プリンター100Aの印刷ジョブが特殊印刷に関する設定を含む場合、第2プリンター100Bが当該特殊印刷に対応していたとしても、機種が異なる以上、当該印刷ジョブを第2プリンター100Bにおいて印刷することは難しい。よって、印刷設定情報が特殊印刷を行う設定を含む場合、第2プリンター100Bは、機種依存の印刷設定が含まれると判定する。即ちS903でYesとなり、第1プリンター100Aの印刷ジョブは印刷できないと判定される。このようにすれば、印刷用紙種、特殊印刷を考慮して、印刷ジョブを印刷可能である否かを判定することが可能になる。
【0120】
或いは、機種依存の印刷設定は、他の印刷装置100が有し、且つ、自身の印刷装置100が有さないハードウェア資源に関する設定であってもよい。ここでのハードウェア資源とは、例えばフィニッシャーである。フィニッシャーとは、印刷結果である複数の原稿をステープルを用いてまとめる機能、原稿にパンチ穴を開ける機能、原稿を折りまげる機能等を有するハードウェアである。印刷設定にフィニッシャーを使用するという設定が行われていたとしても、第2プリンター100Bにフィニッシャーが搭載されていなければ、ステープル処理等を行うことはできない。よって、印刷設定情報に自身が有していないハードウェア資源を用いる設定が含まれる場合、第2プリンター100Bは、機種依存の印刷設定が含まれると判定する。即ちS903でYesとなり、第1プリンター100Aの印刷ジョブは印刷できないと判定される。このようにすれば、印刷装置100のハードウェア構成を考慮して、印刷ジョブを印刷可能であるか否かを判定することが可能になる。
【0121】
機種依存の印刷設定が含まれないと判定された場合(S903でNo)、第2プリンター100Bは、印刷画像の回転処理に関する第2判定を行う。印刷装置100における給紙方向には、印刷用紙の長辺が搬送方向に対して垂直に位置する方向となるLEF(long edge feed)と、印刷用紙の短辺が搬送方向に対して垂直に位置する方向となるSEF(short edge feed)が存在する。印刷装置100によっては、LEFとSEFのいずれか一方にしか対応しないといった機種が存在する。LEFとSEFとは、印刷画像データの各画素の印刷順序が異なる。そのため、LEFに対応する機種においてSEFが設定された印刷ジョブを印刷する場合、又は、SEFに対応する機種においてLEFが設定された印刷ジョブを印刷する場合、印刷画像データを90度回転する回転処理が必要となる。
【0122】
そこで第2プリンター100Bは、まず実行対象ジョブの印刷設定情報に含まれる給紙方向と、自身の給紙方向を比較することによって、印刷画像データの回転処理が必要か否かを判定する(S904)。回転処理が不要である場合(S904でNo)、第2プリンター100Bは、第1プリンター100Aの印刷ジョブを自身の印刷部140において印刷可能であると判定する。
【0123】
回転処理が必要である場合(S904でYes)、第2プリンター100Bは、実行対象ジョブの印刷画像データの回転処理を実行可能であるか否かを判定する(S905)。第2プリンター100Bの処理部110がそもそも回転処理に対応していない場合、回転処理は実行できないと判定される。また、回転処理を実行するためには、一旦、実行対象ジョブの印刷画像データ全体を、第2プリンター100Bに含まれるRAM等のメモリーに蓄積する必要がある。印刷画像データのデータサイズに対してRAMの空き容量が不足している場合、回転処理は実行できないと判定される。回転処理が可能である場合(S905でYes)、第2プリンター100Bは、第1プリンター100Aの印刷ジョブを自身の印刷部140において印刷可能であると判定する。
【0124】
以上のように、第2プリンター100Bの処理部110は、印刷ジョブの印刷対象である印刷画像の回転処理が必要で無いこと(S904でNo)、又は、印刷画像の回転処理が必要であり且つ回転処理を実行可能であること(S904でYes且つS905でYes)を条件に、印刷可能と判定する。このようにすれば、印刷画像データの回転処理を考慮して、印刷ジョブを印刷可能であるか否かを判定することが可能になる。
【0125】
図15においては、第2プリンター100Bが第1判定~第3判定の全てを行う例を示した。この場合、第1判定において印刷可能と判定される条件を満たし(S903でNo)、且つ、第2判定において印刷可能と判定される条件を満たし(S904でNo又はS905でYes)、且つ、第3判定において印刷可能と判定される条件を満たした場合(S902でYes)、第1プリンター100Aの印刷ジョブが印刷可能と判定される。3つの判定の全てにおいて条件を満たす場合に印刷可能と判定されるため、各判定の順序は
図15の例に限定されない。
【0126】
また、第1判定~第3判定のうちの一部の判定が省略されてもよい。例えば第2プリンター100Bは、第1判定~第3判定のいずれか1つを省略し、残り2つの判定に基づいて、第1プリンター100Aの印刷ジョブを印刷可能か否かを判定してもよい。この場合も、残り2つの判定の両方が上記条件を満たす場合に印刷可能と判定される。或いは第2プリンター100Bは、第1判定~第3判定のいずれか2つを省略し、残り1つの判定に基づいて、第1プリンター100Aの印刷ジョブが印刷可能か否かを判定してもよい。
【0127】
以上では、第2プリンター100Bの処理部110は、他の印刷装置100である第1プリンター100Aが蓄積する印刷ジョブのうち、選択された印刷ジョブを対象として印刷可能か否かを判定する例を説明した。より具体的には、第2プリンター100Bの処理部110は、自身の記憶部130に蓄積された印刷ジョブ、及び、他の印刷装置100に蓄積された印刷ジョブに関する情報を取得し、取得した情報に基づいてジョブ選択画面を表示部150に表示する処理を行う。そして第2プリンター100Bは、ジョブ選択画面において選択された印刷ジョブを対象として印刷可能か否かを判定する(S801、S802)。このようにすれば、第1プリンター100A等の他の印刷装置100に蓄積される印刷ジョブのうち、選択された一部の印刷ジョブを対象として判定処理を行うことが可能になる。そのため、判定処理にかかる負荷を軽減可能である。特に、ジョブ選択画面において選択された印刷ジョブ、即ち実行対象ジョブはユーザーが印刷を望んでいる印刷ジョブであるため、適切な印刷ジョブを印刷可能か否かの判定対象とすることが可能になる。
【0128】
ただし、印刷可能か否かの判定を行うタイミング、判定対象となる印刷ジョブは上記に限定されない。例えば第2プリンター100Bの処理部110は、他の印刷装置100に蓄積された印刷ジョブが印刷可能か否かを判定してもよい。具体的には第2プリンター100Bは、他の印刷装置100である第1プリンター100A、第3プリンター100C~第5プリンター100Eから印刷ジョブに関する情報を取得した際に、取得した印刷ジョブそれぞれを対象として、印刷可能か否かの判定を行う。印刷ジョブに関する情報の取得とは、具体的には
図3のS102及び
図6を用いて上述した処理に対応する。
【0129】
この場合、第2プリンター100Bの処理部110は、自身の記憶部130に蓄積された印刷ジョブ、及び、他の印刷装置100に蓄積された印刷ジョブのうち印刷可能と判定された印刷ジョブを表示するジョブ選択画面を、表示部150に表示する処理を行う。そして処理部110は、ジョブ選択画面において選択された印刷ジョブを印刷部140に印刷させる。このようにすれば、ジョブ選択画面に表示される印刷ジョブは、他の印刷装置100から取得した上で、第2プリンター100Bの印刷部140において印刷可能であるものに限定される。判定対象となる印刷ジョブの数は増えるものの、実行対象ジョブが決定された後に、当該実行対象ジョブが印刷できないというケースの発生を抑制できるため、利便性向上が可能である。
【0130】
4.変形例
以下、いくつかの変形例について説明する。
【0131】
4.1 第1の実施形態と第2の実施形態の組み合わせ
以上で説明した第1の実施形態と第2の実施形態を組み合わせた変形実施が可能である。第1の実施形態においては、
図11のS504及びS510に示した印刷可能か否かの判断ステップが、第1プリンター100Aと第2プリンター100Bが同一機種であるか否かの判定であるものとして説明した。当該判断ステップを、第2の実施形態において
図15を用いて説明した処理に置き換えることが可能である。
【0132】
本変形例における、第2プリンター100Bの処理部110は、第1の実施形態と同様に、他の印刷装置100に蓄積されている印刷ジョブを、当該他の印刷装置100と、印刷ジョブを他の印刷装置100に送信した端末装置200のいずれから取得するかを判定する。その際、第2プリンター100Bは、第1プリンター100Aに蓄積された印刷ジョブを自身の印刷部140において印刷可能であるか否かを、同一機種であるか否かの判定(S901)、及び第1判定~第3判定のうちの少なくとも1つ(S902~S905)に基づいて判定する。そして、印刷ジョブが印刷できないと判定された場合(S504でNo)、第2プリンター100Bは、端末装置200から印刷ジョブを取得する(S508)。
【0133】
このようにすれば、印刷ジョブの取得先を他の印刷装置100と端末装置200とから柔軟に選択可能であるだけでなく、他の印刷装置100から印刷ジョブを取得可能と判定される蓋然性を高くすることが可能になる。即ち、所望の印刷ジョブを適切に印刷できる蓋然性が高くなるため、ユーザーの利便性向上が可能である。
【0134】
4.2 一括印刷
また以上では
図3のS102に示したように、第2プリンター100Bの表示部150がジョブ選択画面を表示し、ユーザーによる実行対象ジョブの選択入力を受け付ける例を説明した。ただし、ジョブ選択画面の表示、及び選択入力の受付は省略可能である。
【0135】
具体的には、第2プリンター100Bは、他の印刷装置100から印刷ジョブに関する情報を取得した際に、ログインしたユーザーに関係する全ての印刷ジョブを、自動的に実行対象ジョブとして決定することによって、当該実行対象ジョブを一括印刷する。
【0136】
第1の実施形態の手法であれば、第2プリンター100Bは、自動的に決定された実行対象ジョブを、第1プリンター100Aと端末装置200のいずれかから取得し、取得した実行対象ジョブの印刷処理を行う。実行対象ジョブとして複数の印刷ジョブが選択された場合、第2プリンター100Bは、各実行対象ジョブについて同様の処理を行う。具体的な手順については、S401及びS601の処理が自動化される点を除き、
図8~
図13と同様である。
【0137】
また第2の実施形態の手法であれば、第2プリンター100Bは、自動的に決定された実行対象ジョブを対象として、
図15に示したフローチャートに従って印刷可能か否かの判定処理を行う。具体的には、第2プリンター100Bの処理部110は、他の印刷装置100に蓄積された印刷ジョブが印刷可能か否かを判定する。そして処理部110は、他の印刷装置100に蓄積された印刷ジョブのうち印刷可能と判定された印刷ジョブを、印刷部140に印刷させる。
【0138】
以上のように、本実施形態の印刷装置は、他の印刷装置と印刷ジョブを共有する印刷装置である。印刷装置は、他の印刷装置と通信を行う通信部と、通信部の制御を行う処理部と、印刷ジョブを蓄積する記憶部と、印刷ジョブに基づいて印刷を行う印刷部と、を含む。処理部は、印刷装置と他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、第1判定~第3判定の少なくとも1つの判定に基づいて、他の印刷装置が蓄積する印刷ジョブを、印刷部が印刷可能であるか否かを判定する。第1判定は、他の印刷装置が蓄積する印刷ジョブが、機種依存の印刷設定を含むか否かの判定である。第2判定は、他の印刷装置が蓄積する印刷ジョブの印刷画像の回転処理に関する判定である。第3判定は、他の印刷装置が蓄積する印刷ジョブの印刷画像のデータ形式に関する判定である。
【0139】
異なる機種間の印刷ジョブの共有を無条件に許可してしまうと、機種の違いに起因して、印刷処理を適切に実行できないおそれがある。また、異なる機種間の印刷ジョブの共有を一律に禁止してしまうと、利便性が低下するおそれがある。その点、第1判定~第3判定の少なくとも1つを用いることによって、異なる機種の間でも適切に印刷ジョブを共有することが可能になる。
【0140】
また処理部は、印刷可能と判定されたことを条件に、他の印刷装置に蓄積された印刷ジョブを他の印刷装置から取得し、取得した印刷ジョブを印刷部に印刷させてもよい。
【0141】
このようにすれば、機種の異なる印刷装置に蓄積された印刷ジョブを適切に印刷することが可能になる。
【0142】
また処理部は、第1判定に基づいて、印刷ジョブを印刷可能であるか否かを判定する場合に、印刷ジョブが機種依存の印刷設定を含まないと判定されることを条件に、印刷可能と判定してもよい。
【0143】
このようにすれば、機種依存の印刷設定に関する判定に基づいて、異なる機種間の印刷ジョブの共有を許可するか否かを適切に判定できる。
【0144】
また機種依存の印刷設定は、印刷用紙種の設定及び特殊印刷に関する設定の少なくとも1つを含んでもよい。
【0145】
このようにすれば、用紙の種類や特殊印刷への対応状況に基づいて、異なる機種間の印刷ジョブの共有を許可するか否かを適切に判定できる。
【0146】
また機種依存の印刷設定は、他の印刷装置が有し、且つ、自身の印刷装置が有さないハードウェア資源に関する設定であってもよい。
【0147】
このようにすれば、印刷装置が有するハードウェア資源に基づいて、異なる機種間の印刷ジョブの共有を許可するか否かを適切に判定できる。
【0148】
また処理部は、第2判定に基づいて、印刷ジョブを印刷可能であるか否かを判定する場合に、印刷ジョブの印刷対象である印刷画像の回転処理が必要で無いこと、又は、印刷画像の回転処理が必要であり且つ回転処理を実行可能であることを条件に、印刷可能と判定してもよい。
【0149】
このようにすれば、印刷装置において印刷媒体がセットされる方向に応じて、異なる機種間の印刷ジョブの共有を許可するか否かを適切に判定できる。
【0150】
また処理部は、他の印刷装置が蓄積する印刷ジョブのうち、選択された印刷ジョブを対象として印刷可能か否かを判定してもよい。
【0151】
このようにすれば、選択された印刷ジョブを、印刷可能か否かの判定対象とすることが可能になる。
【0152】
また印刷装置は表示部をさらに含む。処理部は、記憶部に蓄積された印刷ジョブ、及び、他の印刷装置に蓄積された印刷ジョブに関する情報を取得し、取得した情報に基づいてジョブ選択画面を表示部に表示する処理を行い、ジョブ選択画面において選択された印刷ジョブを対象として印刷可能か否かを判定してもよい。
【0153】
このようにすれば、ユーザーが印刷を希望している印刷ジョブを適切に判定対象とすることが可能になる。
【0154】
また印刷装置は表示部をさらに含む。処理部は、他の印刷装置に蓄積された印刷ジョブが印刷可能か否かを判定する。そして処理部は、記憶部に蓄積された印刷ジョブ、及び、他の印刷装置に蓄積された印刷ジョブのうち印刷可能と判定された印刷ジョブを表示するジョブ選択画面を、表示部に表示する処理を行い、ジョブ選択画面において選択された印刷ジョブを印刷部に印刷させてもよい。
【0155】
このようにすれば、印刷可能と判定された印刷ジョブがジョブ選択画面に表示されるため、ジョブ選択画面で選択された印刷ジョブの印刷が正常に行われる蓋然性を高めることが可能になる。
【0156】
また処理部は、他の印刷装置に蓄積された印刷ジョブが印刷可能か否かを判定し、他の印刷装置に蓄積された印刷ジョブのうち印刷可能と判定された印刷ジョブを、印刷部に印刷させてもよい。
【0157】
このようにすれば、ユーザーによる選択操作を経ることなく、印刷可能な印刷ジョブの印刷処理を実行することが可能になる。
【0158】
また処理部は、他の印刷装置に蓄積された印刷ジョブが印刷できないと判定された場合、他の印刷装置と同一機種である印刷装置における印刷ジョブの印刷を促す報知処理を行ってもよい。
【0159】
このような報知を行うことによって、ユーザーの希望する印刷ジョブが正常に印刷される蓋然性を高めることが可能になる。
【0160】
また処理部は、他の印刷装置に蓄積されている印刷ジョブを、他の印刷装置と、印刷ジョブを他の印刷装置に送信した端末装置とのいずれから取得するかを判定し、印刷ジョブが印刷できないと判定された場合、端末装置から印刷ジョブを取得してもよい。
【0161】
このように、実行対象ジョブの取得先を、他の印刷装置と端末装置のいずれかから柔軟に選択することによって、利便性を向上させることが可能になる。
【0162】
また本実施形態の印刷処理方法は、他の印刷装置と印刷ジョブを共有する印刷装置における印刷処理方法である。印刷処理方法は、印刷装置と、他の印刷装置が同一機種であるか否かを判定し、同一機種でないと判定された場合、第1判定~第3判定のうちの少なくとも1つの判定に基づいて、他の印刷装置が蓄積する印刷ジョブを印刷装置が印刷可能であるか否かを判定する。第1判定は、他の印刷装置が蓄積する印刷ジョブが、機種依存の印刷設定を含むか否かの判定である。第2判定は、他の印刷装置が蓄積する印刷ジョブの印刷画像の回転処理に関する判定である。第3判定は、他の印刷装置が蓄積する印刷ジョブの印刷画像のデータ形式に関する判定である。
【0163】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本発明の範囲に含まれる。また印刷装置、端末装置、印刷システムの構成及び動作等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【0164】
10…印刷システム、100…印刷装置、100A~100E…第1プリンター~第5プリンター、110…処理部、111…印刷画像送信処理部、120…通信部、130…記憶部、140…印刷部、150…表示部、200…端末装置、201…アプリケーションソフトウェア、202…プリンタードライバー、203…ジョブプール、204…スプール、205…ポートモニター、206…印刷データサービス