以下に添付図面を参照して、画像処理装置、画像処理システム、画像処理方法、およびプログラムの実施の形態を詳細に説明する。
なお、以下では、画像処理装置を、複合機(MFP:Multifunction Peripheral)に適用した場合を例に挙げて説明する。複合機とは、スキャナー機能と、プリンタ機能、コピー機能、及びファックス機能のうち少なくとも1つの機能を有する装置である。なお、画像処理装置は、少なくともスキャナー機能を備えた構成であればよく、複合機に限定されない。なお、画像処理装置は、少なくともスキャナー機能を備えた装置に接続されていればよく、画像処理装置内にスキャナー機能を備えた構成に限定されない。
図1は、本実施の形態の画像処理システム1000のハードウェア構成例を示すブロック図である。図1に示すように、画像処理システム1000は、MFP10と、操作部20と、サーバ装置30と、外部装置28と、を備える。MFP10と操作部20は、専用の通信路41を介して相互に通信可能に接続されている。通信路41は、例えばUSB(Universal Serial Bus)規格のものを用いることもできるが、有線か無線かを問わず任意の規格のものであってよい。また、通信路41は、インターネット等のネットワークや電話回線等であってもよい。
MFP10と、外部装置28と、サーバ装置30と、は、インターネットなどのネットワーク40を経由して接続されている。
図1では、MFP10に接続される操作部20の台数が1台である場合を例示しているが、これに限られず、操作部20の台数は任意である。また、操作部20に接続されるMFP10の台数もまた、1台に限られず、MFP10の台数も任意である。また、サーバ装置30及び外部装置28の台数も任意である。
MFP10は、少なくともスキャナー機能を備える。本実施の形態では、MFP10は、スキャナー機能、コピー機能、ファックス機能、プリンタ機能などの各種の機能を実現可能な装置である場合を説明する。
スキャナー機能は、原稿を読取ることで原稿の画像データである第1のデータを取得する機能である。
コピー機能は、原稿を読取ることで画像データを取得し、画像データの画像を記録媒体に形成する機能である。ファックス機能は、画像データなどの各種データを外部装置28などへ送信する機能である。プリンタ機能は、外部装置28などから受信した印刷ジョブに基づいて、記録媒体に画像を形成する機能である。
操作部20は、ユーザの操作に応じた入力を受け付ける。操作部20は、独自のOSと画面遷移機構を有する。MFP10は、操作部20で受け付けた入力に応じた動作を行う。
本実施の形態では、操作部20には、主としてMFP10が備える機能(コピー機能、スキャナー機能、ファックス機能、プリンタ機能)に関する操作や表示を行うためのUI(ユーザインタフェース)の機能や、ログインに関する操作や表示を行うためのUIの機能等を提供するためのアプリケーションが予めインストールされている。
なお、本実施形態では、機能の独立性を保つために、MFP10側のOS層のソフトウェアと操作部20側のOS層のソフトウェアが互いに異なる場合を説明する。すなわち、本実施の形態では、MFP10と操作部20は、別々のオペレーティングシステムで互いに独立して動作する。例えば、MFP10側のOS層のソフトウェアとしてLinux(登録商標)を用い、操作部20側のOS層のソフトウェアとしてAndroid(登録商標)を用いることも可能である。
このように、本実施の形態の画像処理システム1000において、MFP10と操作部20は、別々のオペレーティングシステムで動作する。このため、MFP10と操作部20との間の通信は、共通の装置内のプロセス間通信ではなく、異なる装置間の通信として行われる。操作部20が受け付けた入力(ユーザからの指示内容)をMFP10へ伝達する動作(コマンド通信)や、MFP10が操作部20へイベントを通知する動作などがこれに該当する。ここでは、操作部20がMFP10へコマンド通信を行うことにより、MFP10の機能を使用することができる。
また、本実施の形態では、操作部20に対する電力供給は、MFP10から通信路41を経由して行われる場合を説明する。しかし、操作部20の電源制御を、MFP10の電源制御とは別に(独立して)行ってもよい。
なお、操作部20を、MFP10に一体的に設けた構成であってもよい。
外部装置28は、ネットワーク40に接続され、MFP10とデータや信号の授受を行う装置である。外部装置28は、例えば、公知のパーソナルコンピュータなどである。
サーバ装置30は、各種データの登録や、MFP10や外部装置28などの認証処理を行う。サーバ装置30は、認証したMFP10及び外部装置28に対して、HDD35などへのアクセスや、MFP10に設けられた各種機能の利用を許可する。
また、サーバ装置30は、各種データをHDD35へ登録することで、予め定めたユーザなどの操作する外部装置28やMFP10に対して、HDD35に記憶されているデータを公開する。なお、サーバ装置30は、HDD35に記憶するデータに対して、アクセス権などを設定し、一部のユーザに対してデータを非公開とすることも可能である。
本実施の形態では、サーバ装置30に記憶されているデータを、第2のデータと称する。
次に、ハードウェア構成について説明する。
まず、MFP10のハードウェア構成を説明する。MFP10は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、HDD(ハードディスクドライブ)14と、接続I/F(インターフェース)16と、エンジン部17と、通信I/F19と、を備え、これらがシステムバス18を介して相互に接続されている。
CPU11は、MFP10の動作を統括的に制御する。CPU11は、RAM13をワークエリア(作業領域)としてROM12またはHDD14等に格納されたプログラムを実行することで、MFP10全体の動作を制御し、上述したコピー機能、スキャナー機能、ファックス機能、プリンタ機能や、後述する各種機能を実現する。
接続I/F16は、通信路41を介して操作部20と通信するためのインターフェースである。通信I/F19は、ネットワーク40を介して、サーバ装置30や外部装置28と通信するためのインターフェースである。
エンジン部17は、コピー機能、スキャナー機能、ファックス機能、および、プリンタ機能を実現させるための、汎用的な情報処理及び通信以外の処理を行うハードウェアである。エンジン部17は、スキャナー機能を実行するスキャナー(画像読取部)、コピー機能やプリンタ機能を実行するプロッタ(画像形成部)、ファックス機能を実行するファックス部などを備えている。更に、印刷済みシート材を仕分けるフィニッシャや、原稿を自動給送するADF(自動原稿給送装置)のような特定のオプションを備えることもできる。
次に、操作部20のハードウェア構成について説明する。操作部20は、CPU21と、ROM22と、RAM23と、フラッシュメモリ24と、接続I/F26と、操作パネル27とを備え、これらがシステムバス24Aを介して相互に接続されている。
CPU21は、操作部20の動作を統括的に制御する。CPU21は、RAM23をワークエリアとしてROM22またはフラッシュメモリ24等に格納されたプログラムを実行することで、操作部20全体の動作を制御し、後述する各種機能を実現する。
接続I/F26は、通信路41を介してMFP10と通信するためのインターフェースである。
操作パネル27は、ユーザの操作に応じた各種の入力を受け付けるとともに、各種の情報や、後述するログオン画面や入力画面などの各種画像を表示する。この例では、操作パネル27は、タッチパネル機能を搭載した液晶表示装置(LCD)で構成されるが、これに限られるものではない。例えば、操作パネル27は、タッチパネル機能が搭載された有機EL表示装置で構成されてもよい。さらに、これに加えて又はこれに代えて、ハードウェアキー等の操作部やランプ等の表示部を設けることもできる。
なお、本実施の形態では、操作パネル27は、各種入力の受付を行う受付機能と、各種情報の表示を行う表示機能と、の双方を一体的に備えた構成である場合を説明するが、この構成に限られない。例えば、操作パネル27は、各種入力の受付を行う装置と、各種情報の表示を行う装置と、を別体として構成してもよい。
サーバ装置30は、CPU31と、ROM32と、RAM33と、通信I/F34と、HDD35とを備え、これらがシステムバス37を介して相互に接続されている。
CPU31は、サーバ装置30の動作を統括的に制御する。CPU31は、RAM33をワークエリアとしてROM32などに格納されたプログラムを実行することで、サーバ装置30全体の動作を制御し、後述する各種機能を実現する。通信I/F34は、ネットワーク40を介して、MFP10や外部装置28と通信するためのインターフェースである。HDD35は、各種データを記憶する。
次に、機能的構成について説明する。
図2は、操作部20の機能的構成の一例を示すブロック図である。
操作部20は、制御部25と、記憶部29と、を備える。記憶部29は、図1のフラッシュメモリ24やRAM23に相当する。制御部25は、操作部20全体を制御する。制御部25は、CPUで構成してもよいし、CPU以外の回路などで構成してもよい。
制御部25は、表示制御部25Aと、通信部25Bと、受付部25Cと、を含む。表示制御部25A、通信部25B、及び受付部25Cの一部またはすべては、例えば、CPUなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、IC(Integrated Circuit)などのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
表示制御部25Aは、操作パネル27に、各種画面を表示する。各種画面は、ログイン時に表示するログイン画面や、各種データの入力時に表示する入力画面などである。本実施の形態では、入力画面は、MFP10で取得した第1のデータを記憶する対象のサーバ装置30や、第1のデータとの結合対象の第2のデータの選択などを入力するための画面を含む。
ユーザによる操作パネル27の操作指示によって、入力画面を介して各種データが入力される。受付部25Cは、これらのデータを操作パネル27から受け付ける。
通信部25Bは、通信路41を介してMFP10と通信する。本実施の形態では、通信部25Bは、受付部25Cで受け付けた各種データを、MFP10へ送信する。
図3は、MFP10の機能的構成の一例を示すブロック図である。
MFP10は、制御部50と、記憶部52と、エンジン部17と、を備える。記憶部52は、図1のHDD14に相当する。
制御部50は、MFP10全体を制御する。制御部50は、CPUで構成してもよいし、CPU以外の回路などで構成してもよい。
制御部50は、受付部50Aと、通信制御部50Bと、第1通信部50Cと、取得部50Dと、エンジン制御部50Eと、操作制御部50Fと、第1結合部50Gと、判断部50Hと、を含む。
受付部50A、通信制御部50B、第1通信部50C、取得部50D、エンジン制御部50E、操作制御部50F、第1結合部50G、及び判断部50Hの一部またはすべては、例えば、CPUなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ICなどのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
操作制御部50Fは、通信路41を介して行う操作部20との通信を制御する。
エンジン制御部50Eは、エンジン部17を制御する。具体的には、エンジン制御部50Eは、受付部50Aで受け付けたユーザからの指定に応じた機能を実行するように、エンジン部17を制御する。エンジン制御部50Eの制御によって、エンジン部17は、スキャナー機能、プリンタ機能、印刷機能、ファックス機能、コピー機能、などの各機能による処理を実行する。
取得部50Dは、エンジン部17が各種機能を実行することにより得たデータを取得する。エンジン部17がスキャナー機能を実行した場合、取得部50Dは、エンジン部17のスキャナー機能により原稿を読取る(スキャンする)ことで生成した第1のデータを、エンジン部17から取得する。
受付部50Aは、操作部20から各種データを受け付ける。すなわち、受付部50Aは、ユーザによる操作部20の操作指示を受け付ける。
本実施の形態では、受付部50Aは、エンジン部17の各種機能の内の実行対象機能の指定や、第1のデータの記憶先の指定や、ログイン情報や、結合対象の第2のデータの選択や、結合順や、結合後の結合データのフォーマットや、結合データのファイル名、などを、操作部20から受け付ける。
実行対象機能の指定を受け付けることにより、受付部50Aは、スキャナー機能、プリンタ機能、印刷機能、ファックス機能、コピー機能、などの各機能の内の何れかの機能の指定を受け付ける。
第1のデータの記憶先は、MFP10内、または、ネットワーク40に接続された1または複数のサーバ装置30の何れかである。ユーザは、操作部20を操作することで、第1のデータの記憶先を入力する。例えば、ユーザは、操作部20を操作することで、サーバ装置30を第1のデータの記憶先として入力する。これにより、受付部50Aは、操作部20から、第1のデータの記憶先を受け付ける。
なお、以下では、ユーザによる操作部20の操作指示によって、第1のデータの記憶先として指定されたサーバ装置30を、「記憶先のサーバ装置30」と称して説明する場合がある。
ログイン情報は、記憶先として指定したサーバ装置30にログインするときに用いる情報である。サーバ装置30は、ログイン情報を用いて、後述する認証処理を行う。ログイン情報は、例えば、ユーザ名と、パスワードと、を含む。なお、ログイン情報に含まれる情報は、これらに限定されない。
第1のデータとの結合対象は、記憶先のサーバ装置30に記憶されている1または複数の第2のデータから選択される。ユーザは、操作部20を操作することで、MFP10のスキャナー機能により生成された(または生成される)第1のデータとの結合対象を選択する。受付部50Aは、第1のデータとの結合対象の選択を、操作部20から受け付ける。
なお、受付部50Aは、結合対象として、複数の第2のデータの選択を受け付けてもよい。すなわち、ユーザは、操作部20を操作することで、結合対象として、1つの第2のデータを選択してもよいし、複数の第2のデータを選択してもよい。
結合順は、第1のデータと、結合対象の1または複数の第2のデータの各々と、の結合順を示す。例えば、結合順は、第1のデータの後ろに第2のデータを結合、第1のデータの前に第2のデータを結合、などであるが、これらに限定されない。
なお、本実施の形態では、第1のデータと、結合対象の1または複数の第2のデータと、を結合したデータを、結合データと称する。
結合データのフォーマットは、ページ単位でデータを扱う公知のフォーマットであればよい。結合データのフォーマットは、例えば、PDF(Portable Document Format)や、TIFF(Tagged Image File Format)であるが、これらに限定されない。
結合データのファイル名は、結合後のデータである結合データの名称である。ユーザは、操作部20を操作することで、結合データのファイル名を入力する。受付部50Aは、操作部20から、結合データのファイル名を受け付ける。
第1通信部50Cは、ネットワーク40を介して、サーバ装置30や外部装置28と通信する。
通信制御部50Bは、第1通信部50Cの通信を制御する。本実施の形態では、通信制御部50Bは、第1のデータと結合対象の第2のデータとの結合要求と、第1のデータと、を、記憶先のサーバ装置30へ送信するように、第1通信部50Cを制御する。
結合要求は、結合対象として選択された第2のデータと、取得部50Dで取得した第1のデータと、の結合指示と、受付部50Aで受け付けた各種情報と、を含む。詳細には、結合要求は、結合指示と、選択された結合対象の第2のデータの識別情報と、結合順、結合データのフォーマット、結合データのファイル名、などを含む。
また、通信制御部50Bは、受付部50Aで受け付けたログイン情報を、第1のデータの記憶先として指定されたサーバ装置30へ送信するように、第1通信部50Cを制御する。
判断部50Hは、第1のデータの記憶先として指定されたサーバ装置30に設けられた第2結合部を、利用可能か否かを判断する。第2結合部は、サーバ装置30に設けられており、複数のデータを結合する機能部である。第2結合部の詳細説明は、サーバ装置30の説明部分で行う。
例えば、判断部50Hは、操作部20から受け付けたログイン情報と、第2結合部を利用可能であるか否かの判断要求と、を、記憶先のサーバ装置30へ送信する。サーバ装置30は、ユーザ名及びパスワードごとに、サーバ装置30に設けられた各種機能の内の何れを利用可能であるかを示す利用情報を予め記憶する。そして、サーバ装置30は、MFP10から受け付けたログイン情報に対応する利用情報に、サーバ装置30に設けられた第2結合部の利用可能を示す情報が含まれているか否かを判断する。そして、サーバ装置30は、第2結合部の利用可能を示す情報が含まれる場合、利用可能を示す情報を送信元であるMFP10へ送信する。MFP10の判断部50Hは、第1通信部50Cを介してサーバ装置30から利用可能を示す情報を受け付けたときに、利用可能であると判断する。また、サーバ装置30は、第2結合部の利用可能を示す情報が含まれない場合、利用不可を示す情報を送信元であるMFP10へ送信する。MFP10の判断部50Hは、第1通信部50Cを介してサーバ装置30から利用不可を示す情報を受け付けたときに、利用不可と判断する。
なお、MFP10の記憶部52に、ユーザ名及びパスワードごとに、ネットワーク40に接続されたサーバ装置30の識別情報と、各サーバ装置30に設けられた各種機能の利用情報を予め記憶してもよい。そして、判断部50Hは、記憶部52に記憶されている利用情報を用いて、上記と同様の判断を行うことにより、記憶先のサーバ装置30に設けられた第2結合部を利用可能か否か、判断すればよい。
第1結合部50Gは、複数のデータを結合する機能部である。第1結合部50Gは、サーバ装置30に設けられている第2結合部と同様の機能を有する。
判断部50Hが、指定されたサーバ装置30に設けられた第2結合部を利用可能と判断した場合、通信制御部50Bは、結合要求と第1のデータとを該サーバ装置30へ送信するように第1通信部50Cを制御する。
一方、判断部50Hが、指定されたサーバ装置30に設けられた第2結合部を利用不可と判断した場合、通信制御部50Bは、結合要求に基づいて、取得部50Dで取得した第1のデータと、結合対象として選択された第2のデータとを結合した結合データを生成するように、第1結合部50Gを制御する。そして、通信制御部50Bは、生成された結合データを、指定されたサーバ装置30へ送信するように、第1通信部50Cを制御する。
図4は、サーバ装置30の機能的構成の一例を示すブロック図である。
サーバ装置30は、制御部36と、記憶部38と、を備える。記憶部38は、図1のHDD35に相当する。
記憶部38は、1または複数の第2のデータを記憶する。また、サーバ装置30は、ユーザ名と、パスワードと、宛先と、を予め記憶する。
ユーザ名及びパスワードは、当該サーバ装置30へのログイン認証時に用いる。宛先は、対応するユーザ名のユーザの使用するMFP10や外部装置28の各々の通信上のアドレスを示す。宛先は、MFP10や外部装置28の各々のIPアドレスであってもよいし、MFP10や外部装置28の各々を操作するユーザのメールアドレスなどであってもよい。ユーザ名は、ユーザを一意に識別可能な情報であればよい。
制御部36は、サーバ装置30全体を制御する。制御部36は、CPUで構成してもよいし、CPU以外の回路などで構成してもよい。
制御部36は、第2通信部36Aと、認証部36Bと、第2結合部36Cと、登録部36Dと、を含む。第2通信部36A、認証部36B、第2結合部36C、及び登録部36Dの一部またはすべては、例えば、CPUなどの処理装置にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ICなどのハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
第2通信部36Aは、MFP10及び外部装置28と通信を行う。本実施の形態では、第2通信部36Aは、MFP10からログイン情報や、結合要求や、第1のデータや、結合データなどを受信する。また、第2通信部36Aは、MFP10などからの要求に応じて、各種データをMFP10へ送信する。また、第2通信部36Aは、結合データに含まれる各データ(第1のデータ、1または複数の第2のデータ)の各々の送信元のユーザの宛先に対して、結合結果を示す情報などを通知する。
認証部36Bは、ネットワーク40を介してサーバ装置30に接続したMFP10や外部装置28のログイン認証の認証処理を実行する。例えば、第2通信部36Aは、MFP10や外部装置28からユーザ名とパスワードとを含むログイン情報を受信する。認証部36Bは、第2通信部36Aで受信したログイン情報に含まれるユーザ名とパスワードの組合せが記憶部38に記憶されているか否かを判別することで、認証処理を行う。なお、認証部36Bが行う認証処理は、公知の認証処理であればよく、上記方法に限定されない。
第2結合部36Cは、複数のデータを結合する。本実施の形態では、第2結合部36Cは、MFP10から受信した結合要求に基づいて、記憶部38に記憶されている第2のデータの内、結合対象として選択された第2のデータと、MFP10から受信した第1のデータと、を結合する。
登録部36Dは、第2結合部36Cで生成された結合データや、MFP10から受信した第1のデータなどを、記憶部38に記憶する。
次に、画像処理システム1000で実行する画像処理の流れを説明する。
まず、操作部20で実行する入力処理の流れを説明する。図5は、操作部20で実行する入力処理の手順を示すフローチャートである。
まず、表示制御部25Aが、初期画面を操作パネル27に表示する(ステップS100)。図6は、操作部20の操作パネル27に表示された、初期画面の一例を示す図である。図6に示すように、初期画面は、MFP10に搭載された各種機能の利用を指定するための複数の画像を含む。例えば、ユーザによる操作指示によって、操作パネル27に表示された「スキャナー」画像領域が指示されると、操作パネル27は、スキャナー機能の利用指示を受け付ける。この場合、操作パネル27は、制御部25に、スキャナー機能の利用指示を出力する。
図5に戻り、受付部25Cは、操作パネル27からスキャナー機能の利用指示(スキャナー利用指示)を受け付けたか否かを判断する(ステップS102)。
ステップS102で否定すると(ステップS102:No)、ステップS150へ進み、制御部25は、通常処理を実行する(ステップS150)。通常処理とは、利用指示されたスキャナー機能以外の機能(例えば、ファックス機能、プリンタ機能など)の利用指示をMFP10へ送信すると共に、各機能実行時の設定画面などの表示を行う処理である。そして、本ルーチンを終了する。
一方、ステップS102で肯定すると(ステップS102:Yes)、ステップS104へ進む。ステップS104では、通信部25Bが、スキャナー機能の利用指示をMFP10へ送信する(ステップS104)。
次に、表示制御部25Aは、記憶先選択画面を操作パネル27に表示する(ステップS106)。記憶先選択画面は、スキャナー機能の実行によって得られる第1のデータの記憶先を選択するための入力画面である。図7は、操作部20の操作パネル27に表示された、記憶先選択画面の一例を示す図である。記憶先選択画面は、操作部20に接続されたMFP10の識別情報と、MFP10にネットワーク40を介して接続された1または複数のサーバ装置30の各々の識別情報と、を含む。ユーザは、操作パネル27に表示された記憶先選択画面に含まれる、MFP10及び1または複数のサーバ装置30の各々の識別情報の表示領域を指示する。これにより、ユーザは、第1のデータの記憶先を指示する。操作パネル27は、制御部25に、選択された記憶先の識別情報を出力する。
図5に戻り、受付部25Cは、記憶先の指示を操作パネル27から受け付けるまで否定判断を繰り返し(ステップS108:No)、記憶先の指示を受け付けると(ステップS108:Yes)、ステップS110へ進む。
ステップS110では、通信部25Bが、ステップS108で受け付けた、第1のデータの記憶先を示す情報を、MFP10へ送信する(ステップS110)。
次に、制御部25は、ステップS110でMFP10に送信した記憶先が、当該MFP10であるか否かを判断する(ステップS112)。ステップS112で肯定判断すると(ステップS112:Yes)、本ルーチンを終了する。ステップS112で否定判断すると(ステップS112:No)、ステップS114へ進む。
表示制御部25Aは、ログイン画面を操作パネル27に表示する(ステップS114)。図8は、操作部20の操作パネル27に表示された、ログイン画面の一例を示す図である。ログイン画面は、ユーザ名及びパスワードの入力を促す文字や、ログイン指示を入力するための指示ボタンや、取り消しを入力するための指示ボタン等を含む。ユーザによる操作パネル27の操作指示によって、ユーザ名及びパスワードが入力されると共に、ログイン指示を入力するための指示ボタンが指示される。すると、操作パネル27は、ユーザ面及びパスワードを含むログイン情報を制御部25へ出力する。なお、操作部20を操作するユーザ名を予め記憶部29に記憶してもよい。この場合、ログイン情報は、ユーザ名を含まない形態であってもよい。
図5に戻り、受付部25Cは、ログイン情報を操作パネル27から受け付けるまで否定判断を繰り返し(ステップS116:No)、ログイン情報を受け付けると(ステップS116:Yes)、ステップS118へ進む。
ステップS118では、通信部25Bが、ステップS116で受け付けた、ログイン情報をMFP10へ送信する(ステップS118)。
次に、通信部25Bは、MFP10から認証異常を示す認証異常情報を受信したか否かを判断する(ステップS120)。認証異常情報を受信した場合(ステップS120:Yes)、ステップS114へ戻る。一方、認証正常を示す認証正常情報を受信した場合(ステップS120:No)、ステップS122へ進む。
表示制御部25Aは、結合・新規保存入力画面を操作パネル27に表示する(ステップS122)。結合・新規保存入力画面は、結合指示、及び新規保存指示の何れかをユーザに選択させるための画面である。結合指示は、第1のデータとサーバ装置30に記憶されている第2のデータとの結合を示す。新規保存指示は、第1のデータを他のデータと結合せずにサーバ装置30に記憶することを示す。ユーザは、操作パネル27に表示された結合・新規保存入力画面における、結合指示、および新規保存指示の何れかを選択する。すると、操作パネル27は、選択された、結合指示または新規保存指示を制御部25へ出力する。制御部25の受付部25Cは、結合指示または新規保存指示を操作パネル27から受け付ける。
受付部25Cは、操作パネル27から結合指示または新規保存指示を操作パネル27から受け付けるまで否定判断を繰り返し(ステップS124:No)、結合指示または新規保存指示を受け付けると(ステップS124:Yes)、ステップS126へ進む。通信部25Bは、ステップS124で受け付けた、結合指示、または新規保存指示を、MFP10へ送信する(ステップS126)。
次に、通信部25Bは、ステップS124で操作パネル27から受け付けた指示が、結合指示であるか否かを判断する(ステップS128)。操作パネル27から受け付けた指示が結合指示である場合(ステップS128:Yes)、ステップS130へ進む。ステップS130では、上記ステップS108で受け付けた、第1のデータのサーバ装置30に記憶されている第2のデータの一覧情報を、MFP10から受信する(ステップS130)。
次に、表示制御部25Aは、ステップS130で受信した第2のデータの一覧情報を操作パネル27に表示する(ステップS132)。図9は、操作部20の操作パネル27に表示された、第2のデータの一覧情報の一例を示す図である。図9に示すように、第2のデータの一覧情報は、例えば、第2のデータのファイル名を含む。ユーザは、操作パネル27に表示された第2のデータの一覧情報の中から、第1のデータとの結合対象の第2のデータを選択する。すると、操作パネル27は、選択された結合対象の第2のデータの識別情報を制御部25へ出力する。
なお、図9中、「新規」は、第1のデータを第2のデータと結合せず、新規に保存することを示す。このため、この「新規」の文字は、結合・新規保存入力画面に含めてもよい。
また、表示制御部25Aは、記憶先として指定されたサーバ装置30に記憶されている第2のデータのファイル名の一覧として、サーバ装置30に記憶されてからの経過期間が閾値未満の第2のデータのファイル名の一覧を操作パネル27に表示することが好ましい。この処理により、データ処理量が軽減し、画像処理システム1000の処理不可の軽減や処理速度の軽減を図ることができる。
図5に戻り、受付部25Cは、選択された結合対象を操作パネル27から受け付けるまで否定判断を繰り返す(ステップS134:No)。例えば、受付部25Cは、選択された結合対象の第2のデータの識別情報を、操作パネル27から受け付けたか否かを判別することで、ステップS134の判断を行う。選択された結合対象を受け付けると(ステップS134:Yes)、ステップS136へ進む。
ステップS136では、ステップS134で受け付けた結合対象の第2のデータの識別情報を、MFP10へ送信する(ステップS136)。
次に、表示制御部25Aは、結合順入力画面を操作パネル27に表示する(ステップS138)。結合順入力画面は、第1のデータと、結合対象として選択された1または複数の第2のデータと、の結合順を入力するための画面である。図10は、操作部20の操作パネル27に表示された、結合順入力画面の一例を示す図である。例えば、結合順入力画面は、第2のデータの後ろに第1のデータを結合することを示す「後ろに追加」や、第2のデータの前に第1のデータを結合することを示す「前に追加」などの文字を含む。ユーザは、操作パネル27に表示された所望の結合順を示す文字の表示領域を指示する。これにより、操作パネル27は、ユーザから結合順を受け付け、制御部25へ出力する。
なお、図10中、「置換」は、結合対象として指定した第2のデータを、第1のデータで置き換えることを示す。この「置換」の文字は、結合・新規保存入力画面に含めてもよい。
図5に戻り、受付部25Cは、選択された結合順を操作パネル27から受け付けるまで否定判断を繰り返す(ステップS140:No)。選択された結合順を受け付けると(ステップS140:Yes)、ステップS142へ進む。通信部25Bは、ステップS140で受け付けた結合順を、MFP10へ送信する(ステップS142)。
次に、表示制御部25Aは、結合データのデータフォーマットを入力するためのフォーマット入力画面を操作パネル27に表示する(ステップS144)。図11は、操作部20の操作パネル27に表示された、フォーマット入力画面の一例を示す図である。フォーマット入力画面は、ページ単位でデータを扱う公知のフォーマットの一覧を含む。ユーザは、フォーマット入力画面に含まれる、フォーマットの一覧の中から、結合データのフォーマットを選択する。すると、操作パネル27は、選択されたフォーマットを受け付け、制御部25へ出力する。
図5に戻り、受付部25Cは、操作パネル27から結合データのフォーマットを受け付けるまで否定判断を繰り返す(ステップS146:No)。受付部25Cは、結合データのフォーマットを受け付けると(ステップS146:Yes)、受け付けたフォーマットをMFP10へ送信し(ステップS148)、本ルーチンを終了する。
一方、上記ステップS128の判断において、操作パネル27から受け付けた指示が新規保存指示であると判断すると(ステップS128:No)、ステップS152に進む。ステップS152では、表示制御部25Aが、ファイル名入力画面を操作パネル27に表示する。ファイル名入力画面は、サーバ装置30に保存する第1のデータのファイル名を入力するための画面である。ユーザは、操作パネル27に表示されたファイル名入力画面を介して、第1のデータのサーバ装置30への記憶時のファイル名を入力する。制御部25の受付部25Cは、操作パネル27からフィル名を受け付ける。
なお、このとき、表示制御部25Aは、記憶先として指定されたサーバ装置30に記憶されている第2のデータのファイル名の一覧を含む、ファイル名入力画面を表示してもよい。図12は、操作部20の操作パネル27に表示された、第2のデータのファイル名の一覧の一例を示す図である。例えば、ユーザは、操作パネル27に表示された第2のデータのファイル名の一覧から、所望のファイル名を選択する。この場合、受付部25Cは、選択されたファイル名を操作パネル27から受け付ける。
制御部25の受付部25Cが、操作パネル27からフィル名を受け付けると、通信部25Bは、受け付けたファイル名をMFP10へ送信する(ステップS154)。そして、本ルーチンを終了する。
なお、新規保存が指定された場合に受付部25Cが受け付けたファイル名として、サーバ装置30に記憶されている第2のデータのファイル名が指定された場合には、通信部25Bは、該ファイル名に番号等の情報を付与してサーバ装置30へ送信してもよい。なお、サーバ装置30側でこの処理を行ってもよい。例えば、サーバ装置30では、新規保存する第1のデータのファイル名として、既に記憶されている第2のデータと同じファイル名をMFP10から受信した場合には、既に記憶されている第2のデータのファイル名に番号等の情報を付与すると共に、MFP10から受信した同じファイル名を指定された第1のデータのファイル名には、第2のデータとは異なる番号などの情報を付与して記憶すればよい。
次に、MFP10で実行する処理を説明する。
図13は、MFP10で実行する画像処理の手順を示すフローチャートである。図13には、操作部20からスキャナー機能の利用指示を受け付ける場合の手順を示した。なお、操作部20からスキャナー機能の利用指示以外の指示を受け付ける場合には、受け付けた機能に応じた処理を実行する公知の処理を実行すればよい。
まず、受付部50Aが、スキャナー機能の利用指示を操作部20から受け付ける(ステップS200)。次に、受付部50Aは、第1のデータの記憶先を示す情報を、操作部20から受け付ける(ステップS202)。
次に、制御部50は、ステップS202で受け付けた記憶先を示す情報が、当該MFP10であるか否かを判断する(ステップS204)。
記憶先を示す情報が当該MFP10である場合(ステップS204:Yes)、エンジン制御部50Eが、スキャナー機能を実行する(ステップS250)。具体的には、エンジン制御部50Eは、原稿台(図示省略)に載置された原稿を読取り、第1のデータを生成するように、エンジン部17を制御する。ステップS250の処理によって、エンジン部17は原稿を読取って第1のデータを生成し、制御部50へ出力する。取得部50Dは、第1のデータをエンジン部17から取得する。
取得部50Dは、取得した第1のデータを記憶部52に記憶し(ステップS252)、本ルーチンを終了する。
一方、上記ステップS202で受け付けた記憶先を示す情報が、当該MFP10ではない場合(ステップS204:No)、ステップS206へ進む。すなわち、ステップS204で否定判断する場合は、操作部20から受け付けた、第1のデータの記憶先が、ネットワーク40を介して接続された何れかのサーバ装置30である場合である。
次に、受付部50Aが、操作部20からログイン情報を受け付ける(ステップS206)。第1通信部50Cは、受け付けたログイン情報を、ステップS202で受け付けた記憶先のサーバ装置30へ送信する(ステップS208)。
第1通信部50Cは、送信したログイン情報に対する認証結果をサーバ装置30から受信すると、受信した認証結果が認証正常を示すか否かを判断する(ステップS210)。認証結果が認証異常を示す場合(ステップS210:No)、第1通信部50Cは、認証異常を示す情報を操作部20へ送信し(ステップS248)。上記ステップS206へ戻る。
認証結果が認証正常を示す場合(ステップS210:Yes)、認証正常を示す認証正常情報を操作部20へ送信し、ステップS212へ進む。ステップS212では、受付部50Aは、結合指示または新規保存指示を操作部20から受け付け、受け付けた指示が結合指示及び新規保存指示の何れであるかを判断する(ステップS212)。
操作部20から受け付けた指示が、新規保存指示である場合(ステップS212:新規保存)、ステップS242へ進む。ステップS242では、第1通信部50Cは、新規保存指示を、上記ステップS202で受け付けた記憶先のサーバ装置30へ送信する(ステップS242)。
次に、受付部50Aは、操作部20から第1のデータのファイル名を受け付ける(ステップS244)。次に、第1通信部50Cは、受け付けたファイル名を、新規保存する第1のデータのファイル名として、記憶先のサーバ装置30へ送信する(ステップS246)。そして、後述するステップS232へ進む。
一方、操作部20から受け付けた指示が、結合指示である場合(ステップS212:結合)、ステップS214へ進む。ステップS214では、第1通信部50Cは、結合指示を、上記ステップS202で受け付けた記憶先のサーバ装置30へ送信する(ステップS214)。
次に、第1通信部50Cが、記憶先のサーバ装置30から、サーバ装置30に記憶されている第2のデータの一覧情報を取得する(ステップS216)。例えば、第1通信部50Cは、記憶先のサーバ装置30へ、サーバ装置30に記憶されている第2のデータの一覧情報の取得要求を送信する。サーバ装置30は、取得要求を受信すると、サーバ装置30の記憶部38に記憶されている第2のデータの識別情報(例えば、ファイル名と、ファイルフォーマット)の一覧をMFP10へ送信する。MFP10は、この一覧を受信することで、第2のデータの一覧情報を取得する。
次に、第1通信部50Cは、ステップS216で取得した、第2のデータの一覧情報を、操作部20へ送信する(ステップS218)。
次に、受付部50Aは、操作部20から、記憶先のサーバ装置30に記憶されている第2のデータの内、第1のデータとの結合対象の選択を受け付ける(ステップS220)。例えば、受付部50Aは、操作部20から、結合対象の第2のデータの識別情報を取得することで、結合対象の選択を受け付ける。
なお、第1通信部50Cは、記憶先として指定されたサーバ装置30に記憶されている第2のデータのファイル名の一覧として、サーバ装置30に記憶されてからの経過期間が閾値未満の第2のデータのファイル名の一覧をサーバ装置30から取得することが好ましい。この場合、受付部50Aは、サーバ装置30に記憶されてからの経過期間が閾値未満の第2のデータの内、第1のデータとの結合対象の選択を受け付けることができる。
次に、受付部50Aは、操作部20から、結合順を受け付ける(ステップS222)。次に、受付部50Aは、操作部20から、結合後の結合データのフォーマットを受け付ける(ステップS224)。
次に、第1通信部50Cは、結合要求を生成する(ステップS226)。詳細には、第1通信部50Cは、ステップS202〜ステップS224の処理によって操作部20から受け付けた、結合指示と、結合対象の第2のデータの識別情報と、結合順と、結合データのフォーマット、結合データのファイル名などを含む。結合指示は、上述したように、第1のデータと結合対象として選択された第2のデータとの結合指示である。
次に、判断部50Hが、記憶先のサーバ装置30に設けられた第2結合部36Cを利用可能か否か、を判断する(ステップS228)。
第2結合部36Cを利用可能であると判断した場合(ステップS228:Yes)、通信制御部50Bは、ステップS226で生成した結合要求を、記憶先のサーバ装置30へ送信するように第1通信部50Cを制御する(ステップS230)。
次に、エンジン制御部50Eが、ステップS250と同様にして、スキャナー機能を実行する(ステップS232)。スキャナー機能の実行により、取得部50Dは、第1のデータをエンジン部17から取得する。
第1通信部50Cは、第1のデータを、記憶先のサーバ装置30へ送信するように、第1通信部50Cを制御する(ステップS234)。そして、本ルーチンを終了する。
一方、上記ステップS228の処理において、判断部50Hが、第2結合部36Cを利用不可と判断すると(ステップS228:No)、ステップS236へ進む。ステップS236では、エンジン制御部50Eが、ステップS250と同様にして、スキャナー機能を実行する(ステップS236)。スキャナー機能の実行により、取得部50Dは、第1のデータをエンジン部17から取得する。
次に、第1結合部50Gが、ステップS226で生成した結合要求に基づいて、結合データを生成する(ステップS238)。この場合、第1結合部50Gは、結合要求に含まれる、選択された結合対象の第2のデータの識別情報と、データ取得要求と、を記憶先のサーバ装置30へ送信する。第2のデータの識別情報と、データ取得要求と、を受信したサーバ装置30は、識別情報によって識別される第2のデータを記憶部38から読取り、MFP10へ送信する。これにより、第1結合部50Gは、結合対象の第2のデータをサーバ装置30から取得する。そして、第1結合部50Gは、第1のデータと、結合対象の第2のデータと、を結合し、結合データを生成する。
例えば、第1結合部50Gは、結合要求に含まれる、結合順と、結合データのフォーマット、結合データのファイル名を読取る。次に、取得部50Dで取得した第1のデータと、選択された結合対象の第2のデータと、の各々について、結合要求に含まれるフォーマットにデータフォーマットを変換する。そして、第1結合部50Gは、変換後の第1のデータと第2のデータとを、結合要求に含まれる結合順で結合し、結合データを生成する。また、第1結合部50Gは、生成した結合データのファイル名として、結合要求に含まれるファイル名を付与する。
図14は、結合データ生成の説明図である。
例えば、結合データのフォーマットとしてTiffが指定されたとする。この場合、第1結合部50Gは、結合要求に基づいて、2頁分の原稿を読取った第1のデータ61Aと、フォーマットがTiffである3頁分の第2のデータ62Aと、を結合順に従って結合する。この結合により、第1結合部50Gは、フォーマットがTiffの結合データ64Aを生成する(図14(A))。
また、例えば、結合データのフォーマットとしてPDFが指定されたとする。この場合、第1結合部50Gは、結合要求に基づいて、2頁分の原稿を読取った第1のデータ61Bと、フォーマットがJPEG(Joint Photographic Experts Group)である1頁分の第2のデータ62Bと、を、PDFにフォーマット変換した後に結合順に従って結合する。この結合により、第1結合部50Gは、フォーマットがPDFの結合データ64Bを生成する(図14(B))。
図13に戻り、次に、第1通信部50Cは、結合データを、記憶先のサーバ装置30へ送信する(ステップS240)。そして、本ルーチンを終了する。
次に、サーバ装置30が実行する処理を説明する。
図15は、サーバ装置30が実行する画像処理の手順を示すフローチャートである。
まず、第2通信部36Aが、MFP10からログイン情報を受信したか否かを判断する(ステップS300)。ログイン情報を受信しない場合(ステップS300:No)、本ルーチンを終了する。ログイン情報を受信すると(ステップS300:Yes)、ステップS302へ進む。
ステップS302では、認証部36Bが、ステップS300で受けたログイン情報に含まれるユーザ名及びパスワードを用いて、認証処理を実行する(ステップS302)。第2通信部36Aは、認証正常または認証異常を示す認証結果を、MFP10へ送信する(ステップS304)。
ステップS302の認証処理の結果が、認証異常である場合(ステップS306:No)、本ルーチンを終了する。一方、ステップS302の認証処理の結果が、認証正常である場合(ステップS306:Yes)、ステップS308へ進む。
ステップS308では、第2通信部36Aが、MFP10から指示を受け付け、受け付けた指示が結合指示及び新規保存指示の何れであるかを判断する(ステップS308)。
受け付けた指示が結合指示である場合(ステップS308:結合)、第2通信部36Aは、記憶部38に記憶されている第2のデータの一覧情報をMFP10へ送信する(ステップS310)。
次に、第2通信部36Aは、MFP10から結合要求を受信したか否かを判断する(ステップS312)。MFP10から結合要求を受信すると(ステップS312:Yes)。第2通信部36Aは、MFP10から第1のデータを受信する(ステップS314)。
次に、第2結合部36Cが、ステップS312で受信した結合要求に基づいて、結合データを生成する(ステップS316)。
例えば、第2結合部36Cは、ステップS312で受信した結合要求に含まれる、選択された結合対象の第2のデータの識別情報に対応する第2のデータを、記憶部38から取得する。そして、第2結合部36Cは、取得した第2のデータと、ステップS314で受信した第1のデータと、を、結合要求に含まれるフォーマットに変換する。そして、第2結合部36Cは、フォーマットを変換した第2のデータと、第1のデータと、を、結合要求に含まれる結合順で結合し、結合データを生成する。また、第2結合部36Cは、結合データに、結合要求に含まれるファイル名を付与する。
次に、登録部36Dが、結合データを、記憶部38に記憶する(ステップS318)。なお、結合データは、記憶部38に記憶されると、第2のデータとなる。このため、結合データは、サーバ装置30の記憶部38に記憶されることで、次にサーバ装置30にログインしたMFP10に対して、結合対象の第2のデータとして提供されることとなる。
なお、登録部36Dは、生成した結合データと同じファイル名の第2のデータが記憶部38に記憶されている場合、記憶部38に記憶されている第2のデータ及び記憶する結合データのファイル名に、異なる番号等を付与する。例えば、第2のデータのファイル名が「AAA」であり、記憶する結合データのファイル名が「AAA」であるとする。この場合、登録部36Dは、記憶部38に記憶されている第2のデータのファイル名を「AAA_1」とし、結合データのファイル名を「AAA_2」とする。
次に、第2通信部36Aは、結合データに含まれる各データ(第1のデータ、1または複数の第2のデータ)の各々の送信元のユーザIDを読取る(ステップS320)。そして、第2通信部36Aは、読取ったユーザIDに対応する宛先に対して、結合結果を示す情報を通知する(ステップS322)。例えば、第2通信部36Aは、結合データに各データの作成者を、各データに含まれる属性情報などから読取る。そして、第2通信部36Aは、作成者と一致するユーザ名に対応する宛先(メールアドレスやIPアドレス)へ、公知のメールソフトや通信ソフト等を用いて、結合結果を示す情報を通知する。
そして、本ルーチンを終了する。
一方、上記ステップS312で、第2通信部36Aが、MFP10から結合要求を受信しなかった場合(ステップS312:No)、ステップS324へ進む。第2通信部36Aは、MFP10での第1結合部50Gで結合された結合データを、MFP10から受信する(ステップ324)。登録部36Dは、受信した結合データを、第2のデータとして、記憶部38へ記憶する(ステップS326)。なお、ステップS326においても、ステップS318と同様に、登録部36Dは、結合データと同じファイル名の第2のデータが記憶部38に記憶されている場合、各々のファイル名に異なる番号等を付与する。
一方、上記ステップS308で新規保存指示を受け付けたと判断すると(ステップS308:新規保存)、ステップS328へ進む。
ステップS328では、第2通信部36Aは、MFP10からファイル名を受信する(ステップS328)。次に、第2通信部36Aは、MFP10から第1のデータを受信する(ステップS330)。次に、登録部36Dは、ステップS330で受信した第1のデータに、ステップS328で受信したファイル名を付与して、第2のデータとして記憶部38に記憶する(ステップS332)。すなわち、第1のデータについても、記憶部38に記憶されると、次にサーバ装置30にログインしたMFP10に対して、結合対象の第2のデータとして提供される。
なお、登録部36Dは、受信した第1のデータに付与するファイル名と同じファイル名の第2のデータが記憶部38に記憶されている場合、ステップS318と同様に、各々のファイル名に異なる番号等を付与する。そして、本ルーチンを終了する。
以上説明したように、本実施の形態のMFP10は、取得部50Dと、第1通信部50Cと、受付部50Aと、通信制御部50Bと、を備える。取得部50Dは、原稿を読取り、第1のデータを取得するエンジン部17から、第1のデータを取得する。第1通信部50Cは、サーバ装置30とネットワーク40を介して通信する。受付部50Aは、サーバ装置30に記憶されている第2のデータの内、第1のデータとの結合対象の選択を操作部20から受け付ける。通信制御部50Bは、第1のデータと選択された第2のデータとの結合要求と、第1のデータと、をサーバ装置30へ送信するように第1通信部50Cを制御する。
このように、本実施の形態のMFP10は、スキャナー機能により取得した第1のデータを、第1のデータの記憶先のサーバ装置30へ転送する前に、サーバ装置30に記憶されている第2のデータの内、結合対象の選択を受け付ける。そして、MFP10は、第1のデータと選択された第2のデータとの結合要求と、第1のデータと、をサーバ装置30へ送信する。このため、サーバ装置30側では、受け付けた結合要求と第1のデータとを用いて、第1のデータと第2のデータとを結合することができる。
従って、本実施の形態のMFP10は、スキャナー機能により生成され第1のデータの、サーバ装置30への記憶時の利便性を向上させることができる。
ここで、操作部20を操作するユーザ毎に、サーバ装置30で実行可能な機能が制限される場合がある。このため、操作部20を操作するユーザが、サーバ装置30に設けられた第2結合部36Cを利用することが出来ない場合がある。
上述したように、本実施の形態のMFP10は、判断部50Hと第1結合部50Gとを備える。判断部50Hは、記憶先のサーバ装置30の第2結合部36Cを利用可能か否か、を判断する。第1結合部50Gは、複数のデータを結合する。そして、通信制御部50Bは、サーバ装置30の第2結合部36Cを利用可能と判断した場合、結合要求と第1のデータとをサーバ装置30へ送信するように第1通信部50Cを制御する。また、通信制御部50Bは、サーバ装置30の第2結合部36Cを利用不可と判断した場合、結合要求に基づいて第1のデータと選択された結合対象の第2のデータとを結合した結合データを生成するように第1結合部50Gを制御する。そして、通信制御部50Bは、結合データをサーバ装置30へ送信するように、第1通信部50Cを制御する。
このように、本実施の形態のMFP10は、ユーザの利用条件や契約条件などに応じて、サーバ装置30で実行する機能の一部を代行して実行する。すなわち、サーバ装置30の第2結合部36Cを利用できない場合、MFP10に設けられた第1結合部50Gを用いて、結合データを生成し、サーバ装置30へ送信する。
このため、ユーザは、サーバ装置30に設けられたいずれの機能を利用可能であるかを意識することなく、また、利用制限などに拘らず、結合データをサーバ装置30へ記憶させることができる。すなわち、本実施の形態のMFP10は、上記効果に加えて、更に、ユーザの利便性を向上させることができる。
また、第2のデータ等の既存の文書に、新たな文書を結合する結合処理は、ページ単位でデータを扱うフォーマットの文書に対して行うことができる。例えば、第2のデータのフォーマットがJPEGである場合、この第2のデータに新たな文書を結合することは出来ない。
上述したように、本実施の形態のMFP10では、受付部50Aが、結合データのフォーマットとして、ページ単位でデータを扱うフォーマットを操作部20から受け付ける。すなわち、本実施の形態で用いる結合要求は、結合データのフォーマットを含む。そして、MFP10の第1結合部50G、及びサーバ装置30の第2結合部36Cは、第1のデータと、選択された結合対象の第2のデータと、を、受け付けたフォーマットに変換した後に、結合する。
このため、操作部20を操作するユーザは、サーバ装置30に記憶されている第2のデータのフォーマットがどのようなフォーマットである場合も、第2のデータを第1のデータとの結合対象として選択することができる。このため、MFP10は、更に利便性の向上を図ることができる。
また、この機能は、特に、MFP10とサーバ装置30との通信速度が遅い場合などに効果的である。例えば、圧縮率の高いJPEGなどの画像データをサーバ装置30に記憶し、この画像データに、更に、原稿から読取った説明文書の第1のデータを結合させる場合などに、特に有効である。
また、本実施の形態では、受付部50Aが、第1のデータと、結合対象として選択された第2のデータと、の結合順を操作部20から受け付ける。そして、結合要求は、この結合順を含み、MFP10の第1結合部50G、及びサーバ装置30の第2結合部36Cは、第1のデータと、選択された結合対象の1または複数の第2のデータと、を、受け付けた結合順に従って結合する。
このため、本実施の形態のMFP10及びサーバ装置30は、ユーザによって指定された任意の結合順で、第1のデータと、選択された1または複数の第2のデータの各々と、を結合することができる。このため、MFP10及びサーバ装置30は、上記効果に加えて更に、利便性を向上させることができる。
また、本実施の形態の画像処理システム1000では、図5、図13、図15に示す処理を実行することで、操作部20を操作する複数のユーザの各々がサーバ装置30へ記憶させた第1のデータを、結合することができる。
図16は、本実施の形態の画像処理システム1000で実行する処理の模式図である。
図16(A)に示すように、例えば、サーバ装置30の記憶部38に、複数の第2のデータ62C、62D、62Eが記憶されていたとする。第2のデータ62Cは、ユーザCによってサーバ装置30に記憶されたデータ(記憶される前は第1のデータ)である。第2のデータ62Dは、ユーザDによってサーバ装置30に記憶されたデータである。第2のデータ62Eは、ユーザEによってサーバ装置30に記憶されたデータである。
そして、更に別のユーザFの操作指示によって、MFP10が、第1のデータ61Fを取得し、結合対象として、第2のデータ62C、62D、62Eの選択を受け付けたとする。また、結合データのフォーマットとして、Tiffが指定されたとする。
この場合、サーバ装置30の第2結合部36Cは、Tiffに変換した第2のデータ62C、62D、62Eと、第1のデータ61Fと、を指定された結合順で結合した結合データ64Gを生成する。そして、サーバ装置30の第2通信部36Aは、上述したように、結合データ64Gに含まれる各データの各々のユーザの宛先に対して、結合結果を示す情報を送信する。例えば、図16(C)に示すように、ユーザC、ユーザD、及びユーザEの各々のメールアドレスを宛先として、文書の結合が完了したことを示す情報を送信する。なお、ユーザFに対しても、結合結果を示す情報を送信してもよい。
このため、本実施の形態の画像処理システム1000は、結合データに関するユーザに対して、結合データの結合状況を容易に通知することができる。
また、上述したように、本実施の形態では、操作部20は、結合せずに第1のデータをサーバ装置30へ記憶する新規保存の入力を受け付けた場合、ファイル名入力画面を操作パネル27に表示する。そして、このファイル名入力画面は、上述したように、宛先として、記憶先として指定されたサーバ装置30に記憶されている第2のデータのファイル名の一覧を含んでもよい。ここで、ユーザによる操作部20の操作指示によって、結合データのファイル名として、既に記憶されている第2のデータのファイル名と同じファイル名が選択されたとする。
この場合、上述したように、サーバ装置30の登録部36Dは、記憶部38に記憶されている第2のデータ及び記憶する結合データのファイル名に、異なる番号等を付与する。登録部36Dは、例えば、サーバ装置30の記憶部38に記憶された順に昇順となるように、ファイル名に番号を付与する。
この機能は、複数のユーザが異なるタイミングでサーバ装置30へ第1のデータを順次記憶し、記憶された第1のデータである複数の第2のデータを、月末や年末などの所定のタイミングで結合データとする場合などに、特に有効である。例えば、活動レポートや、業務日報などは、複数のユーザによって作成される場合があるが、定期的に1つのデータとして結合されることが望まれる。
本実施の形態の画像処理システム1000を用いれば、ユーザの操作する操作部20には、記憶先のサーバ装置30に記憶されている第2のデータの一覧情報が表示される。このため、ユーザは、サーバ装置30に記憶されている第2のデータの内、将来結合する対象となる第2のデータと同じファイル名を、これからサーバ装置30へ記憶させる第1のデータのファイル名として指定することができる。そして、1つのデータとして結合するときに、ユーザが操作部20を操作することで、サーバ装置30では結合データを生成する。
このため、ユーザによる利便性を更に向上させることができる。
なお、本実施の形態における第1結合部50G及び第2結合部36Cは、結合対象の第1のデータに含まれる各ページのページ番号を読取り、読取ったページ番号順(昇順)に第1のデータに含まれる各ページを並べた上で、第2のデータに結合することが好ましい。
なお、結合要求に、結合順が含まれない場合、第1結合部50G及び第2結合部36Cは、ファイル名や更新日時を示すタイムスタンプなどを用いて、第1のデータと結合対象の第2のデータとの結合順を決定してもよい。
この場合、例えば、第1結合部50G及び第2結合部36Cは、第1のデータと、結合対象の1または複数の第2のデータと、の各々を、ファイル名のアルファベット順に並べた後に、結合すればよい。また、例えば、第1結合部50G及び第2結合部36Cは、第1のデータと、結合対象の1または複数の第2のデータと、の各々を、更新日時で昇順に並べた後に、結合すればよい。
第1結合部50G及び第2結合部36Cが、ファイル名やタイムスタンプなどを用いて結合順を決定することで、操作部20から結合対象の第2のデータの選択を受け付ければ、第1結合部50G及び第2結合部36Cは自動で結合処理を実行することができる。このため、更に、利便性を向上させることができる。
また、本実施の形態では、結合対象の第2のデータの選択をユーザから受け付けるときには、操作部20の表示制御部25Aが、サーバ装置30に記憶されている第2のデータの一覧情報を操作パネル27に表示する場合を示した。
しかし、表示制御部25Aは、結合対象の第2のデータをユーザに選択させる時に(図5のステップS132参照)、第2のデータの更新日時の範囲を操作パネル27に表示してもよい。
図17は、操作部20の操作パネル27に表示された、入力画面の一例を示す図である。図17に示すように、例えば、表示制御部25Aは、カレンダー等の日付を入力するための入力画面を操作パネル27に表示する。ユーザが、操作パネル27に表示されたカレンダーを参照しながら日付を選択すると、操作パネル27は、結合対象の第2のデータの識別情報として、選択された日付を制御部25へ出力する。操作部20から日付を受け付けたMFP10は、該日付以降を示す情報を、結合対象の第2のデータの識別情報として含む結合要求を記憶先のサーバ装置30へ送信する。サーバ装置30は、記憶部38に記憶されている第2のデータの内、結合対象の第2のデータの識別情報として示された日付以降を更新日とする第2のデータを、結合対象として読取ればよい。
このように、結合対象の第2のデータの識別情報を、更新日時などで表すことで、結合対象として指定する対象の第2のデータの数が多い場合であっても、利便性の向上を図ることができる。
なお、上記実施の形態の画像処理システム1000において予め記憶した各種情報を、ネットワーク40に接続された他のサーバ装置(図示省略)や、外部のハードディスク等の記憶媒体に記憶してもよい。
また、上記実施の形態の画像処理システム1000における、MFP10の各々と、操作部20と、サーバ装置30と、外部装置28と、が接続されたシステム構成は一例であり、用途や目的に応じて、様々なシステム構成例があることはいうまでもない。
なお、上記実施の形態の画像処理システム1000における、操作部20、MFP10、及びサーバ装置30で実行される上記各処理を実行するためのプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、上記実施の形態の画像処理システム1000における、操作部20、MFP10、及びサーバ装置30で実行される上記各処理を実行するためのプログラムを、インターネット等のネットワークに接続されたコンピュータ上に記憶し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上記実施の形態の画像処理システム1000における、操作部20、MFP10、及びサーバ装置30で実行される上記各処理を実行するためのプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
また、上記実施の形態の画像処理システム1000における、操作部20、MFP10、及びサーバ装置30で実行される上記各処理を実行するためのプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
なお、上記実施の形態の画像処理システム1000における、操作部20、MFP10、及びサーバ装置30は、上記各処理を実行するための機能部を含むモジュール構成となっている。実際のハードウェアとしては、CPU(プロセッサ)が上記記憶媒体から、上記各処理を実行するためのプログラムを読み出して実行することにより上記各機能部が主記憶装置上にロードされ、主記憶装置上に生成されるようになっている。
なお、上記には、本発明のいくつかの実施の形態を説明したが、これらの実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。