以下、本発明について実施形態をもって説明するが、本発明は後述する実施形態に限定されるものではない。
図1は、本発明の画像共有システムを示す図である。画像共有システム100は、インターネットやLAN(Local Area Network)等のネットワーク120を介して接続された画像処理装置110a,110bと、サーバ装置140とを含んで構成されている。
画像処理装置110a,110bは、ユーザPC130a,130bが提供する様々な画像を表示すると共に、ユーザが生成する描画画像を表示する装置である。画像処理装置110a,110bは、それぞれケーブル124,126を介してユーザPC130a,130bが接続されており、ユーザPC130a,130bの表示画像を受信して表示する。
ユーザPC130a,130bは、画像処理装置110a,110bに表示すべき画像を提供する情報処理装置である。ユーザPC130a,130bは、画像信号を出力するインタフェースを備えており、ユーザPC130a,130bの表示画像を形成する画像信号を所定のレートで画像処理装置110a,110bに供給する。
本実施形態では、ユーザPC130a,130bは、インタフェースとしてVGA出力端子(図示せず)を備えており、VGAケーブル等のケーブル124を介してVGA信号を画像処理装置110a,110bに送信することができる。他の実施形態では、ユーザPC130a,130bは、各種無線通信プロトコルに準拠した無線通信により、表示画像を送信してもよい。
また、ユーザPC130a,130bは、画像処理装置110が表示した画像を取得することができる。ユーザPC130a,130bは、USBポート(図示せず)を備えており、USBケーブル等のケーブル126を介して接続された画像処理装置110a,110bに格納されている表示画像を、USB Mass Storage Class等の汎用ドライバを使用して取得することができる。
本実施形態では、ユーザPC130a,130bとしてノート型PCを採用するが、他の実施形態では、デスクトップ型PCやタブレット型PC、PDA、デジタルビデオカメラ、デジタルカメラ等の画像フレームを供給可能な情報処理装置を採用することができる。
サーバ装置140は、画像処理装置110a,110bの描画画像を整合させる情報処理装置である。サーバ装置140は、ネットワーク120を介して画像処理装置110a,110bから描画画像を規定する描画情報および描画画像に対する操作を規定する操作情報を受信し、これらの情報を画像処理装置110a,110bに提供する。
図1に示す実施形態では、画像共有システム100では、2の拠点間で画像を共有するが、他の実施形態では、3以上の拠点間で画像を共有してもよい。
図2は、本発明の画像処理装置およびサーバ装置の構成を示す図である。以下、図2を参照して、画像処理装置110aおよびサーバ装置140のハードウェア構成および機能構成について説明する。なお、画像処理装置110bは画像処理装置110aと同様の構成を有するため、説明を省略する。
画像処理装置110aは、画像入力インタフェース232および画像出力インタフェース234を備えており、これらのインタフェースを介してユーザPC130aと接続される。
画像入力インタフェース232は、ユーザPC130aの表示画像を形成する画像信号を受信するインタフェースである。本実施形態では、画像入力インタフェース232としてDVI(Digital Visual Interface)端子によって構成されるDVIコネクタを採用することができる。画像入力インタフェース232は、ユーザPC130aからVGAケーブル等のケーブル124を介してVGA信号を受信し、画像処理装置110aが備える画像取得部206にVGA信号を供給する。
他の実施形態では、VGA(Video Graphics Array)コネクタ、HDMI(High-Definition Multimedia Interface)コネクタ、Displayportコネクタ等を採用することができる。さらに他の実施形態では、画像入力インタフェース232は、Bluetooth(登録商標)やWiFi等の無線通信プロトコルに準拠した無線通信により、ユーザPC130aから画像信号を受信してもよい。
画像出力インタフェース234は、画像処理装置110aの表示画像をユーザPC130aなどの外部装置に出力する物理インタフェースである。本実施形態では、画像出力インタフェース234としてUSBソケットを採用することができる。
画像処理装置110aは、プロセッサ200と、ROM202と、RAM204と、画像取得部206と、座標検出部224と、接触検知部226と、表示部240と、通信部242とを含んで構成される。
プロセッサ200は、CPUやMPU等の処理演算装置であり、WINDOWS(登録商標)シリーズ、UNIX(登録商標)、LINUX(登録商標)、TRON、ITRON、μITRONなどのOSを動作させ、これらのOSの管理下でアセンブラ、C、C++、Java(登録商標)、JavaScript(登録商標)、PERL、RUBY、PYTHONなどのプログラム言語で記述された本発明のプログラムを実行する。ROM202は、BIOSやEFI等のブートプログラムなどが保存される不揮発性メモリである。
RAM204は、DRAMやSRAM等の主記憶装置であり、本発明のプログラムを実行するための実行空間を提供する。プロセッサ200は、ソフトウェアプログラムや種々のデータなどを持続的に保持するためのハードディスク装置(図示せず)から、本発明のプログラムを読み出し、RAM204に展開して実行する。本発明のプログラムには、プログラムモジュールであるイベント処理部210、アプリ画像生成部212、レイアウト管理部214、描画処理部216、合成部218、表示制御部220、スナップショット生成部222、リポジトリ管理部228および描画画像共有部238が含まれる。
画像取得部206は、ユーザPC130aから画像信号を取得する機能手段である。画像取得部206は、ユーザPC130aから画像入力インタフェース232を介して画像信号を受信すると、当該画像信号を解析して、当該画像信号によって形成されるユーザPC130aの表示画像である画像フレームの解像度や当該画像フレームの更新頻度などの画像情報を導出し、アプリ画像生成部212に送信する。
また、画像取得部206は、当該画像信号を使用してユーザPC130aの表示画像である画像フレームをそれぞれ形成し、画像データを一時的に保存可能な記憶手段であるビデオRAM208にそれぞれ上書き保存する。
アプリ画像生成部212は、表示部240に表示すべき種々の表示ウィンドウを生成する機能手段である。表示ウィンドウには、ユーザPC130aの表示画像である画像フレームを表示する表示ウィンドウ、ユーザが生成する描画画像を表示する表示ウィンドウ、画像処理装置110aの各種設定を行うためのボタンやメニュー等を表示する表示ウィンドウ、ファイルビューアやWebブラウザ等の表示ウィンドウなどが含まれる。アプリ画像生成部212は、これらの表示ウィンドウを、当該表示ウィンドウを描画すべき画像レイヤに描画する。
レイアウト管理部214は、アプリ画像生成部212が生成する表示ウィンドウにユーザPC130aの表示画像を描画する機能手段である。レイアウト管理部214は、画像取得部206から画像情報を取得すると、ビデオRAM208に格納されている画像フレームを取得し、画像情報を使用して、画像フレームの大きさをアプリ画像生成部212が生成した表示ウィンドウの大きさに適合するように変更し、当該画像フレームを描画すべき画像レイヤに描画する。
接触検知部226は、描画装置260等の物体の接触を検知する機能手段である。本実施形態では、接触検知部226として、特許文献2に示すような赤外線遮断方式による座標入力/検出装置を採用する。この座標入力/検出装置では、表示部240の下側両端部に設置された2の受発光装置が、表示部240に平行して複数の赤外線を放射し、表示部240の周囲に設けられた反射部材によって同一光路上に反射する光を受光する。接触検知部226は、物体によって遮断された2の受発光装置が放射した赤外線の識別情報を座標検出部224に通知し、座標検出部224が、物体の接触位置座標および接近位置座標を特定する。
他の実施形態では、静電容量の変化を検知することにより接触位置を特定する静電容量方式のタッチパネル、対向する2の抵抗膜の電圧変化によって接触位置を特定する抵抗膜方式のタッチパネル、接触物体が表示部に接触することによって生じる電磁誘導を検知して接触位置を特定する電磁誘導方式のタッチパネルなどの種々の検出手段を採用してもよい。
座標検出部224は、物体が表示部240に接触した位置である座標位置を算出すると共に、種々のイベントを発行する機能手段である。本実施形態では、座標検出部224は、接触検知部226が通知する遮断された赤外線の識別情報を利用して、物体の接触位置の座標位置を算出する。座標検出部224は、接触位置座標および接近位置座標を示す座標位置情報と共に、種々のイベントをイベント処理部210に発行する。
座標検出部224が発行するイベントには、物体の接触または接近したことを通知するイベント(TOUCH)、物体が表示部240に接触または接近した状態で接触点または接近点が移動したことを通知するイベント(MOVE)、物体が表示部240から離れたことを通知するイベント(RELEASE)が含まれる。これらのイベントには、座標位置情報が含まれる。
描画装置260は、画像処理装置110aの接触検知部226に接触させて描画する装置である。描画装置260は、先端部に物体の接触を検知する接触検知部を備えたペン形状をしており、当該接触検知部が物体に接触すると、接触したことを示す接触信号を座標検出部224に送信する。
本実施形態では、Bluetooth(登録商標)等の近距離無線通信によって各種信号を送信する。他の実施形態では、超音波や赤外線を利用した無線通信によって各種信号を送信することができる。
イベント処理部210は、座標検出部224が発行するイベントを処理する機能手段である。イベント処理部210は、座標検出部224からイベントを受信すると、画像処理装置110aの他の機能手段に対して、描画指示および種々の操作指示を行う。
描画指示とは、描画画像を生成する指示であり、描画装置260を表示部240に接触させることによって生成される。操作指示とは、表示部240に表示された画面を構成するボタンやメニューバー等の種々の画面オブジェクトに割り当てられた操作を実行させる指示であり、描画装置260を表示部240の画面オブジェクトに接触させることによって生成される。イベント処理部210は、座標検出部224が発行したイベントに含まれる座標位置情報が画面オブジェクトの座標領域内であるときに操作指示を行う。
本実施形態の画面オブジェクトには、他拠点の画像処理装置110a,110bおよびサーバ装置140との通信確立を指示可能な画面オブジェクトと、描画画像の移動、拡大および縮小を指示可能な画面オブジェクトと、描画画像の削除を指示可能な画面オブジェクトとが含まれる。これらの画面オブジェクトが選択されると、イベント処理部210は、これらの画面オブジェクトに対応する操作指示を他の機能手段に送信する。
描画処理部216は、ユーザが描画装置260を用いて描画する描画画像を処理する機能手段である。描画処理部216は、イベント処理部210から描画指示を受信すると、当該描画画像の識別情報である描画画像識別情報を生成し、当該描画指示に含まれる描画画像の座標位置情報と、当該描画画像の色情報とを含む描画情報を、描画情報格納領域236に保存する。描画処理部216は、この描画情報を使用して、描画画像の座標位置情報が示す座標位置の色を、当該色情報が示す色に変更した画像レイヤ(以下、「手書きレイヤ」とする。)を生成して描画画像を生成する。ユーザは、表示部240に表示された画面オブジェクトを使用して、描画画像の色を指定することができる。
また、描画処理部216は、描画画像の選択、移動、拡大、縮小および削除を行う。描画画像の選択、移動、拡大、縮小および削除の処理については、図7〜図11を参照して詳述する。
合成部218は、種々の画像を合成する機能手段である。合成部218は、アプリ画像生成部212が画像を描画すべき画像レイヤと、レイアウト管理部214がユーザPC130aの表示画像を描画すべき画像レイヤ(以下、「画像キャプチャレイヤ」とする。)と、描画処理部216が画像を描画すべき手書きレイヤとを合成する。
表示制御部220は、表示部240を制御する機能手段である。表示制御部220は、合成部218が生成した合成画像を表示部240に表示する。本実施形態では、合成部218は、表示制御部220を呼び出して、合成画像を表示部240に表示する。他の実施形態では、合成部218および表示制御部220は、画像情報に含まれる画像フレームの更新頻度と同じ頻度で、画像レイヤを合成して表示部240に表示してもよい。
スナップショット生成部222は、ユーザPC130aの表示画像と描画処理部216が生成した描画画像との合成画像であるスナップショット画像を生成する機能手段である。スナップショット生成部222は、表示部240に表示されたスナップショットの取得を指示する画像オブジェクトが選択されると、画像キャプチャレイヤと手書きレイヤとを合成し、スナップショット画像を生成する。スナップショット生成部222は、リポジトリ管理部228に対し、生成したスナップショット画像を記憶装置230に保存させる。
リポジトリ管理部228は、スナップショット画像を格納すべき記憶装置230を制御する機能手段である。リポジトリ管理部228は、上述したように、スナップショット生成部222の指示により、スナップショット画像を記憶装置230に保存する。記憶装置230には、スナップショット画像がページ単位で保存される。また、リポジトリ管理部228は、ユーザPC130aの指示により、記憶装置230からスナップショット画像を取得し、ユーザPC130aに送信する。
描画画像共有部238は、ネットワーク120を介して接続されたサーバ装置140および他拠点の画像処理装置110bとの間で描画画像を共有する機能手段である。描画画像共有部238は、ネットワーク120のインタフェースである通信部242を介して、種々のデータ通信を行う。描画画像共有部238の機能構成については、図3を参照して詳述する。
サーバ装置140は、プロセッサと、ROMと、RAMとを備え、WINDOWS(登録商標)シリーズ、UNIX(登録商標)、LINUX(登録商標)、TRON、ITRON、μITRONなどのOSを動作させ、これらのOSの管理下でアセンブラ、C、C++、Java(登録商標)、JavaScript(登録商標)、PERL、RUBY、PYTHONなどのプログラム言語で記述された本発明のプログラムを実行する。
サーバ装置140は、通信部244と、接続部246と、蓄積部248と、描画画像共有部250と、不揮発性の記憶装置252,254とを含んで構成される。
通信部244は、ネットワーク120を介したデータ通信を行うインタフェースである。接続部246は、ネットワーク120を介した画像処理装置110a,110bとのセッションを確立する機能手段である。接続部246は、画像処理装置110a,110bからセッションの確立要求を受信すると、当該セッションの識別情報(以下、「セッションID」とする。)を生成し、図4に示す記憶装置254のセッション管理テーブルに当該セッションIDおよび画像処理装置110a,110bの識別情報を登録し、当該画像処理装置にセッションIDを送信してセッションを確立する。
蓄積部248は、ネットワーク120を介して画像処理装置110a,110bから受信した描画情報および操作情報を主記憶装置(図示せず)にバッファリングすると共に、バッファデータである描画情報および操作情報を記憶装置252に保存する機能手段である。
蓄積部248は、画像処理装置110a,110bから描画情報および操作情報を受信すると、これらの情報を識別する情報(以下、「バッファデータID」とする。)を生成し、セッションID、バッファデータID、当該描画情報および操作情報の種類、当該描画情報および操作情報の保存先のアドレスを、図4に示す記憶装置254の描画画像管理テーブルに登録し、当該描画情報および操作情報を、バッファデータIDおよび送信元識別情報と共に主記憶装置にバッファリングする。また、蓄積部248は、主記憶装置にバッファリングした描画情報および操作情報を記憶装置252に保存する。
描画画像共有部250は、画像処理装置110a,110bの描画画像を整合させる機能手段である。描画画像共有部250は、画像処理装置110aとネットワーク120との通信が切断された場合には、図12を参照して詳述する描画画像の整合処理を実行する。また、描画画像共有部250は、サーバ装置140が画像処理装置110a,110bと通信している間にシャットダウンして再起動した場合には、図13,14を参照して詳述する描画画像の整合処理を実行する。
図2に示す画像共有システム100は、サーバ装置140を含んで構成されるが、他の実施形態では、サーバ装置140を使用せず、画像処理装置110a,110bがサーバ装置140の機能手段を備えるようにしてもよい。
図3は、本発明の画像処理装置が有する描画画像格納領域および描画画像共有部の詳細図である。以下、図3を参照して、画像処理装置110aの描画情報格納領域236に格納される描画情報および描画画像共有部238の機能構成について説明する。
描画情報格納領域236に格納される描画情報には、描画画像が含まれる表示画像のページと、描画画像識別情報と、描画画像の色情報と、描画画像の位置情報と、選択状態とが含まれる。
画像処理装置110aの表示部240に表示される表示画像は、複数のページで構成することができ、描画情報格納領域236には、描画情報が表示画像のページ毎に保存される。描画画像識別情報は、描画画像が生成されるときに描画処理部216によって生成される。描画画像の色情報は、描画画像の色を示す。描画画像の位置情報は、描画画像の座標位置を示す。選択状態は、描画画像の選択状態を示す情報である。本実施形態では、選択状態「0」は、描画画像が選択されていない状態を示し、選択状態「1」は、描画画像が選択されている状態を示す。
描画画像共有部238は、接続部300と、送信部302と、受信部304と、接続検知部306と、描画画像整合部308とを含んで構成される。
接続部300は、サーバ装置140および画像処理装置110bとのセッションを確立する機能手段である。接続部300は、イベント処理部210からセッションの確立指示を受信すると、セッションの確立要求をサーバ装置140に送信する。接続部300は、例えば、TCPプロトコル3ウェイ・ハンドシェイクを利用して、サーバ装置140および画像処理装置110bとのセッションを確立することができる。接続部300は、サーバ装置140が送信するセッションIDをRAM204に保存する。
送信部302は、ネットワーク120を介してサーバ装置140に種々のデータを送信する機能手段である。受信部304は、サーバ装置140からネットワーク120を介して種々のデータを受信する機能手段である。本実施形態の送信部302および受信部304は、パケット単位でサーバ装置140とデータ通信を行う。
接続検知部306は、画像処理装置110aがネットワーク120に接続されているか検知する機能手段である。接続検知部306は、例えば、TCPによるパケット送信後のタイムエラーによって、ネットワーク通信の切断を検知することができる。また、接続検知部306は、定期的にARPパケットをサーバ装置140に送信し、サーバ装置140からの応答が無い場合に、ネットワーク通信が切断されていると判断することもできる。
描画画像整合部308は、画像処理装置110a,110bおよびサーバ装置140との間で描画画像を整合させる機能手段である。描画画像整合部308は、画像処理装置110aとネットワーク120との通信が切断された場合には、図12を参照して詳述する描画画像の整合処理を実行する。また、描画画像整合部308は、サーバ装置140が画像処理装置110a,110bと通信中にシャットダウンして再起動した場合には、図13,14を参照して詳述する描画画像の整合処理を実行する。
図4は、本発明のサーバ装置が処理するデータテーブルおよびバッファデータを示す図である。以下、図4を参照して、サーバ装置140の記憶装置254に構築されるセッション管理テーブル400および描画画像管理テーブル404と、バッファデータである描画情報410および操作情報420,424,428とについて説明する。
セッション管理テーブル400は、サーバ装置140が画像処理装置110a,110bからセッションの確立要求を受信したときに生成されるデータテーブルである。サーバ装置140の接続部246は、セッションの確立要求を受信すると、当該セッションを示すセッションID401を生成し、当該セッションIDと、セッションの確立要求に含まれる画像処理装置の識別情報402とを関連付けて、セッション管理テーブル400に登録する。
描画画像管理テーブル404は、画像共有システム100で共有すべき描画画像を管理するためのデータテーブルである。描画画像管理テーブル404は、セッションID405と、バッファデータID406と、バッファデータ種類407と、メモリアドレス408とが関連付けて登録される。
セッションID405は、セッションの確立時に接続部246によって生成されるセッションの識別情報である。バッファデータID406は、画像処理装置110a,110bから描画情報および操作情報を受信したときに、蓄積部248によって生成されるバッファデータの識別情報である。バッファデータ種類407は、バッファデータの種類を示す情報である。メモリアドレス408は、バッファデータの格納先のメモリアドレスである。
描画情報410は、サーバ装置140が主記憶装置にバッファリングし、記憶装置252に保存する描画情報である。描画情報410には、バッファデータID411と、描画画像識別情報412と、色情報・位置情報413と、ページ414と、選択状態415と、送信元識別情報416とが含まれる。
バッファデータID411は、描画画像管理テーブル404に登録されるバッファデータIDに相当する。描画画像識別情報412、色情報・位置情報413、ページ414および選択状態415は、画像処理装置110a,110bから受信した描画情報である。送信元識別情報416は、当該描画情報を送信した画像処理装置の識別情報である。
操作情報420,424,428は、サーバ装置140が主記憶装置にバッファリングし、記憶装置252に保存する操作情報である。
操作情報420は、描画画像の移動操作を示す情報であり、送信元識別情報421と、描画画像識別情報422と、操作内容423とが関連付けて登録される。送信元識別情報421は、当該操作情報を送信した画像処理装置の識別情報である。描画画像識別情報422は、移動すべき描画画像の識別情報である。操作内容423は、描画画像の操作内容を示す情報であり、操作内容である描画画像の移動と、描画画像の移動量とで構成される。本実施形態の操作内容は、移動量(−10,60)に応じて描画画像を移動することを示す。
操作情報424は、描画画像の拡大操作を示す情報であり、送信元識別情報425と、描画画像識別情報426と、操作内容427とが関連付けて登録される。送信元識別情報425は、当該操作情報を送信した画像処理装置の識別情報である。描画画像識別情報426は、拡大すべき描画画像の識別情報である。操作内容427は、描画画像の操作内容を示す情報であり、操作内容である描画画像の拡大と、描画画像を拡大した後の描画画像の位置情報とが含まれる。本実施形態の操作内容は、(112,234)および(160,30)が示す座標位置に拡大後の描画画像を生成することを示す。
操作情報428は、描画画像の縮小操作を示す情報であり、送信元識別情報429と、描画画像識別情報430と、操作内容431とが関連付けて登録される。送信元識別情報429は、当該操作情報を送信した画像処理装置の識別情報である。描画画像識別情報430は、縮小すべき描画画像の識別情報である。操作内容431は、描画画像の操作内容を示す情報であり、操作内容である描画画像の縮小と、描画画像を縮小した後の描画画像の位置情報とが含まれる。本実施形態の操作内容は、(112,234)および(120,200)が示す座標位置に縮小後の描画画像を生成することを示す。
図5は、本発明の画像処理装置が実行する処理の一実施形態を示すフローチャートである。以下、図5を参照して、画像処理装置110aが実行する処理について説明する。
図5に示す処理は、ステップS500から開始し、ステップS501で画像処理装置110aのイベント処理部210が、座標検出部224から受信した座標位置情報が示す位置が、描画情報格納領域236に保存されている描画情報である座標位置情報が示す位置、すなわち、描画画像の座標位置と一致するか否か判断する。これらの位置が一致しない場合には(no)、処理をステップS502に分岐させる。
ステップS502では、図11を参照して詳述する描画画像の選択解除処理が実行される。ステップS503では、図6を参照して詳述する描画画像の生成処理が実行され、ステップS509で処理が終了する。
一方、ステップS501の判定で当該位置が一致すると判断した場合には(yes)、処理をステップS504に分岐させる。ステップS504では、イベント処理部210は、描画情報格納領域236を参照し、当該描画情報が示す描画画像が選択されているか否か判断する。本実施形態では、座標位置情報が示す位置と一致する位置情報を含む描画情報の選択状態が「1」であるときには、当該描画情報が示す描画画像が選択されていると判断する。
描画画像が選択されていない場合には(no)、処理をステップS505に分岐させる。ステップS505では、図7を参照して詳述する描画画像の選択処理が実行され、ステップS509で処理が終了する。
一方、ステップS504の判定で描画画像が選択されていると判断した場合には(yes)、処理をステップS506に分岐させる。ステップS506では、イベント処理部210は、ユーザが選択した画面オブジェクトの種類に応じて、処理をステップS507またはステップS508に分岐させる。
具体的には、描画画像の移動を指示する画面オブジェクト、描画画像の拡大を指示する画面オブジェクトまたは描画画像の縮小を指示する画面オブジェクトが選択された場合には、ステップS507に処理を分岐させる。ステップS507では、図8および図9を参照して詳述する処理が実行され、ステップS509で処理が終了する。
一方、描画画像の削除を指示する画面オブジェクトが選択された場合には、ステップS508に処理を分岐させる。ステップS508では、図10を参照して詳述する描画画像の削除処理が実行され、ステップS509で処理が終了する。
図15は、本発明の画像処理装置が実行する処理の別の実施形態を示すフローチャートである。以下、図15を参照して、画像処理装置110aが実行する別の処理について説明する。
図15に示す処理は、ステップS1500から開始し、ステップS1501で画像処理装置110aのイベント処理部210が、ユーザが画面オブジェクトを用いて選択したモードの種類を判断する。
具体的には、イベント処理部210は、座標検出部224から受信した座標位置情報が示す位置が、描画画像を生成する「描画モード」を指定するボタンの座標領域内であるか、または描画画像を選択する「ストローク選択モード」を指定するボタンの座標領域内であるか否か判断する。座標検出部224から受信した座標位置情報の示す位置が、「描画モード」を指定するボタンの座標領域内である場合は、処理をステップS1502に分岐する。一方、座標検出部224から受信した座標位置情報の示す位置が、「ストローク選択モード」を指定するボタンの座標領域内である場合は、処理をステップS1504に分岐する。
ステップS1502では、図11を参照して詳述する描画画像の選択解除処理が実行される。ステップS1503では、図6を参照して詳述する描画画像の生成処理が実行され、ステップS1510で処理が終了する。
ステップS1504では、イベント処理部210は、描画画像が選択されているか否か判断する。具体的には、イベント処理部210は、描画情報格納領域236に保存されているストロークの選択枠の領域情報を参照し、座標検出部224から受信した後続の座標位置情報が示す位置が、ストロークの選択枠の領域内であるか否か判断する。後続の座標位置情報が示す位置がストロークの選択枠の領域内である場合には、描画画像が選択されていると判断する。一方、後続の座標位置情報が示す位置がストロークの選択枠の領域外である場合には、描画画像が選択されていないと判断する。なお、ストロークの選択枠については後述する。
描画画像が選択されていないと判断した場合は(no)、処理がステップS1505に分岐する。ステップS1505では、描画処理部216が、後続の座標位置情報が示す位置に描画画像を生成する。本実施形態では、描画処理部216は、ユーザの描画動作に従って、領域が閉じられた曲線を描画するものとする。
ステップS1506では、描画処理部216は、当該曲線が形成する領域(以下、「ユーザ指定領域」とする。)に含まれる描画画像を判断し、当該描画画像を包含するストロークの選択枠を描画する。
具体的には、描画処理部216は、描画情報格納領域236に保存されている描画画像の座標位置情報と、当該曲線の座標位置情報とを比較し、表示部240に表示されている描画画像がユーザ指定領域に含まれるか否か判断する。そして、描画処理部216は、図16に示すように、ユーザ指定領域に含まれると判断した描画画像を包含するストロークの選択枠を描画し、当該ストロークの選択枠の領域情報を描画情報格納領域236に保存する。本実施形態では、描画処理部216は、ストロークの選択枠を描画した後、ステップS1505で描画した曲線を削除する。
一方、ステップS1504の判定で描画画像が選択されていると判断した場合には(yes)、処理をステップS1507に分岐させる。ステップS1507では、イベント処理部210は、ユーザが選択した画面オブジェクトの種類に応じて、処理をステップS1508またはステップS1509に分岐させる。
具体的には、描画画像の移動を指示する画面オブジェクト、描画画像の拡大を指示する画面オブジェクトまたは描画画像の縮小を指示する画面オブジェクトが選択された場合には、ステップS1508に処理を分岐させる。ステップS1508では、図8および図9を参照して詳述する処理が実行され、ステップS1510で処理が終了する。
一方、描画画像の削除を指示する画面オブジェクトが選択された場合には、ステップS1509に処理を分岐させる。ステップS1509では、図10を参照して詳述する描画画像の削除処理が実行され、ステップS1510で処理が終了する。
図6は、本発明の画像処理装置およびサーバ装置が実行する処理を示すフローチャートである。以下、図6を参照して、描画画像を生成する場合に、画像処理装置110a,110bおよびサーバ装置140が実行する処理について説明する。
図6(a)の処理は、図5に示すステップS503および図15に示すステップS1503の処理に相当する。図6(a)の処理はステップS600から開始し、ステップS601でイベント処理部210が、MOVEイベントを受信したか否か判断する。MOVEイベントを受信していない場合には(no)、ステップS601の処理を反復する。一方、MOVEイベントを受信した場合には(yes)、処理をステップS602に分岐させる。
ステップS602では、イベント処理部210は、MOVEイベントに含まれる座標位置情報を取得し、当該座標位置情報と共に描画指示を描画処理部216に送信する。ステップS603では、描画処理部216が、描画情報を生成して描画情報格納領域236に保存する。
ステップS604では、描画処理部216は、当該描画情報を使用して描画画像を生成する。ステップS605では、イベント処理部210は、RELEASEイベントを受信したか否か判断する。RELEASEイベントを受信していない場合には(no)、ステップS605の処理を反復する。一方、RELEASEイベントを受信した場合には(yes)、処理をステップS606に分岐させる。ステップS606では、イベント処理部210は、描画画像共有部238に描画要求の送信を指示し、描画画像共有部238が、当該描画情報と共に描画要求をサーバ装置140に送信し、ステップS607で処理が終了する。
図6(b)の処理は、サーバ装置140が画像処理装置110aから描画要求を受信することによりステップS608から開始する。ステップS609では、サーバ装置140の蓄積部248が、記憶装置254の描画画像管理テーブルを更新すると共に、画像処理装置110aから受信した描画情報をバッファリングする。ステップS610では、描画画像共有部250が、当該描画情報と共に描画要求を画像処理装置110bに送信する。ステップS611では、蓄積部248は、当該描画情報を記憶装置252に保存し、ステップS612で処理が終了する。
図6(c)の処理は、画像処理装置110bがサーバ装置140から描画要求を受信することによりステップS613から開始する。ステップS614では、画像処理装置110bの描画画像共有部238が、描画情報格納領域236に描画情報を保存し、描画処理部216が当該描画情報を使用して描画画像を生成し、ステップS615で処理が終了する。
図7は、本発明の画像処理装置およびサーバ装置が実行する処理を示すフローチャートである。以下、図7を参照して、描画画像を選択する場合に、画像処理装置110a,110bおよびサーバ装置140が実行する処理について説明する。
図7(a)の処理は、図5に示すステップS505の処理に相当する。図7(a)の処理はステップS700から開始し、ステップS701でイベント処理部210が、RELEASEイベントを受信したか否か判断する。RELEASEイベントを受信していない場合には(no)、ステップS701の処理を反復する。一方、RELEASEイベントを受信した場合には(yes)、処理をステップS702に分岐する。
ステップS702では、描画画像共有部238が、当該描画画像の描画画像識別情報と共に、描画画像の選択要求をサーバ装置140に送信する。ステップS703では、描画画像共有部238は、サーバ装置140から当該描画画像の選択要求に応答するメッセージを受信したか否か判断する。メッセージを受信していない場合には(no)、ステップS703の処理を反復する。一方、メッセージを受信した場合には(yes)、処理をステップS704に分岐させる。
ステップS704では、描画画像共有部238は、サーバ装置140から受信したメッセージの内容から描画画像の選択が正常に終了したか否か判断する。描画画像の選択が正常に終了しなかった場合には(no)、ステップS706で処理が終了する。一方、描画画像の選択が正常に終了した場合には(yes)、処理をステップS705に分岐させる。ステップS705では、描画画像共有部238は、描画情報格納領域236に保存された当該描画情報の選択状態を「1」に変更し、ステップS706で処理が終了する。
図7(b)の処理は、サーバ装置140が画像処理装置110aから描画画像の選択要求を受信することにより、ステップS707から開始する。ステップS708では、サーバ装置140の描画画像共有部250が、主記憶装置にバッファリングされた描画情報を参照し、描画画像の選択要求と共に受信した描画画像識別情報が示す描画画像が選択されているか判断する。
描画画像が選択されている場合には(yes)、ステップS709に処理を分岐する。ステップS709では、描画画像共有部250は、描画画像の選択が正常に終了しなかった旨のメッセージを、画像処理装置110aに送信し、ステップS713で処理が終了する。一方、描画画像が選択されていない場合には(no)、処理をステップS710に分岐する。
ステップS710では、描画画像共有部250は、主記憶装置にバッファリングされた描画情報および記憶装置252に保存された描画情報の選択状態を「1」に変更する。ステップS711では、描画画像共有部250は、描画画像の選択が正常に終了した旨のメッセージを、画像処理装置110aに送信する。ステップS712では、描画画像共有部250は、当該描画画像の描画画像識別情報と共に、描画画像の選択要求を画像処理装置110bに送信する。
図7(c)の処理は、画像処理装置110bがサーバ装置140から描画画像の選択要求を受信することにより、ステップS714から開始する。ステップS715では、画像処理装置110bの描画画像共有部238が、当該描画画像の選択要求と共に受信した描画画像識別情報が示す描画情報格納領域236に保存された描画画像の選択状態を「1」に変更し、ステップS716で処理が終了する。
図8は、本発明の画像処理装置が実行する処理を示すフローチャートである。以下、図8を参照して、描画画像を移動、拡大または縮小する場合に、画像処理装置110aが実行する処理について説明する。
図8の処理は、図5に示すステップS507および図15に示すステップS1508の処理に相当する。図8の処理はステップS800から開始し、ステップS801でイベント処理部210が、MOVEイベントを受信したか否か判断する。MOVEイベントを受信していない場合には(no)、ステップS801の処理を反復する。一方、MOVEイベントを受信した場合には(yes)、ステップS802に処理を分岐させる。
ステップS802では、イベント処理部210は、ユーザが指示した操作種類を判断し、操作種類に応じてステップS803、ステップS807またはステップS811に処理を分岐させる。
具体的には、描画画像の移動を指示する画面オブジェクトが選択された場合には、イベント処理部210は、描画処理部216に描画画像の移動を指示し、ステップS803に処理を分岐させる。描画画像の拡大を指示する画面オブジェクトが選択された場合には、イベント処理部210は、描画処理部216に描画画像の拡大を指示し、ステップS807に処理を分岐させる。描画画像の縮小を指示する画面オブジェクトが選択された場合には、イベント処理部210は、描画処理部216に描画画像の縮小を指示し、ステップS811に処理を分岐させる。
ステップS803では、描画処理部216は、TOUCHイベントに含まれる座標位置情報およびMOVEイベントに含まれる座標位置情報を使用して、描画画像の移動量を算出し、描画情報格納領域236に保存された描画画像の位置情報を、移動後の描画画像の位置情報に変更する。ステップS804では、描画処理部216は、変更された描画画像の位置情報を使用して、移動後の描画画像を生成する。
ステップS805では、イベント処理部210は、RELEASEイベントを受信したか否か判断する。RELEASEイベントを受信していない場合には(no)、ステップS805の処理を反復する。一方、RELEASEイベントを受信した場合には(yes)、処理をステップS806に分岐させる。ステップS806では、描画画像共有部238が、操作情報である当該描画画像の識別情報および移動量と共に、描画画像の移動要求をサーバ装置140に送信し、ステップS815で処理が終了する。
ステップS807では、描画処理部216は、TOUCHイベントに含まれる座標位置情報およびMOVEイベントに含まれる座標位置情報を使用して、描画画像の拡大率を算出し、当該拡大率および座標位置情報を使用して、拡大後の描画画像の位置情報を算出する。そして、描画処理部216は、描画情報格納領域236に保存された描画画像の位置情報を、拡大後の描画画像の位置情報に変更する。ステップS808では、描画処理部216は、変更された描画画像の位置情報を使用して、拡大後の描画画像を生成する。
ステップS809では、イベント処理部210は、RELEASEイベントを受信したか否か判断する。RELEASEイベントを受信していない場合には(no)、ステップS809の処理を反復する。一方、RELEASEイベントを受信した場合には(yes)、処理をステップS810に分岐させる。ステップS810では、描画画像共有部238が、操作情報である当該描画画像の識別情報および拡大後の描画画像の位置情報と共に、描画画像の拡大要求をサーバ装置140に送信し、ステップS815で処理が終了する。
ステップS811では、描画処理部216は、TOUCHイベントに含まれる座標位置情報およびMOVEイベントに含まれる座標位置情報を使用して、描画画像の縮小率を算出し、当該縮小率および座標位置情報を使用して、縮小後の描画画像の位置情報を算出する。そして、描画処理部216は、描画情報格納領域236に保存された描画画像の位置情報を、縮小後の描画画像の位置情報に変更する。ステップS812では、描画処理部216は、変更された描画画像の位置情報を使用して、縮小後の描画画像を生成する。
ステップS813では、イベント処理部210は、RELEASEイベントを受信したか否か判断する。RELEASEイベントを受信していない場合には(no)、ステップS813の処理を反復する。一方、RELEASEイベントを受信した場合には(yes)、処理をステップS814に分岐させる。ステップS814では、描画画像共有部238が、操作情報である当該描画画像の識別情報および縮小後の描画画像の位置情報と共に、描画画像の縮小要求をサーバ装置140に送信し、ステップS815で処理が終了する。
図9は、本発明の画像処理装置およびサーバ装置が実行する処理を示すフローチャートである。以下、図9を参照して、サーバ装置140が画像処理装置110aから、操作要求である描画画像の移動要求、拡大要求または縮小要求を受信した場合に、サーバ装置140および画像処理装置110bが実行する処理について説明する。
図9(a)の処理は、サーバ装置140が画像処理装置110aから操作要求を受信した場合に実行する処理である。図9(a)の処理はステップS900から開始し、ステップS901でサーバ装置140の描画画像共有部250が、操作要求と共に受信した操作情報を主記憶装置にバッファリングする。
ステップS902では、描画画像共有部250は、当該操作情報と共に操作要求を画像処理装置110bに送信する。ステップS903では、描画画像共有部250は、記憶装置252および主記憶装置に保存された操作要求の対象である描画画像の描画情報の位置情報を変更し、ステップS904で処理が終了する。
より詳細には、描画画像の移動要求の場合には、描画画像共有部250は、主記憶装置にバッファリングされた操作要求の対象である描画画像の描画情報の位置情報と、操作情報である描画画像の移動量を使用して、移動後の描画画像の位置情報を算出し、移動後の描画画像の位置情報を記憶装置252および主記憶装置に保存する。描画画像の拡大要求および縮小要求の場合には、描画画像共有部250は、記憶装置252および主記憶装置に保存された操作要求の対象である描画画像の描画情報の位置情報を、操作情報である描画画像の描画情報の位置情報と置き換える。
図9(b)の処理は、画像処理装置110bがサーバ装置140から、操作要求である描画画像の移動要求、拡大要求または縮小要求を受信した場合に実行する処理である。図9(b)の処理はステップS905から開始し、ステップS906で画像処理装置110bの描画画像共有部238が操作要求の種類を判断し、操作要求の種類に応じて処理を分岐させる。
具体的には、操作要求が描画画像の移動要求である場合には、処理をステップS907に分岐させる。操作要求が描画画像の拡大要求である場合には、処理をステップS908に分岐させる。操作要求が描画画像の縮小要求である場合には、処理をステップS909に分岐させる。
ステップS907では、描画画像共有部238は、描画情報格納領域236に保存された移動要求の対象である描画画像の描画情報の位置情報と、移動要求と共に受信した描画画像の移動量を使用して、移動後の描画画像の位置情報を算出し、描画情報格納領域236に保存する。そして、描画処理部216が、当該描画画像の位置情報を使用して移動後の描画画像を生成し、ステップS910で処理が終了する。
ステップS908では、描画画像共有部238は、拡大要求と共に受信した描画画像の位置情報を描画情報格納領域236に保存する。そして、描画処理部216が、当該描画画像の位置情報を使用して拡大後の描画画像を生成し、ステップS910で処理が終了する。
ステップS909では、描画画像共有部238は、縮小要求と共に受信した描画画像の位置情報を描画情報格納領域236に保存する。そして、描画処理部216が、当該描画画像の位置情報を使用して縮小後の描画画像を生成し、ステップS910で処理が終了する。
図10は、本発明の画像処理装置およびサーバ装置が実行する処理を示すフローチャートである。以下、図10を参照して、描画画像を削除する場合に、画像処理装置110a,110bおよびサーバ装置140が実行する処理について説明する。
図10(a)の処理は、図5に示すステップS508および図15に示すステップS1509の処理に相当する。図10(a)の処理はステップS1000から開始し、ステップS1001でイベント処理部210が、RELEASEイベントを受信したか否か判断する。RELEASEイベントを受信していない場合には(no)、ステップS1001の処理を反復する。一方、RELEASEイベントを受信した場合には(yes)、ステップS1002に処理を分岐させる。
ステップS1002では、描画画像共有部238が、当該描画画像の識別情報と共に描画画像の削除要求をサーバ装置140に送信する。ステップS1003では、描画処理部216が、描画情報格納領域236に保存された当該描画画像の描画情報を削除し、描画画像を削除した手書きレイヤを生成し、ステップS1004で処理が終了する。
図10(b)の処理は、サーバ装置140が画像処理装置110aから描画画像の削除要求を受信した場合に実行する処理である。図10(b)の処理はステップS1005から開始し、ステップS1006でサーバ装置140の描画画像共有部250が、削除要求を主記憶装置にバッファリングする。ステップS1007では、描画画像共有部250は、当該描画画像の識別情報と共に描画画像の削除要求を画像処理装置110bに送信する。ステップS1008では、描画画像共有部250は、当該描画画像の識別情報が示す描画画像の描画情報を記憶装置252および主記憶装置から削除すると共に、描画画像管理テーブルを更新し、ステップS1009で処理が終了する。
図10(c)の処理は、画像処理装置110bがサーバ装置140から描画画像の削除要求を受信した場合に実行する処理である。図10(c)の処理はステップS1010から開始し、ステップS1011で画像処理装置110bの描画画像共有部238が、当該描画画像の識別情報が示す描画画像の描画情報を描画情報格納領域236から削除し、描画処理部216が、当該描画画像を削除した手書きレイヤを生成し、ステップS1012で処理が終了する。
図11は、本発明の画像処理装置およびサーバ装置が実行する処理を示すフローチャートである。以下、図11を参照して、描画画像の選択を解除する場合に、画像処理装置110a,110bおよびサーバ装置140が実行する処理について説明する。
図11(a)の処理は、図5に示すステップS502および図15に示すステップS1502の処理に相当する。図11(a)の処理はステップS1100から開始し、ステップS1101で描画画像共有部238が、描画画像の選択解除要求をサーバ装置140に送信する。ステップS1102では、描画画像共有部238は、描画情報格納領域236に保存された総ての描画情報の選択状態を「0」に変更して描画画像の選択を解除し、ステップS1103で処理が終了する。
図11(b)の処理は、サーバ装置140が画像処理装置110aから描画画像の選択解除要求を受信した場合に実行する処理である。図11(b)の処理はステップS1104から開始し、ステップS1105でサーバ装置140の描画画像共有部250が、描画画像の選択解除要求を主記憶装置にバッファリングする。ステップS1106では、描画画像共有部250は、描画画像の選択解除要求を画像処理装置110bに送信する。ステップS1107では、描画画像共有部250は、記憶装置252および主記憶装置に保存された総ての描画情報の選択状態を「0」に変更し、ステップS1108で処理が終了する。
図11(c)の処理は、画像処理装置110bがサーバ装置140から描画画像の選択解除要求を受信した場合に実行する処理である。図11(c)の処理はステップS1109から開始し、ステップS1110で画像処理装置110bの描画画像共有部238が、描画情報格納領域236に保存された総ての描画情報の選択状態を「0」に変更して描画画像の選択を解除し、ステップS1111で処理が終了する。
図12は、本発明の画像処理装置およびサーバ装置が実行する処理を示すフローチャートである。以下、図12を参照して、画像処理装置110aとネットワーク120との通信が切断された場合に、画像処理装置110aおよびサーバ装置140の描画画像を整合させる処理について説明する。
図12(a)の処理は、ステップS1200から開始し、ステップS1201で画像処理装置110aが有する描画画像共有部238の接続検知部306が、ネットワーク120との通信が切断されたか否か判断する。ネットワーク通信が切断されていない場合には(no)、ステップS1201の処理を反復させる。一方、ネットワーク通信が切断された場合には(yes)、処理をステップS1202に分岐させる。
ステップS1202では、接続検知部306は、ネットワーク120との通信が回復した否か判断する。ネットワーク通信が回復していない場合には(no)、ステップS1202の処理を反復させる。一方、ネットワーク通信が回復した場合には(yes)、処理をステップS1203に分岐させる。
ステップS1203では、描画画像整合部308が、描画情報格納領域236に保存された描画情報を使用して、ハッシュ値を示すメッセージダイジェスト(以下、「MD」とする。)をページ毎に生成する。メッセージダイジェストは、例えば、公知技術のMD5(Message Digest Algorithm5)を用いて生成することができる。ステップS1204では、描画画像整合部308は、RAM204に保存されたセッションIDを取得し、送信部302を介して、当該セッションID、MDおよび当該MDに関するページを指定するページ指定情報をサーバ装置140に送信する。
ステップS1205では、受信部304が、サーバ装置140から描画情報を受信したか否か判断する。描画情報を受信していない場合(no)、すなわち、画像処理装置110aおよびサーバ装置140の描画画像の整合が取れている場合には、ステップS1207で処理が終了する。一方、描画情報を受信した場合(yes)、すなわち、画像処理装置110aおよびサーバ装置140の描画画像の整合が取れていない場合には、処理をステップS1206に分岐させる。ステップS1206では、描画画像整合部308は、描画処理部216に描画を指示し、描画処理部216が、サーバ装置140から受信した描画情報を用いて描画画像を生成し、ステップS1207で処理が終了する。
図12(b)の処理は、サーバ装置140が画像処理装置110aからセッションID、MDおよびページ指定情報を受信することにより、ステップS1208から開始する。ステップS1209では、サーバ装置140の描画画像共有部250が、記憶装置254に保存された描画画像管理テーブルを参照し、画像処理装置110aから受信したセッションIDおよびページ指定情報を使用して、主記憶装置に保存されたバッファデータの中から当該ページ指定情報が示すページの描画情報を特定し、当該描画情報を用いて当該ページのMDを生成する。
ステップS1210では、描画画像共有部250は、ステップS1209で生成したMDと、画像処理装置110aから受信したMDとを比較することによって一致するか否か判断する。これらのMDが一致する場合には(yes)、ステップS1212で処理が終了する。一方、これらのMDが一致しない場合には(no)、処理をステップS1211に分岐させる。ステップS1211では、ステップS1209で生成した描画情報を画像処理装置110aに送信し、ステップS1212で処理が終了する。
図13は、本発明のサーバ装置が実行する処理を示すフローチャートである。以下、図13を参照して、サーバ装置140が、画像処理装置110a,110bと通信中にシャットダウンして再起動した場合に、画像処理装置110a,110bおよびサーバ装置140の描画画像を整合させる処理について説明する。
図13の処理は、ステップS1300から開始し、ステップS1301でサーバ装置140の描画画像共有部250が、記憶装置252に保存された描画情報を主記憶装置にロードする。ステップS1302では、描画画像共有部250は、記憶装置254に保存されたセッション管理テーブルを参照し、シャットダウンする前に通信していた画像処理装置を特定し、当該画像処理装置に対して総てのページのMDを要求する。
ステップS1303では、描画画像共有部250は、当該画像処理装置からMDを受信したか否か判断する。MDを受信していない場合には(no)、ステップS1303の処理を反復する。一方、MDを受信した場合には(yes)、処理をステップS1304に分岐させる。ステップS1304では、描画画像共有部250は、主記憶装置にロードした描画情報を使用して、総てのページについてMDを生成し、当該MDと画像処理装置から受信したMDとを比較することによって一致するか否か判断する。総てのページについて、これらのMDが一致する場合には(yes)、処理をステップS1308に分岐させる。一方、これらのMDのうち少なくとも一つが相違する場合には(no)、処理をステップS1305に分岐させる。
ステップS1305では、描画画像共有部250は、MDが相違するページの描画情報を当該画像処理装置に要求する。ステップS1306では、描画画像共有部250は、当該画像処理装置から描画情報を受信したか否か判断する。描画情報を受信していない場合には(no)、ステップS1306の処理を反復させる。一方、描画情報を受信した場合には(yes)、処理をステップS1307に分岐させる。ステップS1307では、描画画像共有部250は、当該描画情報に対応する主記憶装置および記憶装置252に保存された描画情報を、当該画像処理装置から受信した描画情報と置き換える。
ステップS1308では、描画画像共有部250は、総ての画像処理装置について、ステップS1303〜ステップS1307の処理を実行したか否か判断する。総ての画像処理装置について当該処理を実行していない場合には(no)、処理をステップS1303に戻し、総ての画像処理装置について当該処理を実行する。一方、総ての画像処理装置について当該処理を実行した場合には(yes)、処理をステップS1309に分岐させる。
ステップS1309では、描画画像共有部250は、主記憶装置に保存された描画情報を使用して、総てのページについてMDを生成する。ステップS1310では、描画画像共有部250は、当該MDと、ステップS1303で受信した1の画像処理装置のMDとを比較することによって一致するか否か判断する。総てのページについて、これらのMDが一致する場合には(yes)、処理をステップS1312に分岐させる。
一方、これらのMDのうち少なくとも一つが相違する場合には(no)、処理をステップS1311に分岐させる。ステップS1311では、描画画像共有部250は、当該画像処理装置に対し、MDが異なるページの描画情報を送信する。
ステップS1312では、描画画像共有部250は、総ての画像処理装置について、ステップS1310およびステップS1311の処理を実行したか否か判断する。総ての画像処理装置について当該処理を実行していない場合には(no)、処理をステップS1310に戻し、総ての画像処理装置について当該処理を実行する。一方、総ての画像処理装置について当該処理を実行した場合には(yes)、ステップS1313で処理が終了する。
図14は、本発明の画像処理装置が実行する処理を示すフローチャートである。以下、図14を参照して、サーバ装置140が画像処理装置110a,110bと通信中にシャットダウンして再起動した場合に、画像処理装置110a,110bが実行する処理について説明する。
図14(a)の処理は、ステップS1400で画像処理装置110a,110bが、図13に示すステップS1302でサーバ装置140が送信した総てのページについてのMDの要求を受信することにより開始する。ステップS1401では、画像処理装置110a,110bが有する描画画像共有部238の描画画像整合部308が、描画情報格納領域236に保存された描画情報を使用して、総てのページについてMDを生成する。ステップS1402では、描画画像整合部308は、送信部302を介して、当該MDをサーバ装置140に送信し、ステップS1403で処理が終了する。
図14(b)の処理は、ステップS1404で画像処理装置110a,110bが、図13に示すステップS1305でサーバ装置140が送信した特定のページの描画情報の要求を受信することにより開始する。ステップS1405では、描画画像整合部308は、描画情報格納領域236に保存された当該ページの描画情報を取得し、送信部302を介してサーバ装置140に送信し、ステップS1406で処理が終了する。
図14(c)の処理は、ステップS1407で画像処理装置110a,110bが、図13に示すステップS1311でサーバ装置140が送信した描画情報を受信することにより開始する。ステップS1408では、描画画像整合部308は、当該画像情報に対応する描画情報格納領域236に保存された描画情報を、サーバ装置140から受信した描画情報に置き換え、ステップS1409で処理が終了する。
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、本実施形態の構成要素を変更若しくは削除し、または本実施形態の構成要素を他の構成要素を追加するなど、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用効果を奏する限り、本発明の範囲に含まれるものである。
上述した機能手段を実現する本発明のプログラムは、ハードディスク装置、CD−ROM、MO、フレキシブルディスク、EEPROM、EPROMなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。