JP2018149723A - 制御装置 - Google Patents

制御装置 Download PDF

Info

Publication number
JP2018149723A
JP2018149723A JP2017046586A JP2017046586A JP2018149723A JP 2018149723 A JP2018149723 A JP 2018149723A JP 2017046586 A JP2017046586 A JP 2017046586A JP 2017046586 A JP2017046586 A JP 2017046586A JP 2018149723 A JP2018149723 A JP 2018149723A
Authority
JP
Japan
Prior art keywords
image data
print
information
copies
images
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.)
Granted
Application number
JP2017046586A
Other languages
English (en)
Other versions
JP6957906B2 (ja
Inventor
雄一郎 桜木
Yuichiro Sakuragi
雄一郎 桜木
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017046586A priority Critical patent/JP6957906B2/ja
Publication of JP2018149723A publication Critical patent/JP2018149723A/ja
Application granted granted Critical
Publication of JP6957906B2 publication Critical patent/JP6957906B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】 制御装置のメモリに記憶されるべきデータ量が多くなるのを抑制するための技術を提供すること。【解決手段】 制御装置は、N1個の画像がユーザによって指定される場合に、端末装置から少なくともN1個の画像データを含む印刷要求を取得し、N1個の画像とM1部を示す印刷部数がユーザによって指定されることに起因して、印刷要求が(N1×M1)個の画像データを含む場合に、(N1×M1)個の画像データにおいて、各画像データが他の画像データと一致するのか否かを判断する一致判断処理を実行し、一致判断処理の結果を利用して、(N1×M1)個の画像データの中からN1個の画像データを特定し、一致判断処理の結果を利用して、N1個の画像の印刷部数に関係する部数関係情報を生成し、(N1×M1)個の画像データのうちの特定済みのN1個の画像データと、部数関係情報と、をメモリ内の所定領域に記憶させる。【選択図】 図3

Description

本明細書では、印刷実行部に印刷を実行させるための制御装置を開示する。
特許文献1には、記憶装置内の印刷データを画像出力して用紙に印刷するプリンタが開示されている。プリンタは、ホストマシンから印刷データを受信し、当該印刷データを記憶装置に記憶する。プリンタは、ユーザによって複数部を示す印刷部数が指定される場合に、記憶装置内の印刷データを画像出力して用紙に印刷することを繰り返す。
特開2003−131824号公報
特許文献1には明記されていないが、ホストマシンにおいて、印刷対象のN個(Nは1以上の整数)の画像と、M部(Mは2以上の整数)を示す印刷部数と、が指定される場合に、ホストマシンが、N個の画像を表わすN個の印刷データとM部を示す印刷部数情報とをプリンタに送信する構成が考えられる。この場合、プリンタは、当該N個の印刷データと当該印刷部数情報とを記憶装置内に記憶させておけば、当該N個の印刷データに従った印刷を当該印刷部数情報に従った回数だけ繰り返し実行して、ユーザの意図に従った印刷を実現することができる。一方、ホストマシンにおいて、N個の画像とM部を示す印刷部数とが指定される場合に、ホストマシンが、(N×M)個の画像を表わす(N×M)個の印刷データと1部を示す印刷部数情報とをプリンタに送信する構成も想定される。この場合、プリンタは、当該(N×M)個の印刷データを記憶装置内に記憶させる必要があり、記憶装置に記憶されるべきデータ量が多くなってしまう。
本明細書では、制御装置のメモリに記憶されるべきデータ量が多くなるのを抑制するための技術を提供する。
本明細書によって開示される制御装置は、メモリと、端末装置において、互いに異なるN1個(前記N1は2以上の整数)の画像がユーザによって指定される場合に、前記端末装置から、少なくとも前記N1個の画像を表わす少なくともN1個の画像データを含む第1の印刷要求を取得する第1の印刷要求取得部と、前記端末装置において、前記N1個の画像と、M1部(前記M1は2以上の整数)を示す印刷部数と、が前記ユーザによって指定されることに起因して、前記第1の印刷要求が、(N1×M1)個の画像を表わす(N1×M1)個の画像データを含む第1の場合に、前記(N1×M1)個の画像データにおいて、各画像データが他の画像データと一致するのか否かを判断する第1の一致判断処理を実行する第1の一致判断部と、前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記(N1×M1)個の画像データの中から前記N1個の画像データを特定する第1の特定部と、前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記N1個の画像の印刷部数に関係する部数関係情報を生成する関係情報生成部と、前記第1の場合に、前記(N1×M1)個の画像データのうちの特定済みの前記N1個の画像データと、前記部数関係情報と、を前記メモリ内の所定領域に記憶させる第1の記憶制御部であって、前記(N1×M1)個の画像データのうち、特定済みの前記N1個の画像データ以外の(N1×(M1−1))個の画像データは、前記所定領域に記憶されない、前記第1の記憶制御部と、前記N1個の画像データと前記部数関係情報とが前記所定領域に記憶された後に、前記N1個の画像データと前記部数関係情報とを利用して、前記(N1×M1)個の画像の印刷を前記印刷実行部に実行させる第1の印刷制御部と、を備える。
上記の構成によれば、制御装置は、(N1×M1)個の画像データにおいて、各画像データが他の画像データと一致するのか否かを判断することによって、(N1×M1)個の画像データの中からN1個の画像データを特定し、特定済みのN1個の画像データをメモリ内の所定領域に記憶させる。この際に、特定済みのN1個の画像データ以外の(N1×(M1−1))個の画像データは、所定領域に記憶されない。従って、制御装置のメモリ内の所定領域に記憶されるべきデータ量が多くなるのを抑制することができる。
上記の制御装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。
通信システムの構成を示す。 プリンタによって実行される印刷関係処理のフローチャートを示す。 蓄積処理のフローチャートを示す。 アンコレート印刷が指定されるケースA1とコレート印刷が指定されるケースA2を示す。 第2実施例の蓄積処理のフローチャートを示す。 アンコレート印刷が指定されるケースB1とコレート印刷が指定されるケースB2を示す。 決定処理のフローチャートを示す。 アンコレート部数処理のフローチャートを示す。 コレート部数処理のフローチャートを示す。 第2実施例の特殊なケースを示す。
(第1実施例)
(通信システム2の構成;図1)
図1に示されるように、通信システム2は、プリンタ10と、複数個の端末装置100、200と、を備える。各装置、10、100、200は、同じLAN(Local Area Networkの略)4に所属しており、LAN4を介して相互に通信可能である。
(プリンタ10の構成;図1)
プリンタ10は、印刷機能を実行可能な周辺装置(即ち、端末装置100等の周辺装置)である。プリンタ10は、印刷実行部12と、入力部14と、ネットワークインターフェース16と、制御部20と、を備える。以下では、インターフェースのことを「I/F」と記載する。印刷実行部12は、インクジェット方式、レーザ方式等の印刷機構を備える。
入力部14は、ユーザによる情報の入力を受け付ける。入力部14は、例えば、操作キー、タッチパネル、ICカードリーダ、磁気カードリーダ等を含む。入力部14が操作キー又はタッチパネルである場合には、ユーザは、操作キー又はタッチパネルを操作することによって、情報をプリンタ10に入力することができる。また、入力部14がIC(又は磁気)カードリーダである場合には、ユーザは、情報が記憶されたIC(又は磁気)カードをIC(又は磁気)カードリーダに近づけることによって、当該情報をプリンタ10に入力することができる。
ネットワークI/F16は、有線通信を実行するためのI/Fであり、LAN4に接続されている。変形例では、ネットワークI/F16は、無線通信を実行するためのI/Fであってもよく、この場合、LAN4は、いわゆる無線LANである。
制御部20は、CPU22と、メモリ24と、を備える。CPU22は、メモリ24に記憶されているプログラム26に従って、様々な処理を実行する。メモリ24は、揮発性メモリ、不揮発性メモリ等によって構成される。メモリ24内の不揮発性メモリは、ユーザテーブル28を記憶する。また、メモリ24内の揮発性メモリは、一時領域30を備え、メモリ24内の不揮発性メモリは、蓄積領域32を備える。
ユーザテーブル28では、ユーザ名と、パスワードと、が関連付けられる。ユーザ名とパスワードは、例えば、プリンタ10の管理者が、端末装置(例えば100)からプリンタ10にアクセスすることによって、ユーザテーブル28に登録される。ユーザ名は、ユーザを識別するための情報である。パスワードは、当該ユーザを認証するための情報である。なお、以下では、ユーザ名とパスワードの組合せを「ユーザ情報」と記載する。
一時領域30は、端末装置(例えば100)から供給される印刷要求及びユーザ情報を一時的に記憶するための領域である。印刷要求は、印刷対象の画像の印刷をプリンタ10に要求するためのコマンドであり、当該画像を表わす画像データを含む。印刷要求が複数個の画像データを含む場合には、複数個の画像データのそれぞれは、一時領域30に順次記憶されて後述の印刷関係処理(図2参照)で利用され、その後一時領域30から削除される。
蓄積領域32は、印刷要求に含まれる画像データを蓄積情報(例えばSI1)として記憶するための領域である。蓄積情報は、画像データと印刷部数情報と方法情報とユーザ情報との組合せである。蓄積情報が複数個の画像データを含む場合には、各画像データは、印刷順序を示す順位に関連付けられる。印刷部数情報は、画像データの印刷部数を示す。方法情報は、印刷方法としてコレート印刷又はアンコレート印刷を示す。なお、コレート印刷、アンコレート印刷は、それぞれ、ソート印刷、非ソート印刷と同義である。蓄積情報に含まれるユーザ情報に一致するユーザ情報を入力部14に入力するための動作(例えば、操作キーの操作、ICカードをICカードリーダに近づける動作等)がユーザによって実行されると、当該蓄積情報に含まれる各画像データによって表わされる各画像の印刷が実行される。この場合、蓄積領域32から当該蓄積情報が削除される。
(端末装置100の構成)
端末装置100は、デスクトップPC(Personal Computerの略)、ノートPC、携帯端末等のユーザ端末である。端末装置100は、専用プリンタドライバを記憶している。専用プリンタドライバは、プリンタ10のベンダによって提供されるプログラムであり、プリンタ10が解釈可能な印刷要求をプリンタ10に供給するためのプログラムである。専用プリンタドライバは、例えば、プリンタ10のベンダによって提供されるインターネット上のサーバ(不図示)から端末装置100にインストールされてもよいし、プリンタ10と共に出荷されるメディアから端末装置100にインストールされてもよい。
端末装置100は、ユーザから印刷の指示を受け付けると、指定画面SC1を表示する。指定画面SC1は、ユーザ情報を指定するためのユーザ情報ボックスと、ドキュメントを指定するためのドキュメントボックスと、印刷部数を指定するための部数ボックスと、印刷方法を指定するための方法ボックスと、を含む。方法ボックスが選択され、その状態が非選択状態から選択状態に移行すると、印刷方法としてアンコレート印刷が指定される、一方、方法ボックスが選択されずに、その状態が非選択状態に維持されると、印刷方法としてコレート印刷が自動的に指定される。
端末装置100は、指定画面SC1において、ユーザ情報とドキュメントと印刷部数と印刷方法とが指定されると、専用プリンタドライバに従って、指定済みのドキュメントを変換して、プリンタ10が解釈可能な形式を有する画像データを生成する。特に、印刷対象のドキュメントが互いに異なるN1個(N1は2以上の整数)の画像を含み、かつ、M1部(M1は2以上の整数)を示す印刷部数が指定される場合には、端末装置100は、専用プリンタドライバに従って、N1個の画像データと、M1部を示す印刷部数情報と、指定済みの印刷方法を示す方法情報と、を含む印刷要求を生成する。印刷部数情報及び方法情報は、印刷要求内のヘッダ領域に含まれ、N1個の画像データは、印刷要求内のボディ領域に含まれる。端末装置100は、生成済みの印刷要求をプリンタ10に供給する。
ここで、図2を参照して、具体例を説明する。例えば、ユーザが、端末装置100において、2個の画像IM1、IM2を表わすドキュメントDC1と、2部を示す印刷部数と、印刷方法「コレート印刷」と、を指定する状況を想定する。この場合、端末装置100は、専用プリンタドライバを備えているので、2個の画像IM1、IM2を表わす2個の画像データD1、D2と、2部を示す印刷部数情報と、「コレート印刷」を示す方法情報と、を含む印刷要求R1を生成する。端末装置100は、さらに、ユーザによってユーザ情報ボックスに入力されるユーザ名UN1及びパスワードP1を含むユーザ情報を生成する。端末装置100は、印刷要求R1及びユーザ情報をプリンタ10に供給する際に、ドキュメントDC1内の画像IM1、IM2の順序に従って、画像データD1を先に供給し、画像データD2を後に供給する。
(端末装置200の構成)
図1に戻り、端末装置200の構成を説明する。端末装置200は、専用プリンタドライバに代えて汎用プリンタドライバを記憶している点を除いて、端末装置100と同様である。汎用プリンタドライバは、プリンタ10のベンダとは異なる事業者によって提供され、プリンタ10のベンダを含む複数のプリンタベンダによって提供される様々なプリンタが解釈可能な印刷要求を供給するためのプログラムである。本実施例では、汎用プリンタドライバによって生成される印刷要求は、IPP(Internet Printing Protocolの略)に従った印刷要求である。汎用プリンタドライバは、例えば、プリンタ10のベンダとは異なる事業者によって提供されるインターネット上のサーバから端末装置200にインストールされる。
端末装置200は、汎用プリンタドライバに従って、指定画面SC1と同様の指定画面を表示することができ、ユーザ情報とドキュメントと印刷部数と印刷方法とが当該指定画面で指定されると、指定済みのドキュメントを変換して、プリンタ10を含む様々なプリンタが解釈可能な形式を有する画像データを生成する。特に、印刷対象のドキュメントがN1個の画像を含み、かつ、M1部を示す印刷部数が指定される場合には、端末装置200は、汎用プリンタドライバに従って、(N1×M1)個の画像データと、1部を示す印刷部数情報と、を含む印刷要求を生成する。即ち、汎用プリンタドライバは、専用プリンタドライバとは異なり、複数部であるM1部を示す印刷部数が指定される場合に、N1個の画像データをM1回に亘ってコピーすることによって、(N1×M1)個の画像データを生成するようにプログラムされている。また、汎用プリンタドライバによって生成される印刷要求は、印刷方法を示す方法情報を含まない。1部を示す印刷部数情報は、印刷要求内のヘッダ領域に含まれ、(N1×M1)個の画像データは、印刷要求内のボディ領域に含まれる。端末装置200は、生成済みの印刷要求をプリンタ10に供給する。
端末装置200は、印刷要求をプリンタ10に供給する際に、指定済みの印刷方法に応じた順序に従って、(N1×M1)個の画像データをプリンタ10に供給する。即ち、指定済みの印刷方法がアンコレート印刷である場合には、端末装置200は、N1個の画像のM1部のアンコレート印刷をプリンタ10に実行させるための順序に従って、(N1×M1)個の画像データをプリンタ10に供給する。一方、指定済みの印刷方法がコレート印刷である場合には、端末装置200は、N1個の画像のM1部のコレート印刷をプリンタ10に実行させるための順序に従って、(N1×M1)個の画像データをプリンタ10に供給する。
ここで、図2を参照して、具体例を説明する。例えば、ユーザが、端末装置200において、ドキュメントDC1と、2部を示す印刷部数と、印刷方法「コレート印刷」と、を指定する状況を想定する。この場合、端末装置200は、汎用プリンタドライバを備えているので、2セットの2個の画像データD1、D2(即ち4個の画像データD1、D2、D1、D2)を生成し、4個の画像データD1、D2、D1、D2と、1部を示す印刷部数情報と、を含む印刷要求R2を生成する。印刷要求R2は、「コレート印刷」を示す方法情報を含まない。端末装置200は、さらに、ユーザによってユーザ情報ボックスに入力されるユーザ名UN1及びパスワードP1を含むユーザ情報を生成する。端末装置200は、印刷要求R2及びユーザ情報をプリンタ10に供給する際に、ドキュメントDC1内の画像IM1、IM2の順序と印刷方法「コレート印刷」とに従って、D1、D2、D1、D2の順序で各画像データをプリンタ10に順次供給する。仮に、印刷方法として「コレート印刷」に代えて「アンコレート印刷」が指定される場合には、端末装置200は、ドキュメントDC1内の画像IM1、IM2の順序と印刷方法「アンコレート印刷」とに従って、D1、D1、D2、D2の順序で各画像データをプリンタ10に順次供給する。
(印刷関係処理;図2)
続いて、図2を参照して、プリンタ10のCPU22がプログラム26に従って実行する印刷関係処理の内容を説明する。印刷関係処理は、プリンタ10の電源が投入されることをトリガとして開始される。
S10では、CPU22は、ネットワークI/F16を介して、端末装置(例えば100)から印刷要求及びユーザ情報を取得することが開始されることを監視する。CPU22は、端末装置(例えば100)から印刷要求及びユーザ情報を取得することを開始すると、S10でYESと判断して、S12に進む。
S12では、CPU22は、取得済みの印刷要求内のヘッダ領域に記述されている印刷部数情報が複数部を示すのか否かを判断する。CPU22は、印刷部数情報が1部を示す場合には、S12でNOと判断して、S14において、蓄積処理(図3参照)を実行する。S14が終了すると、S10に戻る。
一方、CPU22は、印刷部数情報が複数部を示す場合には、S12でYESと判断して、S16において、印刷要求内の各情報(即ち、画像データ、複数部を示す印刷部数情報、及び、方法情報)と、ユーザ情報と、を蓄積情報として蓄積領域32に記憶させる。このように、プリンタ10は、印刷部数情報が複数部を示す場合には、S14の蓄積処理を実行せずに、蓄積情報を記憶する。従って、プリンタ10の処理負荷を低減させることができる。S16が終了すると、S10に戻る。
S20では、CPU22は、ユーザ情報が入力部14に入力されることを監視する。CPU22は、ユーザ情報が入力部14に入力される場合に、S20でYESと判断して、S22に進む。
S22では、CPU22は、取得済みのユーザ情報を利用して、ユーザの認証を実行する。具体的には、CPU22は、取得済みのユーザ情報がユーザテーブル28に登録されている場合には、ユーザの認証が成功したと判断して(S22でYES)、S24に進む。一方、CPU22は、取得済みのユーザ情報がユーザテーブル28に登録されていない場合には、ユーザの認証が失敗したと判断して(S22でNO)、S24をスキップして、S10に戻る。
S24では、CPU22は、蓄積領域32に記憶されている1個以上の蓄積情報の中から、取得済みのユーザ情報を含む蓄積情報(以下では「対象蓄積情報」と呼ぶ)を特定する。次いで、CPU22は、対象蓄積情報に含まれる印刷部数情報を特定する。そして、CPU22は、特定済みの印刷部数情報が「1」を示す場合には、対象蓄積情報に含まれる各画像データによって表される各画像の印刷を印刷実行部12に実行させる。一方、CPU22は、特定済みの印刷部数情報が複数部を示す場合には、対象蓄積情報に含まれる各画像データによって表される各画像の印刷を、特定済みの印刷部数情報に対応する回数に亘って、印刷実行部12に繰り返し実行させる。
特に、CPU22は、対象蓄積情報が方法情報を含む場合、即ち、対象蓄積情報が端末装置100から取得された印刷要求(例えばR1)に応じた蓄積情報である場合には、当該方法情報によって示される印刷方法(即ちコレート印刷又はアンコレート印刷)に従って、印刷実行部12に印刷を実行させる。一方、CPU22は、対象蓄積情報が方法情報を含まない場合、即ち、対象蓄積情報が端末装置200から取得された印刷要求(例えばR2)に応じた蓄積情報である場合には、印刷方法を指定するための画面をプリンタ10の表示部(不図示)に表示させる。そして、CPU22は、当該画面でユーザによって指定された印刷方法に従って、印刷実行部12に印刷を実行させる。CPU22は、印刷が完了すると、S26において、対象蓄積情報を蓄積領域32から削除する。S26の処理が終了すると、S10に戻る。
(蓄積処理;図3)
図3を参照して、蓄積処理の内容を説明する。CPU22は、S30において、印刷要求に含まれる1個以上の画像データのうちの1番目の画像データを取得する。具体的には、CPU22は、1個以上の画像データのうち、最初に受信された1番目の画像データをメモリ24内の一時領域30に記憶させ、一時領域30から1番目の画像データを取得する。CPU22は、2回目以降のS30では、2番目、3番目等の画像データを取得する。以下では、S30で取得されるk番目(kは1以上の各整数)の画像データのことを「k番目の画像データ」と呼ぶ。
S32では、CPU22は、k番目の画像データのCRC(Cyclic Redundancy Checkの略)値を算出する。CRC値は、2進数によって表される画像データを所定の除数で除算することによって得られる余りである。所定の除数の桁数は、画像データの桁数より極めて小さい値に設定される。CRC値の桁数は、所定の除数の桁数と等しい。一般的に言えば、CRC値は、画像データを要約化した要約値である。2個の画像データにおいて、一方の画像データのCRC値と他方の画像データのCRC値が一致することは、2個の画像データが同じ画像を表わすこと、即ち、2個の画像データが一致することを意味する。一方、一方のCRC値と他方のCRC値が一致しないことは、2個の画像データが異なる画像を表わすこと、即ち、2個の画像データが一致しないことを意味する。例えば、CRC値を利用せずに、2個の画像データのそれぞれの値を比較して、当該2個の画像データが一致するのか否かを判断する比較例の構成が想定される。比較例の構成では、CRC値より極めて大きい桁数を有する2個の画像データを比較する必要があり、プリンタ10の処理負荷が大きい。これに対して、本実施例では、画像データより極めて小さい桁数を有するCRC値を利用するので、比較例の構成と比べて、プリンタ10の処理負荷を低減することができる。なお、変形例では、CPU22は、CRC値とは異なる他の要約値を利用して、2個の画像データを比較してもよい。例えば、CPU22は、所定のハッシュ関数を利用して、k番目の画像データのハッシュ値を算出し、ハッシュ値を利用して、2個の画像データを比較してもよい。
S34において、CPU22は、k番目の画像データのCRC値がCRCテーブル(例えば図3のCT1)に含まれるいずれかのCRC値に一致するのか否かを判断する。CRCテーブルは、画像データと、当該画像データから算出されるCRC値と、を関連付けて記憶するためのテーブルである。1番目の画像データに対応するS34が実行される際には、CRCテーブルは、CRC値及び画像データを記憶していない。この場合、CPU22は、S34でNOと判断して、S36に進む。また、2番目以降の画像データに対応するS34が実行される際には、CRCテーブルは、少なくとも1個のCRC値及び少なくとも1個の画像データを記憶している。この場合、CPU22は、k番目の画像データのCRC値がCRCテーブルに含まれるいずれかのCRC値に一致する場合には、S34でYESと判断して、S38に進み、k番目の画像データのCRC値がCRCテーブルに含まれるいずれのCRC値にも一致しない場合には、S34でNOと判断して、S36に進む。
S36では、CPU22は、k番目の画像データと当該画像データのCRC値とを関連付けてCRCテーブルに記憶させる。ここで、CPU22は、k番目の画像データ及びCRC値の組合せをCRCテーブルに記憶させるべき際に、他の画像データ及びCRC値の組合せがCRCテーブルに存在する場合には、k番目の画像データ及びCRC値の組合せをCRCテーブル内の最下欄に記憶させる。S36が終了すると、S42に進む。
一方、CPU22は、S34でYESと判断する場合には、S36を実行せずに、S38に進む。即ち、k番目の画像データは、CRCテーブルに記憶されない。この場合、S38では、CPU22は、k番目の画像データのCRC値が1番目の画像データのCRC値に一致するのか否かを判断する。CPU22は、k番目の画像データのCRC値が、CRCテーブル内の最上欄に記述されているCRC値(即ち1番目の画像データのCRC値)に一致する場合には、S38でYESと判断して、S40に進む。一方、CPU22は、k番目の画像データのCRC値が、CRCテーブル内の最上欄に記述されているCRC値に一致しない場合には、S38でNOと判断して、S40をスキップし、S42に進む。
S40では、CPU22は、印刷部数を「1」だけインクリメントする。1回目のS40が実行される際には、印刷要求に含まれる印刷部数情報が1部を示すので、CPU22は、印刷部数「1」を「1」だけインクリメントして、印刷部数「2」を決定する。また、2回目以降のS40では、CPU22は、前回のS40で決定された印刷部数(例えば「2」)を「1」だけインクリメントして、新たな印刷部数(例えば「3」)を決定する。S40が終了すると、S42に進む。
S42では、CPU22は、印刷要求に含まれる全ての画像データを取得したのか否かを判断する。CPU22は、印刷要求内のボディ領域の最後を示す最後情報を取得する場合に、全ての画像データを取得したと判断し(S42でYES)、S40で決定された印刷部数から蓄積領域に記憶されるべき印刷部数情報を生成して、S46に進む。一方、CPU22は、最後情報を取得しない場合に、全ての画像データを取得していないと判断し(S42でNO)、S30に進む。これにより、S30〜S40の処理が繰り返される。
S46では、CPU22は、CRCテーブルに含まれる1個以上の画像データと、生成済みの印刷部数情報と、ユーザ情報と、を蓄積情報として蓄積領域32に記憶させる。ここで、CPU22は、CRCテーブルが2個以上の画像データを含む場合には、CRCテーブル内の最上欄に存在する画像データの順位を「1」に設定し、最上欄から下方に向かうにつれて昇順で画像データの順位を設定する。S46の処理が終了すると、蓄積処理を終了する。なお、CRCテーブル内の情報は、蓄積処理が終了すると削除される。
(アンコレート印刷が指定されるケースA1;図4)
図4を参照して、図2、図3の処理によって実現される具体的なケースを説明する。ケースA1では、汎用プリンタドライバを備える端末装置200において、2個の画像IM1、IM2を表わすドキュメントDC1と、2部を示す印刷部数と、印刷方法「アンコレート印刷」と、がユーザによって指定される。また、端末装置200において、ユーザ名UN1及びパスワードP1を含むユーザ情報がユーザによって指定される。
端末装置200は、汎用プリンタドライバに従って、2セットの2個の画像データD1、D2(即ち4個の画像データ)と、1部を示す印刷部数情報と、を含む印刷要求R3を生成する。そして、端末装置200は、印刷要求R3及びユーザ情報をプリンタ10に供給する。ここで、端末装置200は、2個の画像データD1、D2の2部のアンコレート印刷に対応する順序(即ち、D1、D1、D2、D2の順序)に従って、4個の画像データをプリンタ10に順次供給する。
プリンタ10のCPU22は、端末装置200から印刷要求R3及びユーザ情報を取得することを開始する(図2のS10でYES)と、印刷要求R3内の印刷部数情報が1部を示すので(S12でNO)、蓄積処理を実行する(S14)。CPU22は、D1、D1、D2、D2の順序で4個の画像データを順次取得する(図3のS30)。
CPU22は、まず、1番目の画像データD1とそのCRC値CV1とを関連付けてCRCテーブルCT1に記憶させる(S34でNO、S36)。CPU22は、2番目の画像データD1のCRC値CV1がCRCテーブルCT1に含まれるCRC値CV1に一致すると判断し(S34でYES)、2番目の画像データD1をCRCテーブルCT1に記憶させない。CPU22は、さらに、2番目の画像データD1のCRC値CV1が1番目の画像データD1のCRC値CV1と一致するので(S38でYES)、印刷要求R3に含まれる印刷部数情報によって示される1部を「1」だけインクリメントして、印刷部数「2」を決定する(S40)。
CPU22は、3番目の画像データD2のCRC値CV2がCRCテーブルCT1に含まれるいずれのCRC値にも一致しないと判断し(S34でNO)、3番目の画像データD2とそのCRC値CV2とを関連付けてCRCテーブルCT1に記憶させる(S36)。CPU22は、4番目の画像データD2のCRC値CV2がCRCテーブルCT1に含まれるCRC値CV2に一致すると判断し(S34でYES)、4番目の画像データD2をCRCテーブルCT1に記憶させない。即ち、CPU22は、2個の画像データD1、D2をCRCテーブルCT1に記憶させることによって、2セットの2個の画像データD1、D2(即ち4個の画像データ)の中から2個の画像データD1、D2を特定する。CPU22は、さらに、4番目の画像データD2のCRC値CV2が1番目の画像データのCRC値CV1と一致しないので(S38でNO)、印刷部数「2」をインクリメントしない。
CPU22は、CRCテーブルCT1に含まれる2個の画像データD1、D2と、印刷部数「2」を示す印刷部数情報と、ユーザ情報と、を蓄積情報SI2として蓄積領域32に記憶させる(S46)。蓄積情報SI2は、方法情報を含まない。
その後、ユーザ名UN1及びパスワードP1を含むユーザ情報が入力部14に入力される(図2のS20でYES)。この場合、CPU22は、当該ユーザ情報の認証が成功したと判断し(S22でYES)、蓄積領域32から蓄積情報SI2を特定し、蓄積情報SI2に含まれる印刷部数情報から印刷部数「2」を特定する(S24)。CPU22は、2個の画像データD1、D2によって表される2個の画像IM1、IM2の印刷を、特定済みの印刷部数「2」に対応する回数(即ち2回)に亘って、印刷実行部12に繰り返し実行させる。特に、CPU22は、蓄積情報SI2が方法情報を含まないので、印刷方法を指定するための画面をプリンタ10の表示部に表示させる。当該画面においてユーザによってアンコレート印刷が指定される場合には、CPU22は、IM1、IM1、IM2、IM2の順序に従って、4個の画像の印刷を印刷実行部12に順次実行させる。
(コレート印刷が指定されるケースA2)
ケースA2は、ユーザが印刷方法「コレート印刷」を指定することに起因して、端末装置200において印刷要求R2が生成される点を除いて、ケースA1と同様である。CPU22は、D1、D2、D1、D2の順序で4個の画像データを順次取得する(S30)。
CPU22は、まず、1番目の画像データD1とそのCRC値CV1とを関連付けてCRCテーブルCT1に記憶させる(S34でNO、S36)。CPU22は、2番目の画像データD2のCRC値CV2がCRCテーブルCT1に含まれるいずれのCRC値にも一致しないと判断し(S34でNO)、2番目の画像データD2とそのCRC値CV2とを関連付けてCRCテーブルCT1に記憶させる(S36)。
CPU22は、3番目の画像データD1のCRC値CV1がCRCテーブルCT1に含まれるCRC値CV1に一致すると判断し(S34でYES)、3番目の画像データD1をCRCテーブルCT1に記憶させない。CPU22は、さらに、3番目の画像データD1のCRC値CV1が1番目の画像データD1のCRC値CV1と一致するので(S38でYES)、印刷要求R2に含まれる印刷部数情報によって示される1部を「1」だけインクリメントして、印刷部数「2」を決定する(S40)。CPU22は、4番目の画像データD2のCRC値CV2がCRCテーブルCT1に含まれるCRC値CV2に一致すると判断し(S34でYES)、4番目の画像データD2をCRCテーブルCT1に記憶させない。CPU22は、さらに、4番目の画像データD2のCRC値CV2が1番目の画像データのCRC値CV1と一致しないので(S38でNO)、印刷部数「2」をインクリメントしない。
CPU22は、CRCテーブルCT1に含まれる2個の画像データD1、D2と、印刷部数「2」を示す印刷部数情報と、ユーザ情報と、を蓄積情報SI2として蓄積領域32に記憶させる(S46)。蓄積情報SI2は、方法情報を含まない。ケースA2の蓄積情報SI2は、ケースA1の蓄積情報SI2と同じになる。
その後、ユーザ名UN1及びパスワードP1を含むユーザ情報が入力部14に入力される場合(図2のS20でYES)に、CPU22は、2個の画像データD1、D2によって表される2個の画像IM1、IM2の印刷を、特定済みの印刷部数「2」に対応する回数(即ち2回)に亘って、印刷実行部12に繰り返し実行させる。特に、CPU22は、印刷方法を指定するための画面においてユーザによってコレート印刷が指定されると、IM1、IM2、IM1、IM2の順序に従って、4個の画像の印刷を印刷実行部12に順次実行させる。
(本実施例の効果)
上記のケースA1及びケースA2に示されるように、プリンタ10は、端末装置200から取得される2セットの2個の画像データD1、D2(即ち4個の画像データ)の中から2個の画像データD1、D2を特定して、2個の画像データD1、D2をCRCテーブルCT1に記憶させる。そして、プリンタ10は、CRCテーブルCT1に含まれる2個の画像データD1、D2を蓄積領域32に記憶する。即ち、1セットの2個の画像データD1、D2が蓄積領域32に記憶され、残りの1セットの2個の画像データD1、D2が蓄積領域32に記憶されない。従って、メモリ24内の蓄積領域32に記憶されるべきデータ量が多くなるのを抑制することができる。
また、プリンタ10は、印刷要求R2(又はR3)がユーザによって指定された印刷部数である2部を示す印刷部数情報を含まない場合でも、印刷部数「2」を示す印刷部数情報を含む蓄積情報SI2を記憶することができる。例えば、印刷要求R2(又はR3)がプリンタ10に供給された後に、ユーザが印刷部数の変更を望む状況が想定される。この場合、ユーザは、蓄積情報SI2内の印刷部数情報を変更すれば、所望の印刷部数に従った印刷をプリンタ10に実行させることができる。このために、ユーザの利便性が向上する。
(対応関係)
制御部20が、「制御装置」の一例である。図3のS34の処理が、「第1の一致判断処理」の一例である。図3のS40で算出される印刷部数を示す印刷部数情報が、「部数関係情報」の一例である。蓄積領域32が、「所定領域」の一例である。CRC値が、「要約値」の一例である。印刷要求R2(又はR3)に含まれる印刷部数情報が、「特定情報」の一例である。ユーザ情報が、「認証情報」の一例である。図4のケースA1(又はケースA2)において、図4の印刷要求R2(又はR3)が、「第1の印刷要求」の一例である。ドキュメントDC1を表わす2個の画像IM1、IM2、2個の画像データD1、D2が、それぞれ、「N1個の画像」、「N1個の画像データ」の一例である。ユーザによって指定される2部を示す印刷部数が、「M1部」の一例である。
(第2実施例)
(蓄積処理;図5)
本実施例では、プリンタ10のCPU22は、図2のS14において、図3の処理に代えて、図5の処理を実行する。S50〜S56は、図3のS30〜36と同様である。S54でYESの場合、又は、S56が実行される場合、CPU22は、S60に進む。
S60では、CPU22は、k番目の画像データが取得された順位(即ちk)と、k番目の画像データのCRC値と、を関連づけて順序テーブルに記憶させる。例えば、図5の順序テーブルOT1は、ドキュメントDC1と2部を示す印刷部数と印刷方法「コレート印刷」とがユーザによって指定される場合の順序テーブルの一例である。
S62は、図3のS42と同様である。CPU22は、S50〜S60の処理を繰り返し実行し、S62でYESと判断する場合に、S70に進む。S70では、CPU22は、順序テーブルを利用して、印刷部数と印刷方法を決定するための決定処理(図7参照)を実行する。S72は、決定処理で決定された印刷部数を示す印刷部数情報と、決定処理で決定された印刷方法を示す方法情報と、を含む蓄積情報が記憶される点を除いて、図3のS46と同様である。
(アンコレート印刷が指定されるケースB1;図6)
本実施例の理解の容易化のために、S70の決定処理の内容を説明する前に、図6を参照して、図2、図5の処理によって実現される具体的なケースを説明する。ケースB1では、ユーザは、端末装置200において、2個の同じ画像IM1を含む3個の画像IM1、IM1、IM2を表わすドキュメントDC2と、2部を示す印刷部数と、印刷方法「アンコレート印刷」と、を指定する。この場合、端末装置200は、汎用プリンタドライバに従って、2セットの3個の画像データD1、D1、D2(即ち6個の画像データ)と、1部を示す印刷部数情報(図示省略)と、を含む印刷要求R4を生成する。端末装置200は、3個の画像データD1、D1、D2の2部のアンコレート印刷をプリンタ10に実行させるための順序(即ち、D1、D1、D1、D1、D2、D2の順序)に従って、6個の画像データをプリンタ10に順次供給する。
プリンタ10のCPU22は、端末装置200から、D1、D1、D1、D1、D2、D2の順序で6個の画像データを順次取得する(図5のS50)。この場合、CPU22は、CRCテーブルCT1を生成する(S56)。即ち、CPU22は、2個の画像データD1、D2をCRCテーブルCT1に記憶させることによって、6個の画像データの中から2個の画像データD1、D2を特定する。また、CPU22は、順序テーブルOT2を生成する。順序テーブルOT2では、6個の画像データD1、D1、D1、D1、D2、D2に対応する6個のCRC値CV1、CV1、CV1、CV1、CV2、CV2が、当該6個の画像データのそれぞれの取得順位に関連付けられている。そして、CPU22は、S70の決定処理において、順序テーブルOT2を利用して、ユーザによって指定された印刷部数「2」と、ユーザによって指定された印刷方法「アンコレート印刷」と、を決定する。
次いで、CPU22は、CRCテーブルCT1と順序テーブルOT2と印刷部数「2」と印刷方法「アンコレート印刷」とを利用して、ドキュメントDC2に含まれる3個の画像IM1、IM1、IM2を表わす3個の画像データD1、D1、D2を記憶対象として決定する(S72)。具体的には、CPU22は、まず、順序テーブルOT2の中から、1番目、(1+m)番目、(1+2×m)番目、(1+3×m)番目・・・(mは印刷部数(本ケースでは「2」)を示す整数)に関連付けられている複数個のCRC値を特定する。本ケースでは、CPU22は、1番目のCRC値CV1、3番目のCRC値CV1、及び、5番目のCRC値CV2を特定する。そして、CPU22は、CRCテーブルCT1を利用して、特定済みの複数個のCRC値に対応する複数個の画像データを記憶対象として決定する。本ケースでは、CPU22は、3個のCRC値CV1、CV1、CV2に対応する3個の画像データD1、D1、D2を記憶対象として決定する。次いで、CPU22は、3個の画像データD1、D1、D2と、印刷部数「2」を示す印刷部数情報と、印刷方法「アンコレート印刷」を示す方法情報と、ユーザ情報(ユーザ名UN1とパスワードP1)と、を含む蓄積情報SI3を蓄積領域32に記憶させる(S72)。
CPU22は、ユーザ情報が入力される場合(図2のS20でYES)に、蓄積情報SI3内の3個の画像IM1、IM1、IM2の印刷を、蓄積情報SI3内の印刷部数情報によって示される印刷部数「2」に対応する回数(即ち2回)に亘って、印刷実行部12に繰り返し実行させる。この際に、CPU22は、蓄積情報SI3内の方法情報「アンコレート印刷」に応じて、IM1、IM1、IM1、IM1、IM2、IM2の順序に従って、6個の画像の印刷を印刷実行部12に順次実行させる。
(コレート印刷が指定されるケースB2)
ケースB2は、ユーザが印刷方法「コレート印刷」を指定することに起因して、端末装置200において印刷要求R5が生成される点を除いて、ケースB1と同様である。端末装置200は、3個の画像データD1、D1、D2の2部のコレート印刷をプリンタ10に実行させるための順序(即ち、D1、D1、D2、D1、D1、D2の順序)に従って、6個の画像データをプリンタ10に順次供給する。
CPU22は、D1、D1、D2、D1、D1、D2の順序で6個の画像データを順次取得する(S50)。この場合、CPU22は、CRCテーブルCT1を生成する(S56)。即ち、ケースB2のCRCテーブルCT1は、ケースB1のCRCテーブルCT1と同じである。また、CPU22は、順序テーブルOT3を生成する。順序テーブルOT3では、6個の画像データD1、D1、D2、D1、D1、D2に対応する6個のCRC値CV1、CV1、CV2、CV1、CV1、CV2が、当該6個の画像データのそれぞれの取得順位に関連付けられている。そして、CPU22は、S70の決定処理において、順序テーブルOT3を利用して、ユーザによって指定された印刷部数「2」と、ユーザによって指定された印刷方法「コレート印刷」と、を決定する。
次いで、CPU22は、CRCテーブルCT1と順序テーブルOT3と印刷部数「2」と印刷方法「コレート印刷」とを利用して、ドキュメントDC2に含まれる3個の画像IM1、IM1、IM2を表わす3個の画像データD1、D1、D2を記憶対象として決定する(S72)。具体的には、CPU22は、まず、順序テーブルOT3の最下位の順位(本ケースでは「6」)を印刷部数(本ケースでは「2」)で除算して除算値(本ケースでは「3」)を算出し、順序テーブルOT3から、1番目から除算値の順位(本ケースでは「3番目」)までの各順位に関連付けられている複数個のCRC値を特定する。本ケースでは、CPU22は、1番目のCRC値CV1、2番目のCRC値CV1、及び、3番目のCRC値CV2を特定する。そして、CPU22は、CRCテーブルCT1を利用して、特定済みの複数個のCRC値に対応する複数個の画像データを記憶対象として決定する。本ケースでは、CPU22は、3個のCRC値CV1、CV1、CV2に対応する3個の画像データD1、D1、D2を記憶対象として決定する。次いで、CPU22は、3個の画像データD1、D1、D2と、印刷部数「2」を示す印刷部数情報と、印刷方法「コレート印刷」を示す方法情報と、ユーザ情報(ユーザ名UN1とパスワードP1)と、を含む蓄積情報SI4を蓄積領域32に記憶させる(S72)。
CPU22は、ユーザ情報が入力される場合(図2のS20でYES)に、蓄積情報SI4内の3個の画像IM1、IM1、IM2の印刷を、蓄積情報SI4内の印刷部数情報によって示される印刷部数「2」に対応する回数(即ち2回)に亘って、印刷実行部12に繰り返し実行させる。この際に、CPU22は、蓄積情報SI4内の方法情報「コレート印刷」に応じて、IM1、IM1、IM2、IM1、IM1、IM2の順序に従って、6個の画像の印刷を印刷実行部12に順次実行させる。
(決定処理;図7)
続いて、図7を参照して、図5のS70の決定処理の内容を説明する。CPU22は、S100において、アンコレート印刷を実行するための印刷部数(以下では「アンコレート部数」と呼ぶ)を算出するアンコレート部数処理(図8参照)を実行し、S150において、コレート印刷を実行するための印刷部数(以下では「コレート部数」と呼ぶ)を算出するコレート部数処理(図9参照)を実行する。なお、変形例では、S100、S150は、逆の順序で実行されてもよい。
S200では、CPU22は、算出済みのアンコレート部数が複数部を示すのか否かを判断する。CPU22は、アンコレート部数が複数部を示す場合(S200でYES)に、S202において、算出済みのコレート部数が複数部を示すのか否かを判断する。CPU22は、コレート部数が1部を示す場合(S202でNO)に、S206において、印刷方法として「アンコレート印刷」を決定し、印刷部数として算出済みのアンコレート部数を決定する。S206が終了すると、決定処理が終了する。
一方、CPU22は、コレート部数が複数部を示す場合(S202でYES)に、S204において、印刷方法として「コレート印刷」を決定し、印刷部数として算出済みのコレート部数を決定する。S204が終了すると、決定処理が終了する。
また、CPU22は、アンコレート部数が1部を示す場合(S200でNO)に、S208において、コレート部数が複数部を示すのか否かを判断する。CPU22は、コレート部数が複数部を示す場合(S208でYES)に、S210において、印刷方法として「コレート印刷」を決定し、印刷部数として算出済みのコレート部数を決定する。
一方、CPU22は、コレート部数が1部を示す場合(S208でNO)に、S212において、印刷方法として「コレート印刷」を決定し、印刷部数として「1」を決定する。S210又はS212が終了すると、決定処理が終了する。
(アンコレート部数処理;図8)
図8を参照して、図7のS100のアンコレート部数処理の内容を説明する。S102では、CPU22は、順序テーブル(例えば図6のOT2)において、1番目のCRC値と2番目のCRC値とが同じであるのか否かを判断する。CPU22は、1番目のCRC値と2番目のCRC値とが同じであると判断する場合(S102でYES)に、S104において、終端順位h(hは2以上の整数)を決定する。具体的には、CPU22は、順序テーブルにおいて、1番目から昇順に各CRC値をチェックして、1番目のCRC値とは異なるCRC値が関連付けられている順位が初めて登場する際に、当該順位の直前の順位を終端順位hとして決定する。例えば、CPU22は、順序テーブルOT2において、1番目のCRC値CV1とは異なるCRC値CV2が関連付けられている順位「5」が初めて登場する際に、当該順位「5」の直前の順位「4」を終端順位hとして決定する。
S106では、CPU22は、h+1番目以降の各CRC値が、連続するh個の同じCRC値のセットによって構成されているというアンコレート条件が成立するのか否かを判断する。CPU22は、アンコレート条件が成立しないと判断する場合(S106でNO)に、S108に進む。
S108では、CPU22は、終端順位hを「1」だけデクリメントする。そして、CPU22は、終端順位hが「1」より大きければ(S110でNO)、S106に戻る。CPU22は、終端順位hが「1」に等しくなるまで、アンコレート条件が成立するのか否かの判断を繰り返す。CPU22は、アンコレート条件が成立する場合(S106でYES)に、S120において、アンコレート部数として終端順位hを決定する。S120が終了すると、図8の処理が終了する。
ここで、アンコレート条件について詳しく説明する。例えば、順序テーブルOT2において、順位「4」が終端順位hとして決定される場合には、アンコレート条件は、5番目(即ち(h+1)番目)以降の各CRC値が、連続する4個(即ちh個)の同じCRC値のセットによって構成されていることである。本ケースでは、5番目以降の各CRC値
CV2、CV2は、連続する4個の同じCRC値のセットによって構成されていない。従って、CPU22は、アンコレート条件が成立しないと判断して(S106でNO)、終端順位hを「4」から「3」にデクリメントする(S108)。この場合、アンコレート条件は、4番目(即ち(h+1)番目)以降の各CRC値が、連続する3個(即ちh個)の同じCRC値のセットによって構成されていることである。本ケースでは、4番目以降の各CRC値CV1、CV2、CV2は、連続する3個の同じCRC値のセットによって構成されていない。従って、CPU22は、アンコレート条件が成立しないと判断して(S106でNO)、終端順位hを「3」から「2」にデクリメントする(S108)。この場合、アンコレート条件は、3番目(即ち(h+1)番目)以降の各CRC値が、連続する2個(即ちh個)の同じCRC値のセットによって構成されていることである。本ケースでは、3番目以降の各CRC値CV1、CV1、CV2、CV2は、連続する2個の同じCRC値CV1、CV1のセットと、連続する2個の同じCRC値CV2、CV2のセットと、によって構成されている。従って、CPU22は、アンコレート条件が成立すると判断し(S106でYES)、アンコレート部数として「2(即ち終端順位h)」を算出する(S120)。
また、CPU22は、1番目のCRC値と2番目のCRC値とが異なると判断する場合(S102でNO)、又は、終端順位hが「1」に等しい場合(S110でYES)に、S122において、アンコレート部数として「1」を算出する。S122が終了すると、図8の処理が終了する。
(コレート部数処理;図9)
図9を参照して、図7のS150のコレート部数処理の内容を説明する。S152では、CPU22は、順序テーブル(例えば図6のOT3)が1番目のCRC値と同じCRC値を含むのか否かを判断する。CPU22は、順序テーブルが1番目のCRC値と同じCRC値を含むと判断する場合(S152でYES)に、S154において、当該CRC値に関連付けられている1個以上の順位の中から最上位の順位を選択する。例えば、CPU22は、順序テーブルOT3から、1番目のCRC値CV1と同じCRC値CV1に関連付けられている3個の順位(即ち、2番目、4番目、5番目)を特定し、当該3個の順位の中から最上位の順位「2」を選択する。
S156では、CPU22は、S154で選択された選択済みの順位以降の各CRC値が、当該選択済みの順位より前の各CRC値のセットの繰り返しであるというコレート条件が成立するのか否かを判断する。CPU22は、コレート条件が成立しないと判断する場合(S156でNO)に、S158において、1番目のCRC値と同じCRC値に関連付けられている1個以上の順位の中に、S154で未だに選択されていない順位が存在するのか否かを判断する。CPU22は、未選択の順位が存在する場合(S158でYES)に、S154に戻り、未選択の順位の中から最上位の順位を新たに選択し、S156の処理を再び実行する。CPU22は、未選択の順位が存在しなくなるまで、S154及びS156の処理を繰り返す。CPU22は、その繰り返しの過程において、コレート条件が成立する場合(S156でYES)に、S160に進む。
ここで、コレート条件について詳しく説明する。例えば、順序テーブルOT3において、最上位の順位として「2」が選択される場合には、コレート条件は、2番目以降の各CRC値が、2番目より前の各CRC値のセットの繰り返しであることである。本ケースでは、2番目以降の各CRC値CV1、CV2、CV1、CV1、CV2は、2番目より前の各CRC値のセット(即ちCV1)の繰り返しではない。従って、CPU22は、コレート条件が成立しないと判断し(S156でNO)、未選択の順位の中から最上位の順位として「4」を新たに選択する(S154)。この場合、コレート条件は、4番目以降の各CRC値が、4番目より前の各CRC値のセットの繰り返しであることである。本ケースでは、4番目以降の各CRC値CV1、CV1、CV2は、4番目より前の各CRC値のセット(即ちCV1、CV1、CV2)の繰り返しである。CPU22は、コレート条件が成立すると判断し(S156でYES)、S160に進む。
S160では、CPU22は、まず、最後のS154で選択された順位から「1」を減算して中間値を算出する。そして、CPU22は、順序テーブルの最下位の順位(即ち印刷要求に含まれる画像データの総数)を中間値で除算することによって、コレート部数を算出する。例えば、順序テーブルOT3において、最後のS154で順位「4」が選択される場合には、CPU22は、「4」から「1」を減算して中間値「3」を算出する。そして、CPU22は、順序テーブルOT3の最下位の順位「6」を中間値「3」で除算することによって、コレート部数として「2」を算出する(S160)。S160が終了すると、図9の処理が終了する。
また、CPU22は、順序テーブルが1番目のCRC値と同じCRC値を含まないと判断する場合(S152でNO)、又は、未選択の順位が存在しない場合(S158でNO)に、S162において、コレート部数として「1」を算出する。S162が終了すると、図9の処理が終了する。
(本実施例の効果)
本実施例では、図6のケースB1及びケースB2に示されるように、プリンタ10は、端末装置200から取得される2セットの3個の画像データD1、D1、D2(即ち6個の画像データ)の中から3個の画像データD1、D1、D2を特定して、3個の画像データD1、D1、D2を蓄積領域32に記憶する。即ち、1セットの3個の画像データD1、D1、D2が蓄積領域32に記憶され、残りの1セットの3個の画像データD1、D1、D2が蓄積領域32に記憶されない。従って、メモリ24内の蓄積領域32に記憶されるべきデータ量が多くなるのを抑制することができる。
また、第1実施例において、例えば、プリンタ10が、端末装置200から、ケースB1の2セットの3個の画像データD1、D1、D2を含む印刷要求R5を取得する状況が想定される。この場合、プリンタ10は、図3のS40において、3回に亘って印刷部数をインクリメントするので、ユーザによって指定された印刷部数「2」とは異なる印刷部数「4」を決定する。これに対し、本実施例では、プリンタ10は、図8のアンコレート部数処理において、ユーザによって指定された印刷部数「2」と同じ印刷部数「2」を適切に決定することができる。また、第1実施例において、例えば、プリンタ10が、端末装置200から、ケースB2の印刷要求R6を取得する状況も想定される。この場合も、プリンタ10は、ユーザによって指定された印刷部数「2」とは異なる印刷部数「4」を決定する(図3のS40)。これに対し、本実施例では、プリンタ10は、図9のコレート部数処理において、ユーザによって指定された印刷部数「2」と同じ印刷部数「2」を適切に決定することができる。即ち、本実施例によると、印刷対象のドキュメントが3個以上の画像を表わし、かつ、当該3個以上の画像が2個以上の同じ画像を含み、かつ、複数部を示す印刷部数が指定される場合でも、指定済みの印刷部数と同じ印刷部数を適切に決定することができる。
また、第1実施例では、プリンタ10は、汎用プリンタドライバを備える端末装置200から印刷要求を取得する場合に、プリンタ10に表示される画面においてユーザによって印刷方法が指定されない限り、印刷方法を決定することができない。これに対し、本実施例では、プリンタ10は、端末装置200においてユーザによって複数部が指定される場合に、端末装置200においてユーザによって指定された印刷方法と同じ印刷方法を適切に決定することができる(図7のS204、S206、S210)。そして、プリンタ10は、決定済みの印刷方法を示す方法情報を含む蓄積情報を記憶し(図5のS72)、当該方法情報に従った印刷を実行することができる(図2のS24)。ユーザは、プリンタ10において印刷方法を指定せずに済み、この結果、ユーザの利便性が向上する。
また、本実施例でも、プリンタ10は、図4のケースA1及びA2のように、端末装置200から、2セットの2個の画像データD1、D2(即ち、4個の画像データ)を含む印刷要求を取得し得る。このような場合でも、プリンタ10は、図5及び図7〜図9の処理を実行することによって、4個の画像データの中から2個の画像データD1、D2を特定し、特定済みの2個の画像データD1、D2を蓄積領域32に適切に記憶することができる。
(特殊なケース;図10)
図10を参照して、本実施例の特殊なケースを説明する。本ケースでは、ユーザが、端末装置200において、2個の同じ画像IM1と2個の同じ画像IM2とを含む4個の画像IM1、IM1、IM2、IM2を表わすドキュメントDC3と、2部を示す印刷部数と、印刷方法「コレート印刷」と、を指定するこの場合、端末装置200は、汎用プリンタドライバに従って、2セットの4個の画像データD1、D1、D2、D2(即ち8個の画像データ)と、1部を示す印刷部数情報(図示省略)と、を含む印刷要求R6を生成する。端末装置200は、4個の画像データD1、D1、D2、D2の2部のコレート印刷をプリンタ10に実行させるための順序(即ち、D1、D1、D2、D2、D1、D1、D2、D2の順序)に従って、8個の画像データをプリンタ10に順次供給する。
プリンタ10のCPU22は、端末装置200から、D1、D1、D2、D2、D1、D1、D2、D2の順序で8個の画像データを順次取得する(図5のS50)。この場合、CPU22は、CRCテーブルCT1を生成する(S56)。また、CPU22は、順序テーブルOT4を生成する。順序テーブルOT4では、8個の画像データD1、D1、D2、D2、D1、D1、D2、D2に対応する8個のCRC値CV1、CV1、CV2、CV2、CV1、CV1、CV2、CV2が、当該8個の画像データのそれぞれの取得順位に関連付けられている。
CPU22は、順序テーブルOT4を利用して、決定処理を実行する(図5のS70)。この際に、CPU22は、アンコレート部数処理(図7のS100)において、1番目のCRC値CV1とは異なるCRC値CV2が関連付けられている順位「3」が初めて登場する際に、当該順位「3」の直前の順位「2」を終端順位hとして決定する(図8のS104)。この場合、アンコレート条件は、3番目(即ち(h+1)番目)以降の各CRC値が、連続する2個(即ちh個)の同じCRC値のセットによって構成されていることである。本ケースでは、3番目以降の各CRC値CV2、CV2、CV1、CV1、CV2、CV2は、連続する2個の同じCRC値CV1のセット(即ちCV1、CV1)と、連続する2個の同じCRC値CV2のセット(即ちCV2、CV2)と、によって構成されている。従って、CPU22は、アンコレート条件が成立すると判断し(S106でYES)、アンコレート部数として終端順位hに対応する「2」を算出する(S120)。
また、CPU22は、コレート部数処理(図7のS150)において、順序テーブルOT4から、1番目のCRC値CV1と同じCRC値CV1に関連付けられている3個の順位(即ち、2番目、5番目、6番目)を特定し、当該3個の順位の中から最上位の順位「2」を選択する(S154)。この場合、コレート条件は、2番目以降の各CRC値が、2番目より前の各CRC値のセットの繰り返しであることである。本ケースでは、2番目以降の各CRC値CV1、CV2、CV2、CV1、CV1、CV2、CV2は、1番目のCRC値のセット(即ちCV1)の繰り返しではない。従って、CPU22は、コレート条件が成立しないと判断し(S156でNO)、未選択の順位の中から最上位の順位として「5」を新たに選択する(S154)。この場合、この場合、コレート条件は、5番目以降の各CRC値が、5番目より前の各CRC値のセットの繰り返しであることである。本ケースでは、5番目以降の各CRC値CV1、CV1、CV2、CV2は、5番目より前の各CRC値のセット(即ちCV1、CV1、CV2、CV2)の繰り返しである。従って、CPU22は、コレート条件が成立すると判断する(S156でYES)。そして、CPU22は、選択済みの順位「5」から「1」を減算して中間値「4」を算出し、順序テーブルOT4の最下位の順位「8」を中間値「4」で除算することによって、コレート部数として「2」を算出する(S160)。
CPU22は、アンコレート部数処理でアンコレート部数「2」が算出され、コレート部数処理でコレート部数「2」が算出されるので(図7のS200でYES、S202でYES)、印刷方法を「コレート印刷」に決定し、印刷部数をコレート部数「2」に決定する(S204)。ところで、端末装置200において表示される画面SC1(図1参照)は、デフォルト状態ではコレート印刷に設定されている。このために、ユーザがコレート印刷を指定する可能性が高い。従って、CPU22は、アンコレート部数及びコレート部数の双方が複数部を示す場合(図7のS200でYES、S202でYES)に、ユーザによって指定される可能性が高い「コレート印刷」を印刷方法として優先的に決定する(S204)。なお、変形例では、CPU22は、アンコレート部数及びコレート部数の双方が複数部を示す場合(図7のS200でYES、S202でYES)に、印刷方法として「アンコレート印刷」を優先的に決定してもよい。この場合、CPU22は、印刷部数としてアンコレート部数を決定してもよい。
CPU22は、印刷部数「2」と印刷方法「コレート印刷」と順序テーブルOT4とCRCテーブルCT1を利用して、4個の画像データD1、D1、D2、D2を特定する。CPU22は、当該4個の画像データと、印刷部数「2」を示す印刷部数情報と、印刷方法「コレート印刷」を示す方法情報と、ユーザ情報(ユーザ名UN1とパスワードP1)と、を蓄積情報SI5として蓄積領域32に記憶させる(図5のS72)。このように、本実施例によると、図10のような特殊なケースでも、蓄積情報SI5を蓄積領域32に適切に記憶させることができる。
(対応関係)
図5のS54の処理が、「第2の一致判断処理」の一例である。順序テーブルが、「順序情報」の一例である。CRC値が、「対応情報」の一例である。コレート印刷を示す方法情報、アンコレート印刷を示す方法情報が、それぞれ、「コレート情報」、「アンコレート情報」の一例である。図6のケースB1(又はケースB2)において、印刷要求R4(又はR5)が、「第2の印刷要求」の一例である。ドキュメントDC2を表わす3個の画像IM1、IM1、IM2、3個の画像データD1、D1、D2が、それぞれ、「N2個の画像」、「N2個の画像データ」の一例である。ユーザによって指定される2部を示す印刷部数が、「M2部」の一例である。3個の画像データD1、D1、D2のうちの2個の同じ画像データD1、D1が、「L個の画像データ」の一例である。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)プリンタ10は、印刷要求に含まれる全ての画像データを取得した後に、全ての画像データに対応する全てのCRC値を算出してもよい。そして、プリンタ10は、まず、1番目のCRC値が2番目以降の各CRC値に一致するのか否かを判断し、次いで、2番目のCRC値が3番目以降の各CRC値に一致するのか否かを判断してもよい。そして、プリンタ10は、3番目以降の各CRC値についても同様に一致判断を実行してもよい。本変形例の処理も、「第1の一致判断処理」の一例である。
(変形例2)プリンタ10は、端末装置から印刷仲介サーバを介して印刷要求を取得してもよい。この場合、端末装置は、プリンタドライバを備えていなくてもよく、印刷仲介サーバがプリンタドライバを備えていればよい。即ち、端末装置が、印刷対象のドキュメントと印刷部数と印刷方法を印刷仲介サーバに供給し、印刷仲介サーバが、プリンタドライバを利用して印刷要求を生成して、当該印刷要求をプリンタ10供給してもよい。一般的に言えば、「制御装置」は、端末装置から他の装置を介して第1(又は第2)の印刷要求を取得してもよい。
(変形例3)プリンタ10は、図5のS70の処理を実行せずに、CRCテーブルと順序テーブルとを蓄積情報として蓄積領域32に記憶してもよい。そして、プリンタ10は、順序テーブルによって表される順序に従って、CRCテーブルに含まれる1個以上の画像データによって表される1個以上の画像の印刷を実行してもよい。本変形例では、順序テーブルが「部数関係情報」の一例である。
(変形例4)プリンタ10は、図2のS12において、取得済みの印刷要求に含まれるプロトコル情報がIPPを示す場合に、S14に進み、当該プロトコル情報がIPPを示さない場合に、S16に進んでもよい。プロトコル情報は、印刷要求の通信に利用されている通信プロトコルを示す情報である。プロトコル情報がIPPを示すことは、印刷要求が汎用プリンタドライバによって生成された可能性が高いことを意味する。また、他の変形例では、プリンタ10は、図2のS12において、取得済みの印刷要求に含まれる画像データの形式を示す形式情報が所定の形式(例えばラスタ形式)を示す場合に、S14に進み、形式情報が所定の形式を示さない場合に、S16に進んでもよい。例えば、汎用プリンタドライバによって生成される画像データの形式が所定の形式に限られる状況が想定される。この場合には、印刷要求に含まれる画像データの形式が所定の形式であることは、印刷要求が汎用プリンタドライバによって生成された可能性が高いことを意味する。これらの変形例では、プロトコル情報又は形式情報が、「特定情報」の一例である。
(変形例5)上記の実施例では、プリンタ10は、k番目の画像データが取得された順位と、k番目の画像データのCRC値と、を関連づけて順序テーブルに記憶する(図5のS60)。これに代えて、プリンタ10は、k番目の画像データが取得された順位と、k番目の画像データの識別情報(例えば画像データ名)と、を関連づけて順序テーブルに記憶してもよい。本変形例では、識別情報が、「対応情報」の一例である。
(変形例6)プリンタ10は、図2のS10において、ユーザ情報を取得する代わり、端末装置100又は200においてユーザによって入力されたPIN(Personal Identification Numberの略)コードを取得してもよい。この場合、図1の指定画面SC1は、ユーザ情報ボックスに代えて、PINコードを指定するためのコードボックスを含んでもよい。そして、PINコードがユーザによってコードボックスに入力されると、プリンタ10は、図2のS10において、端末装置から入力済みのPINコードを取得し、図3のS46において、当該PINコードを蓄積情報として蓄積領域32に記憶してもよい。そして、プリンタ10は、図2のS20において、当該PINコードが入力部14に入力される場合に、取得済みのPINコードを含む蓄積情報を特定し、特定済みの蓄積情報に含まれる画像データによって表される画像の印刷を実行してもよい。本変形例では、プリンタ10は、ユーザテーブル28(図1参照)を備えなくてもよい。本変形例では、PINコードが、「認証情報」の一例である。
(変形例7)上記の図6のケースB1では、蓄積情報SI3は、2番目の画像データとして画像データD1を含む。これに代えて、蓄積情報SI3は、2番目の画像データの代わりに、2番目の画像データが1番目の画像データD1と同じであることを示す情報を含んでいてもよい。即ち、蓄積情報SI3は、1セットの3個の画像データD1、D1、D2のうちの互いに異なる2個の画像データD1、D2のみを含んでもよい。一般的には、「第3の記憶制御部」は、(N2×M2)個の画像データのうちの少なくとも特定済みのL個の画像データをメモリ内の所定領域に記憶させればよい。
(変形例8)「制御装置」は、プリンタ10の制御部20でなくてもよく、例えば、プリンタ10と通信可能なPC、サーバ等であってもよい。例えば、PCは、端末装置から印刷要求及びユーザ情報を取得すると、当該印刷情報に含まれる画像データと当該ユーザ情報を蓄積情報としてPC内のメモリの所定領域に記憶してもよい。そして、PCは、ユーザ情報がPCの入力部に入力されると、当該ユーザ情報を含む蓄積情報に含まれる画像データをプリンタ10に供給して、当該画像データによって表される画像の印刷をプリンタ10に実行させてもよい。本変形例では、PC、プリンタ10が、それぞれ、「制御装置」、「印刷実行部」の一例である。
(変形例9)プリンタ10は、図3のS38、S40の処理を実行せずに、S42でYESと判断された後に、印刷要求に含まれる画像データの総数をCRCテーブルに含まれる画像データの総数で除算することによって、印刷部数を決定してもよい。本変形例では、上記の除算によって印刷部数を決定することが、「部数関係情報を生成すること」の一例である。
(変形例10)図2のS12、S16の処理は実行されなくてもよい。本変形例では、「要求判断部」、「第2の記憶制御部」、「第2の印刷制御部」を省略可能である。
(変形例11)プリンタ10は、図2のS10において、ユーザ情報を取得しなくてもよい。そして、プリンタ10は、S20、S22の処理を実行せずに、蓄積情報を蓄積領域に記憶してから所定時間が経過した後の所定のタイミングで、当該蓄積情報に含まれる画像データによって表される画像の印刷を実行してもよい。本変形例では、「認証情報取得部」を省略可能である。
(変形例12)上記の実施例では、プリンタ10のCPU22がプログラム26(即ちソフトウェア)を実行することによって、図2、図3、図5、図7〜図9の各処理が実現される。これに代えて、いずれかの処理は、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
2:通信システム、4:LAN、10:プリンタ、100、200:端末装置、12:印刷実行部、14:入力部、16:ネットワークI/F、20:制御部、22:CPU、24:メモリ、26:プログラム、28:ユーザテーブル、30:一時領域、32:蓄積領域

Claims (10)

  1. 印刷実行部に印刷を実行させるための制御装置であって、
    メモリと、
    端末装置において、互いに異なるN1個(前記N1は2以上の整数)の画像がユーザによって指定される場合に、前記端末装置から、少なくとも前記N1個の画像を表わす少なくともN1個の画像データを含む第1の印刷要求を取得する第1の印刷要求取得部と、
    前記端末装置において、前記N1個の画像と、M1部(前記M1は2以上の整数)を示す印刷部数と、が前記ユーザによって指定されることに起因して、前記第1の印刷要求が、(N1×M1)個の画像を表わす(N1×M1)個の画像データを含む第1の場合に、前記(N1×M1)個の画像データにおいて、各画像データが他の画像データと一致するのか否かを判断する第1の一致判断処理を実行する第1の一致判断部と、
    前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記(N1×M1)個の画像データの中から前記N1個の画像データを特定する第1の特定部と、
    前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記N1個の画像の印刷部数に関係する部数関係情報を生成する関係情報生成部と、
    前記第1の場合に、前記(N1×M1)個の画像データのうちの特定済みの前記N1個の画像データと、前記部数関係情報と、を前記メモリ内の所定領域に記憶させる第1の記憶制御部であって、前記(N1×M1)個の画像データのうち、特定済みの前記N1個の画像データ以外の(N1×(M1−1))個の画像データは、前記所定領域に記憶されない、前記第1の記憶制御部と、
    前記N1個の画像データと前記部数関係情報とが前記所定領域に記憶された後に、前記N1個の画像データと前記部数関係情報とを利用して、前記(N1×M1)個の画像の印刷を前記印刷実行部に実行させる第1の印刷制御部と、
    を備える制御装置。
  2. 前記第1の一致判断部は、前記(N1×M1)個の画像データのうち、k番目(kは2以上(N1×M1)以下の各整数)に取得されるk番目の画像データが、1番目から(k−1)番目に取得される(k−1)個の画像データのいずれかに一致するのか否かを判断する前記第1の一致判断処理を実行し、
    前記第1の特定部は、
    前記第1の一致判断処理において、前記k番目の画像データが前記(k−1)個の画像データのいずれにも一致しないと判断される場合に、前記k番目の画像データを前記N1個の画像データに含まれる画像データとして特定し、
    前記第1の一致判断処理において、前記k番目の画像データが前記(k−1)個の画像データのいずれかに一致すると判断される場合に、前記k番目の画像データを前記N1個の画像データに含まれる画像データとして特定しない、請求項1に記載の制御装置。
  3. 前記第1の一致判断部は、
    前記(N×M)個の画像データのそれぞれについて、当該画像データを要約化することによって要約値を算出し、
    前記(N1×M1)個の画像データにおいて、各画像データについて算出される各要約値が他の画像データについて算出される要約値と一致するのか否かを判断する前記第1の一致判断処理を実行する、請求項1又は2に記載の制御装置。
  4. 前記制御装置は、さらに、
    前記第1の印刷要求に含まれる特定情報を利用して、前記第1の印刷要求が、前記(N1×M1)個の画像データを含むのか、前記(N1×M1)個の画像データを含まずに前記N1個の画像データを含むのか否かを判断する要求判断部を備え、
    前記第1の場合は、前記第1の印刷要求が前記(N1×M1)個の画像データを含むと判断される場合であり、
    前記制御装置は、さらに、
    前記第1の印刷要求が前記(N1×M1)個の画像データを含まずに前記N1個の画像データを含むと判断される第2の場合に、前記第1の印刷要求に含まれる前記N1個の画像データと、前記第1の印刷要求に含まれる印刷部数情報であって、前記M1部を示す前記印刷部数情報と、を前記メモリ内の前記所定領域に記憶させる第2の記憶制御部と、
    前記N1個の画像データと前記印刷部数情報とが前記所定領域に記憶された後に、前記N1個の画像データと前記印刷部数情報とを利用して、前記(N1×M1)個の画像の印刷を前記印刷実行部に実行させる第2の印刷制御部と、
    を備える、請求項1から3のいずれか一項に記載の制御装置。
  5. 前記特定情報は、前記第1の印刷要求に含まれる印刷部数情報であり、
    前記要求判断部は、
    前記第1の印刷要求が1部を示す前記印刷部数情報を含む場合に、前記第1の印刷要求が前記(N1×M1)個の画像データを含むと判断し、
    前記第1の印刷要求が前記M1部を示す前記印刷部数情報を含む場合に、前記第1の印刷要求が前記(N1×M1)個の画像データを含まずに前記N1個の画像データを含むと判断する、請求項4に記載の制御装置。
  6. 前記関係情報生成部は、前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記N1個の画像の印刷部数である前記M1部を示す前記部数関係情報を生成する、請求項1から5のいずれか一項に記載の制御装置。
  7. 前記制御装置は、さらに、
    前記端末装置において、N2個(前記N2は3以上の整数)の画像と、M2部(前記M2は2以上の整数)を示す印刷部数と、が前記ユーザによって指定される場合に、前記端末装置から、(N2×M2)個の画像を表わす(N2×M2)個の画像データを含む第2の印刷要求を取得する第2の印刷要求取得部であって、前記N2個の画像は、2個以上の同じ画像を含む、前記第2の印刷要求取得部と、
    前記端末装置から前記第2の印刷要求が取得される第3の場合に、前記(N2×M2)個の画像データにおいて、各画像データが他の画像データと一致するのか否かを判断する第2の一致判断処理を実行する第2の一致判断部と、
    前記第3の場合に、前記第2の一致判断処理の結果を利用して、前記(N2×M2)個の画像データの中から、互いに異なるL(前記Lは前記N2未満の整数)個の画像データを特定する第2の特定部と、
    前記第3の場合に、前記(N2×M2)個の画像データに対応する前記(N2×M2)個の対応情報と、前記(N2×M2)個の画像データが取得された順序と、が関連付けられている順序情報を生成する順序情報生成部と、
    前記第3の場合に、前記順序情報を利用して、前記M2部を示す印刷部数情報を生成する部数情報生成部と、
    前記第3の場合に、前記(N2×M2)個の画像データのうちの少なくとも特定済みの前記L個の画像データと、前記印刷部数情報と、を前記メモリ内の前記所定領域に記憶させる第3の記憶制御部と、
    少なくとも前記L個の画像データと前記印刷部数情報とが前記所定領域に記憶された後に、少なくとも前記L個の画像データと前記印刷部数情報とを利用して、前記(N2×M2)個の画像の印刷を前記印刷実行部に実行させる第3の印刷制御部と、
    を備える、請求項1から6のいずれか一項に記載の制御装置。
  8. 前記部数情報生成部は、
    前記順序情報を利用して、前記N2個の画像のコレート印刷を実行するための第1の印刷部数を算出し、
    前記順序情報を利用して、前記N2個の画像のアンコレート印刷を実行するための第2の印刷部数を算出し、
    前記第1の印刷部数が複数部を示し、かつ、前記第2の印刷部数が1部を示す場合に、前記第1の印刷部数である前記M2部を示す前記印刷部数情報を決定し、
    前記第2の印刷部数が複数部を示し、かつ、前記第1の印刷部数が1部を示す場合に、前記第2の印刷部数である前記M2部を示す前記印刷部数情報を決定し、
    前記第1の印刷部数が複数部を示し、かつ、前記第2の印刷部数が1部を示す場合に、
    前記第3の記憶制御部は、少なくとも前記L個の画像データと、前記印刷部数情報と、コレート印刷を示すコレート情報と、を前記所定領域に記憶させ、
    前記第3の印刷制御部は、少なくとも前記L個の画像データと前記印刷部数情報とを利用して、前記N2個の画像の前記M2部のコレート印刷を前記印刷実行部に実行させ、
    前記第2の印刷部数が複数部を示し、かつ、前記第1の印刷部数が1部を示す場合に、
    前記第3の記憶制御部は、少なくとも前記L個の画像データと、前記印刷部数情報と、アンコレート印刷を示すアンコレート情報と、を前記所定領域に記憶させ、
    前記第3の印刷制御部は、少なくとも前記L個の画像データと前記印刷部数情報とを利用して、前記N2個の画像の前記M2部のアンコレート印刷を前記印刷実行部に実行させる、請求項7に記載の制御装置。
  9. 前記制御装置は、さらに、
    前記端末装置から、認証で利用されるべき認証情報を取得する認証情報取得部を備え、
    前記第1の記憶制御部は、前記第1の場合に、前記N1個の画像データと、前記部数関係情報と、前記認証情報と、を前記所定領域に記憶させ、
    前記第1の印刷制御部は、前記N1個の画像データと前記部数関係情報と前記認証情報とが前記所定領域に記憶された後に、記憶済みの前記認証情報に一致する情報を入力するための動作が前記ユーザによって実行される場合に、前記N1個の画像データと前記部数関係情報とを利用して、前記(N1×M1)個の画像の印刷を前記印刷実行部に実行させる、請求項1から8のいずれか一項に記載の制御装置。
  10. 印刷実行部に印刷を実行させるための制御装置のためのコンピュータプログラムであって、
    前記コンピュータプログラムは、前記制御装置のコンピュータを、
    端末装置において、互いに異なるN1個(前記N1は2以上の整数)の画像がユーザによって指定される場合に、前記端末装置から、少なくとも前記N1個の画像を表わす少なくともN1個の画像データを含む第1の印刷要求を取得する第1の印刷要求取得部と、
    前記端末装置において、前記N1個の画像と、M1部(前記M1は2以上の整数)を示す印刷部数と、が前記ユーザによって指定されることに起因して、前記第1の印刷要求が、(N1×M1)個の画像を表わす(N1×M1)個の画像データを含む第1の場合に、前記(N1×M1)個の画像データにおいて、各画像データが他の画像データと一致するのか否かを判断する第1の一致判断処理を実行する第1の一致判断部と、
    前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記(N1×M1)個の画像データの中から前記N1個の画像データを特定する第1の特定部と、
    前記第1の場合に、前記第1の一致判断処理の結果を利用して、前記N1個の画像の印刷部数に関係する部数関係情報を生成する関係情報生成部と、
    前記第1の場合に、前記(N1×M1)個の画像データのうちの特定済みの前記N1個の画像データと、前記部数関係情報と、を前記制御装置のメモリ内の所定領域に記憶させる第1の記憶制御部であって、前記(N1×M1)個の画像データのうち、特定済みの前記N1個の画像データ以外の(N1×(M1−1))個の画像データは、前記所定領域に記憶されない、前記第1の記憶制御部と、
    前記N1個の画像データと前記部数関係情報とが前記所定領域に記憶された後に、前記N1個の画像データと前記部数関係情報とを利用して、前記(N1×M1)個の画像の印刷を前記印刷実行部に実行させる第1の印刷制御部と、
    として機能させる、コンピュータプログラム。
JP2017046586A 2017-03-10 2017-03-10 制御装置 Active JP6957906B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017046586A JP6957906B2 (ja) 2017-03-10 2017-03-10 制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017046586A JP6957906B2 (ja) 2017-03-10 2017-03-10 制御装置

Publications (2)

Publication Number Publication Date
JP2018149723A true JP2018149723A (ja) 2018-09-27
JP6957906B2 JP6957906B2 (ja) 2021-11-02

Family

ID=63679912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017046586A Active JP6957906B2 (ja) 2017-03-10 2017-03-10 制御装置

Country Status (1)

Country Link
JP (1) JP6957906B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020060849A (ja) * 2018-10-05 2020-04-16 キヤノン株式会社 情報処理装置、制御方法及びプログラム

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030038964A1 (en) * 2001-08-17 2003-02-27 Ferlitsch Andrew Rodney Methods and systems for page-independent spool file face-up emulation
JP2003131824A (ja) * 2001-10-22 2003-05-09 Ricoh Co Ltd 画像形成装置
JP2005169944A (ja) * 2003-12-12 2005-06-30 Canon Inc 出力装置、出力方法及びそのプログラム
JP2008049627A (ja) * 2006-08-25 2008-03-06 Casio Electronics Co Ltd 印刷装置
JP2008173878A (ja) * 2007-01-19 2008-07-31 Konica Minolta Business Technologies Inc 画像形成装置
JP2011061470A (ja) * 2009-09-09 2011-03-24 Murata Machinery Ltd 画像形成装置
JP2016021137A (ja) * 2014-07-14 2016-02-04 株式会社リコー 駆動用プログラム、画像形成装置の駆動方法及び情報処理装置
US20160342369A1 (en) * 2015-05-20 2016-11-24 Canon Kabushiki Kaisha Image forming apparatus, information processing method, and storage medium

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030038964A1 (en) * 2001-08-17 2003-02-27 Ferlitsch Andrew Rodney Methods and systems for page-independent spool file face-up emulation
JP2003131824A (ja) * 2001-10-22 2003-05-09 Ricoh Co Ltd 画像形成装置
JP2005169944A (ja) * 2003-12-12 2005-06-30 Canon Inc 出力装置、出力方法及びそのプログラム
JP2008049627A (ja) * 2006-08-25 2008-03-06 Casio Electronics Co Ltd 印刷装置
JP2008173878A (ja) * 2007-01-19 2008-07-31 Konica Minolta Business Technologies Inc 画像形成装置
JP2011061470A (ja) * 2009-09-09 2011-03-24 Murata Machinery Ltd 画像形成装置
JP2016021137A (ja) * 2014-07-14 2016-02-04 株式会社リコー 駆動用プログラム、画像形成装置の駆動方法及び情報処理装置
US20160342369A1 (en) * 2015-05-20 2016-11-24 Canon Kabushiki Kaisha Image forming apparatus, information processing method, and storage medium
JP2016215624A (ja) * 2015-05-20 2016-12-22 キヤノン株式会社 画像形成装置、情報処理方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020060849A (ja) * 2018-10-05 2020-04-16 キヤノン株式会社 情報処理装置、制御方法及びプログラム
US11733936B2 (en) 2018-10-05 2023-08-22 Canon Kabushiki Kaisha Information processing apparatus, control method, and storage medium for setting a print setting value

Also Published As

Publication number Publication date
JP6957906B2 (ja) 2021-11-02

Similar Documents

Publication Publication Date Title
US9948807B2 (en) Multi-function device for executing plurality of functions related to plural types of services
CN103631542B (zh) 用于控制数据输出的装置和系统
US9854122B2 (en) Image forming apparatus, data management method, and storage medium
US8891097B2 (en) Image processing apparatus, image processing system, and control method executing processing according to process definition file
JP6402668B2 (ja) 多機能機
JP6458428B2 (ja) 制御装置及びシステム
JP6601106B2 (ja) プリンタ
US11350012B2 (en) Scanner for displaying an authentication screen when authentication failed
US20160274842A1 (en) Information processing device, distributed processing method, and storage medium
JP4918904B2 (ja) 印刷データ生成装置とコンピュータプログラム
US20160219173A1 (en) Document print management system and document print management method
US9747060B2 (en) Information processing apparatus, information processing method, and computer program product
JP2018149723A (ja) 制御装置
US11694458B2 (en) Image processing apparatus that sets metadata of image data, method of controlling same, and storage medium
US10110761B2 (en) Non-transitory computer-readable recording medium storing computer-readable instructions for a print mediation server, and printer system
JP6590056B2 (ja) 多機能機
JP2013250628A (ja) サーバ
JP2018118426A (ja) 画像形成システム、及び画像形成方法
JP7030471B2 (ja) 画像形成装置、印刷設定方法
JP4952689B2 (ja) 印刷装置のための制御装置、印刷装置、印刷装置のための制御方法、及びコンピュータプログラム
JP2017039269A (ja) 画像形成装置及びプログラム
US11233916B2 (en) Printer and non-transitory computer-readable recording medium storing computer readable instructions for printer
JP6558496B2 (ja) 印刷出力方法、印刷出力プログラムおよび印刷出力システム
US10079957B2 (en) Image reading apparatus, image forming apparatus, and non-transitory computer readable medium
WO2019215892A1 (ja) 印刷制御プログラム、印刷制御方法および印刷制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210402

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: 20210907

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210920

R150 Certificate of patent or registration of utility model

Ref document number: 6957906

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150