(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
当該情報処理装置の画面上における所定の領域内に表示される画像データを外部装置に対して送信する送信手段と、
前記外部装置の画面上における前記画像データの表示領域を示す情報を前記外部装置毎に取得する第１の取得手段と、
前記外部装置毎に取得された前記画像データの表示領域を示す情報に基づいて、前記情報処理装置の画面上における表示領域のうち、前記各外部装置の画面上において前記画像データが表示されていない領域に該当する領域を前記外部装置毎に判定する第１の判定手段と、
前記第１の判定手段により前記外部装置毎に判定された領域を合成する合成手段と、
前記合成手段により合成された領域の表示状態を切り替える表示制御手段とを有することを特徴とする情報処理装置。
【請求項２】
前記画像データの表示領域を示す情報に基づいて、前記所定の領域のうち、前記外部装置において前記画像データが表示されていない領域に該当する領域を判定する第２の判定手段を更に有し、
前記表示制御手段は、前記第２の判定手段により判定された領域の表示状態を切り替えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記外部装置において前記画像データの全てを表示し切れていない理由を示す情報を取得する第２の取得手段を更に有し、
前記表示制御手段は、前記理由を示す情報を表示させることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記合成手段は、前記第１の判定手段により前記外部装置毎に判定された領域の論理積をとることにより領域を合成することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記合成手段は、前記第１の判定手段により前記外部装置毎に判定された領域の論理和をとることにより領域を合成することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項６】
情報処理装置によって実行される情報処理方法であって、
前記情報処理装置の画面上における所定の領域内に表示される画像データを外部装置に対して送信する送信ステップと、
前記外部装置の画面上における前記画像データの表示領域を示す情報を前記外部装置毎に取得する第１の取得ステップと、
前記外部装置毎に取得された前記画像データの表示領域を示す情報に基づいて、前記情報処理装置の画面上における表示領域のうち、前記各外部装置の画面上において前記画像データが表示されていない領域に該当する領域を前記外部装置毎に判定する第１の判定ステップと、
前記第１の判定ステップにより前記外部装置毎に判定された領域を合成する合成ステップと、
前記合成ステップにより合成された領域の表示状態を切り替える表示制御ステップとを有することを特徴とする情報処理方法。
【請求項７】
コンピュータに、
当該コンピュータの画面上における所定の領域内に表示される画像データを外部装置に対して送信する送信ステップと、
前記外部装置の画面上における前記画像データの表示領域を示す情報を前記外部装置毎に取得する第１の取得ステップと、
前記外部装置毎に取得された前記画像データの表示領域を示す情報に基づいて、前記コンピュータの画面上における表示領域のうち、前記各外部装置の画面上において前記画像データが表示されていない領域に該当する領域を前記外部装置毎に判定する第１の判定ステップと、
前記第１の判定ステップにより前記外部装置毎に判定された領域を合成する合成ステップと、
前記合成ステップにより合成された領域の表示状態を切り替える表示制御ステップとを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上における所定の領域に表示される画像データを外部装置にも表示させる技術に関するものである。
【背景技術】
【０００２】
近年のネットワークの発展、会議の電子化に伴い、音声、ビデオ映像を用いた遠隔会議においてもコンピュータシステムを利用した画面共有システムを使用することが一般的になっている。この画面共有システムの１つの形態に、以下の２つの機能を実行するシステムがある。
【０００３】
１つの機能は、サーバ装置の画面に表示されている画像データの一部又は全体をクライアント装置に対して送信し、クライアント装置側で表示させる表示機能である。この表示機能により、クライアント装置のユーザは、サーバ装置における現在の表示状態を確認することができる。もう１つの機能は、クライアント装置の画面上の画像データの表示領域に対するマウスやキーボードを用いた操作内容を、クライアント装置からサーバ装置へ送信し、サーバ装置側でもクライアント装置と同様の画像データに対する操作を再現する操作機能である。この操作機能により、クライアント装置のユーザはサーバ装置を遠隔操作することができる。
【０００４】
また、クライアント装置で表示されている画像データを確実にサーバ装置にも表示させる方法として、サーバ装置の画面とクライアント装置の画面とで画像データを共有している際にクライアント装置側での操作を制限するシステムが知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２３４０７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示される技術においては、クライアント装置側のユーザの操作は大きく制限され、会議に必要な資料をユーザ自身が選択し表示させることができない。本来、会議に利用される情報はサーバ装置からのみ提供されるのではなく、各ユーザが自主的に情報を集め、会議に活用できなければ密度の高い会議を行うことはできず、これでは未だ不十分と言わざるをえない。
【０００７】
そこで、本発明の目的は、外部装置側の操作制限を緩和するととともに、情報処理装置と外部装置との画像表示の差異を情報処理装置側で確認できるようにすることにある。
【課題を解決するための手段】
【０００８】
本発明の情報処理装置は、情報処理装置であって、当該情報処理装置の画面上における所定の領域内に表示される画像データを外部装置に対して送信する送信手段と、前記外部装置の画面上における前記画像データの表示領域を示す情報を前記外部装置毎に取得する第１の取得手段と、前記外部装置毎に取得された前記画像データの表示領域を示す情報に基づいて、前記情報処理装置の画面上における表示領域のうち、前記各外部装置の画面上において前記画像データが表示されていない領域に該当する領域を前記外部装置毎に判定する第１の判定手段と、前記第１の判定手段により前記外部装置毎に判定された領域を合成する合成手段と、前記合成手段により合成された領域の表示状態を切り替える表示制御手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、外部装置側の操作制限を緩和するととともに、情報処理装置と外部装置との画像表示の差異を情報処理装置側で確認することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施形態に係る画面共有システムの全体的な構成を示す図である。
【図２】サーバ装置の構成を示す図である。
【図３】サーバ装置上においてクライアント装置の非表示範囲を強調表示する例を説明するための図である。
【図４】本発明の１の実施形態における非共有領域を強調表示する際のサーバ装置の処理を示すフローチャートである。
【図５】画面共有を開始した後、クライアント装置側において共有画像データを表示するウィンドウの全画面表示を解除した場合について説明するための図である。
【図６】画面共有を開始した後、クライアント装置側において共有画像データを表示するウィンドウを最小化した場合について説明するための図である。
【図７】画面共有を開始した後、クライアント装置側において共有画像データを表示するウィンドウが他のウィンドウに一部隠れた場合について説明するための図である。
【図８】画面共有を開始した後、クライアント装置側において画面内で共有画像データを拡大表示した場合について説明するための図である。
【図９】クライアント装置毎に異なる範囲を表示させる場合について説明するための図である。
【図１０Ａ】本発明の第２の実施形態における非共有領域を強調表示する際のサーバ装置の処理を示すフローチャートである。
【図１０Ｂ】本発明の第２の実施形態における非共有領域を強調表示する際のサーバ装置の処理を示すフローチャートである。
【図１１】ユーザが画面上の一部領域を共有領域として指定し、さらにクライアント装置にてそれぞれの表示状態が変更された例を示す図である。
【図１２】クライアント装置側で共有画像データを表示しているウィンドウの全画面表示を解除した例を示す図である。
【図１３】本発明の第３の実施形態におけるクライアント装置の処理を示すフローチャートである。
【図１４】クライアント装置側において共有画像データを表示するウィンドウを最小化した例について説明するための図である。
【図１５】クライアント装置側において共有画像データを表示するウィンドウが他のウィンドウに一部隠された例について説明するための図である。
【図１６】クライアント装置側において共有画像データを表示するウィンドウを拡大表示した例について説明するための図である。
【発明を実施するための形態】
【００１１】
以下、本発明の好適な実施形態を、添付図面を参照しながら詳細に説明する。なお、以下に説明する実施形態は飽くまでも本発明の適用例に過ぎず、本発明は以下に説明する実施形態に限定されるものではない。
【００１２】
先ず、本発明の第１の実施形態について説明する。図１は、本発明の第１の実施形態に係る画面共有システムの全体的な構成を示す図である。図１において、サーバ装置１１０は、画面共有システムの中核を成し、外部装置であるクライアント装置１２０と共有する画像データの領域の決定、及び、クライアント装置１２０と共有する画像データの生成、送信を行うサーバ装置である。また、サーバ装置１１０は、複数種類のアプリケーションを同時に実行し、それらのアプリケーションが提供するウィンドウ１１２、１１３を画面１１１に表示する機能を備える。なお、以下の説明では、サーバ装置１１０のユーザが画面１１１上で指定した、クライアント装置１２０と共有する画像データの領域を共有画像データと称し、当該共有画像データを含む画面１１１上の領域を共有領域と称す。
【００１３】
なお、サーバ装置１１０は、以下に説明するサーバ装置１１０としての機能を実現するための画面共有サーバプログラムを記憶している。サーバ装置１１０は、自身の画面１１１上に表示している画像データの一部又は全部から共有画像データを取得し、ネットワーク１０１を介してクライアント装置１２０に対して送信する。ここでは、ウィンドウ１１２を含む領域１１４内の画像データを共有画像データとし、領域１１４を共有領域とする。
【００１４】
クライアント装置１２０は、共有画像データの受信及び表示を行う。クライアント装置１２０は、以下に説明するクライアント装置１２０としての機能を実現するための画面共有クライアントプログラムを記憶している。また、クライアント装置１２０は、ネットワーク１０１を介してサーバ装置１１０から共有画像データを受信する受信機能を備えるとともに、受信した共有画像データ１２２を自身の画面１２１に表示する表示機能を備える。
【００１５】
なお、サーバ装置１１０とクライアント装置１２０との数はそれぞれ１台に限定されず、いくつでもよい。１台のサーバ装置１１０が複数台のクライアント装置１２０に対して共有画像データを送信することも可能であり、１台のクライアント装置１２０が複数台のサーバ装置１１０から共有画像データを受信することも可能である。また、サーバ装置１１０の機能とクライアント装置１２０の機能とを１台の装置に同時に備え、サーバ装置１１０の機能とクライアント装置１２０の機能とを同時に実行しても構わない。
【００１６】
図２は、第１の実施形態におけるサーバ装置１１０の構成を示す図である。なお、第１の実施形態におけるサーバ装置１１０は、パーソナルコンピュータ等の汎用的な情報処理装置で構成されている。またクライアント装置１２０も、サーバ装置１１０と同等の情報処理装置で構築されている。
【００１７】
図２において、２０１は、サーバ装置１１０全体の制御を司る制御部であり、ＣＰＵ等で構成される。２０２は、ブートプログラムやＢＩＯＳ、各種アプリケーション、画面共有サーバプログラム、データファイル等が記憶される記憶部であり、ＲＯＭ、ＲＡＭ、ＨＤＤ等の記憶媒体から構成される。２０３は、ビデオメモリを内蔵し、制御部２０１の制御に応じて描画処理や表示用のビデオ信号の生成処理を行い、接続されるモニタにビデオメモリの内容を表示させる表示部である。２０４は、標準入力装置として機能するキーボード、ポインティングデバイス制御機能を有する入力部である。入力部２０４は、接続されるキーボードやマウス等の入力装置からの操作命令を受信して、その操作命令に応じて各種処理を実行する。２０５は、ネットワーク１０１を介してデータを送受信するネットワークＩ／Ｆ部であり、例えばネットワークカードで構成される。
【００１８】
２０６は、表示部２０３から画像データを取得し、共有画像データを生成する表示画像取得部である。表示画像取得部２０６により生成された共有画像データは、ネットワークＩ／Ｆ部２０５を介してクライアント装置１２０に対して送信される。２０７は、ネットワークＩ／Ｆ部２０５を介して受信した遠隔操作命令を解析する遠隔操作命令解析部である。遠隔操作命令解析部２０７は、遠隔操作命令を入力部２０４が処理する操作命令へ変換し、入力部２０４にて実行させる。入力部２０４は、遠隔操作命令とキーボード、ポインティングデバイスからの操作命令とを区別せずに実行し、遠隔操作を実現する。
【００１９】
なお、表示画像取得部２０６及び遠隔操作命令解析部２０７は、サーバ装置１１０における主要な構成要素のため独立して構成しているが、制御部２０１等の別の構成要素に含まれていても構わない。
【００２０】
図３は、サーバ装置１１０上においてクライアント装置１２０の非表示範囲を強調表示する例を説明するための図である。図３（ａ）は非表示範囲を強調表示する前の状態を示しており、図３（ｂ）は非表示範囲を強調表示した後の状態を示している。なお、共有領域１１４を示す破線は説明用に記入したものであり、実際の画面には表示されない。なお、上記非表示領域については後述する。
【００２１】
サーバ装置１１０とクライアント装置１２０とがネットワーク１０１で接続された状態において、サーバ装置１１０のユーザが共有領域１１４を指定することにより、画面共有が開始される。図３（ａ）に示すように、画面共有を開始した直後の状態においては、サーバ装置１１０の画面１１４上における共有領域１１４内の共有画像データと同じ共有画像データ１２２がクライアント装置１２０の画面１２１上に表示される。これにより、サーバ装置１１０のユーザとクライアント装置１２０のユーザとは、同じ共有画像データを見ながら遠隔会議を行うことができる状態となる。
【００２２】
その後、サーバ装置１１０は、ユーザによりマウス等の入力装置が操作されたことを
強調表示開始イベントとして検知すると、クライアント装置１２０が現在表示している共有画像データ１２２の表示状態をクライアント装置１２０に対して問い合わせる。図３（ａ）に示す状態では、クライアント装置１２０において共有領域１１４内の共有画像データがそのまま表示されている。そのため、クライアント装置１２０は、表示状態として、共有領域１１４内の共有画像データの全てが表示されていることをサーバ装置１１０に対して通知する。サーバ装置１１０は、クライアント装置１２０から通知された表示状態に基づいて、サーバ装置１１０の画面１１１上の表示領域のうち、クライアント装置１２０の画面１２１上では共有画像データ１２２が非表示となっている領域に該当する領域を判定する。以下では、サーバ装置１１０の画面１１１上の表示領域のうち、クライアント装置１２０の画面１２１上では共有画像データ１２２が非表示となっている領域に該当する領域を、非共有領域と称す。
【００２３】
そしてサーバ装置１１０は、図３（ｂ）に示すように、判定した非共有領域を網掛け表示３１５して強調表示を行う。サーバ装置１１０のユーザは、強調表示を確認することにより、共有領域１１４内の共有画像データの全てがクライアント装置１２０の画面１２１上で表示されていることが分かる。これにより、サーバ装置１１０のユーザとクライアント装置１２０のユーザとは互いに同じ画像データを見ながら議論することができる。また、サーバ装置１１０のユーザは、クライアント装置１２０のユーザに対して他に見せたい資料がある場合、網掛け表示３１５がない共有領域１１４内に当該資料の画像データを配置すればよいことを容易に把握することができる。
【００２４】
次に、図４を参照しながら、第１の実施形態におけるサーバ装置１１０の処理について詳細に説明する。図４は、第１の実施形態における非共有領域を強調表示する際のサーバ装置１１０の処理を示すフローチャートである。
【００２５】
先ず、サーバ装置１１０及びクライアント装置１２０がネットワーク１０１で接続された状態において、ユーザの操作によりサーバ装置１１０上で共有領域１１４が指定されると、ステップＳ４０１において、サーバ装置１１０は画面共有を開始する。ステップＳ４０２において、サーバ装置１１０は、強調表示開始イベントとしてキーボード、マウス等が操作されるイベントを取得する。
【００２６】
ステップＳ４０３において、サーバ装置１１０は、クライアント装置１２０に対して現在の表示状態を問い合わせる。サーバ装置１１０は、共有画像データの表示領域を示す座標を表示状態としてクライアント装置１２０から取得する。ステップＳ４０４において、サーバ装置１１０は、クライアント装置１２０から受信した表示状態に基づいて、共有領域１１４より外側の領域が非共有領域であると判定する。ステップＳ４０５において、サーバ装置１１０は、判定した非共有領域を網掛け表示３１５して強調表示を行う。なお、ステップＳ４０３は、第１の取得手段の処理例である。ステップＳ４０４は、第１の判定手段の処理例である。ステップＳ４０５は、表示制御手段の処理例である。
【００２７】
ステップＳ４０６において、サーバ装置１１０は、共有領域１１４を示す座標を取得する。ステップＳ４０７において、サーバ装置１１０は、共有領域１１４を示す座標と、クライアント装置１２０から取得した共有画像データ１２２の表示領域を示す座標とを比較し、差異がないか否かを判定する。共有領域１１４を表す座標とクライアント装置１２０の画面１２１上で表示される共有画像データを表す座標とに差異がある場合、処理はステップＳ４２１に移行する。一方、それらに差異がない場合、処理はステップＳ４０８に移行する。即ち、図３に示すように、共有領域１１４を示す座標とクライアント装置１２０の画面１２１上で表示される共有画像データの表示領域を示す座標とに差異がない場合、処理はステップＳ４０８に移行する。
【００２８】
ステップＳ４０８において、サーバ装置１１０は、キーボード、マウス等の操作終了から１０秒経過したことを強調表示終了イベントとして取得する。ステップＳ４０９において、サーバ装置１１０は網掛け表示３１５を非表示とし、画面１１１を通常表示に戻す。ステップＳ４１０において、サーバ装置１１０は画面共有を継続するか否かを判定する。画面共有を継続する場合、処理はステップＳ４０２に移行し、サーバ装置１１０は次の強調表示開始イベントを待つ。一方、画面共有を終了する場合、処理はステップＳ４１１に移行し、サーバ装置１１０は画面共有を終了する。
【００２９】
なお、ステップＳ４０２にて取得される強調表示開始イベントはキーボード、マウス操作に限らず、サーバ装置１１０に対する他の操作、又は、クライアント装置１２０からの遠隔操作でも構わない。また、サーバ装置１１０はユーザの発言をマイク等で取得し、強調表示開始イベントとして扱ってもよい。これにより、同じ画面を見ているかどうかを確認しながら会話を進めることが可能となり、確認している資料が違うために話の通じない会議が行われることを割けることができるようになる。さらに、定期的に又は常に強調表示開始イベントを自動生成させ、強調表示開始の判定を容易にしてもよい。
【００３０】
次に、共有領域１１４を示す座標とクライアント装置１２０の画面１２１上における共有画像データの表示領域を示す座標とに差異がある場合について説明する。このように共有領域１１４を示す座標とクライアント装置１２０の画面１２１上における共有画像データの表示領域を示す座標とに差異が生じる状況としては、例えば、クライアント装置１２０のユーザが画面１２１上の表示内容を変化させ、共有画像データ１２２の一部が表示されなくなる状況が考えられる。
【００３１】
以下、図５を参照しながら、画面共有を開始した後、クライアント装置１２０側において共有画像データ１２２を表示するウィンドウ５２１の全画面表示を解除した場合について説明する。図５（ａ）は、ウィンドウ５２１の全画面表示を解除した状態を示している。全画面表示を解除したウィンドウ５２１は、共有画像データ１２２全体を表示するだけの面積がないため、共有画像データ１２２の一部を表示しており、はみ出た分はスクロールバーを表示させている。実際にクライアント装置１２０側で表示されている共有画像データ１２２の一部をサーバ装置１１０側に表示すると、領域５１１内の表示となる。なお、図３と同様に、破線１１４及び５１１は実際には画面１１１には表示されない。
【００３２】
サーバ装置１１０は、ユーザによりマウス等の入力装置が操作されたことを強調表示開始イベントとして検知すると、クライアント装置１２０に対して現在の表示状態を問い合わせる。クライアント装置１２０は、ウィンドウ５２１が表示している共有画像データ１２２の表示領域を示す座標を表示状態としてサーバ装置１１０に対して送信する。それととともに、サーバ装置１１０は、共有画像データ１２２を全て表示するにはウィンドウ５２１のサイズが小さいという理由をサーバ装置１１０に対して送信する。サーバ装置１１０は、クライアント装置１２０から受信した表示状態に基づいて非共有領域を判定し、図５（ｂ）に示すように、当該非共有領域を網掛け表示５１２にして強調表示を行う。サーバ装置１１０のユーザは、この強調表示を確認することにより、当該非共有領域以外の領域５１１内の共有画像データしかクライアント装置１２０のユーザが見えていないことが分かる。なお、上記のようにサーバ装置１１０が共有画像データ１２２を全て表示するにはウィンドウ５２１のサイズが小さいという理由をクライアント装置１２０から取得する処理は、第２の取得手段の処理例である。
【００３３】
また、サーバ装置１１０は、クライアント装置１２０の状況をより詳しく表示させることもできる。即ち、サーバ装置１１０は、共有領域１１４を示す座標と領域５１１を示す座標とに基づいて、共有領域１１４内の共有画像データのうち、クライアント装置１２０の画面１２１上で表示されていない画像データに該当する領域を判定する。そしてサーバ装置１１０は、当該領域に対して網掛け表示５１２とは異なるパターンの網掛け表示５１３を行う。さらに、サーバ装置１１０は、図５（ｃ）に示すように、クライアント装置１２０から取得した共有画像データ１２２の全体が表示し切れない理由を説明文５１４として網掛け表示５１３の上に表示させる。これにより、サーバ装置１１０のユーザは、クライアント装置１２０の状況が詳しく把握できるため、クライアント装置１２０側で共有画像データ１２２の全体を表示してもらうために必要な対応は何かを容易に把握することができる。必要であれば、サーバ装置１１０は、網掛け表示５１３及び説明文５１４の内容をクライアント装置１２０に送信し、サーバ装置１１０とクライアント装置１２０とで表示内容を同期させることもできる。
【００３４】
次に、図４を参照しながら、図５に示した手順について詳細に説明する。ここでは、サーバ装置１１０は、ステップＳ４０１〜Ｓ４０２で画面共有開始及び強調表示開始イベント取得を行った後、ステップＳ４０３において、クライアント装置１２０に対して表示状態を問い合わせる。図５に示すように、クライアント装置１２０は、共有画像データ１２２の表示領域を示す座標を表示状態としてサーバ装置１２０に対して送信する。それとともに、クライアント装置１２０は、共有画像データ１２２の全てを表示し切れない理由としてウィンドウ５２１が小さいという理由をサーバ装置１２０に対して送信する。ステップＳ４０４において、サーバ装置１１０は、クライアント装置１２０から受信した表示状態に基づいて、領域５１１より外側の領域が非共有領域であると判定する。ステップＳ４０５において、サーバ装置１１０は、非共有領域を網掛け表示５１２にする。
【００３５】
ステップＳ４０６において、サーバ装置１１０は共有領域１１４を示す座標を取得する。ステップＳ４０７において、サーバ装置１１０は、共有領域１１４を示す座標と、クライアント装置１２０の画面１２１上における共有画像データ１２２の表示領域を示す座標とを比較し、それらに差異がないか否かを判定する。ここでは、共有領域１１４を示す座標と、クライアント装置１２０の画面１２１上における共有画像データ１２２の表示領域を示す座標とに差異があることを前提としているため、処理はステップＳ４０７からステップＳ４２１に移行する。このように、共有領域１１４のうち、クライアント装置１２０において共有画像データ１２２が表示されていない領域に該当する領域を、以下では非表示領域と称す。このように非表示領域を判定する処理は、第２の判定手段の処理例である。
【００３６】
ステップＳ４２１において、サーバ装置１１０は、非表示領域について詳細情報を表示するか否かを判定する。詳細情報を表示する場合、処理はステップＳ４２２に移行する。一方、詳細情報を表示しない場合、処理はステップＳ４０８に移行する。ここでは、網掛け表示５１３及び説明文５１４が詳細情報である。ステップＳ４２２において、サーバ装置１１０は、非表示領域を網掛け表示５１３して強調表示を行う。ステップＳ４２３において、サーバ装置１１０は、クライアント装置１２０が共有画像データ１２２の全てを表示し切れない理由を表示する。ここでは、共有画像データ１２２の全てを表示し切れない理由として、ウィンドウ５２１が小さすぎることが表示される。ステップＳ４０８以降の処理は、上述した通りである。
【００３７】
次に、図６を参照しながら、画面共有を開始した後、クライアント装置１２０側において共有画像データ１２２を表示するウィンドウ５２１を最小化した場合について説明する。図６（ａ）は、ウィンドウ５２１を最小化した状態を示している。従って、クライアント装置１２０の画面１２１には、共有画像データ１２２が全く表示されていない。そのため、サーバ装置１１０が非共有領域を強調表示すると、図６（ｂ）に示すように、画面１１１の全面に網掛け表示６１１がなされた状態となる。図６（ｃ）は、網掛け表示６１１とは異なるパターンの網掛け表示６１２を非表示領域（ここでは、非表示領域と共有領域１１４とは同一）に対して行うとともに、共有画像データ１２２の全てが表示されていない理由を表示した状態を示している。ここでは、共有画像データ１２２の全てを表示し切れていない理由として、ウィンドウ５２１が最小化されていることが表示される。これにより、サーバ装置１１０のユーザは、クライアント装置１２０のユーザが共有領域１１４内の共有画像データを全く見ていないことを把握することができる。また、サーバ装置１１０のユーザは、クライアント装置１２０のユーザが共有領域１１４の画像データを見てもらうためには、ウィンドウ５２１の最小化を元に戻せばよいことを把握することができる。なお、図６において、画面１１１上の破線は実際には表示されない。
【００３８】
次に、図７を参照しながら、画面共有を開始した後、クライアント装置１２０側において共有画像データ１２２を表示するウィンドウ５２１が他のウィンドウ７２１に一部隠れた場合について説明する。図７（ａ）は、ウィンドウ５２１が他のウィンドウ７２１に隠れた状態を示している。これにより、クライアント装置１２０では共有画像データ１２２の一部が表示されなくなっているので、サーバ装置１１０の画面１１１上で非共有領域を強調表示すると、図７（ｂ）に示すように、クライアント装置１２０における実際の共有画像データ１２２の表示領域以外の領域に該当する領域に網掛け表示７１２がなされた状態となる。図７（ｃ）は、共有領域１１４のうち、他のウィンドウ７２１によって隠れた領域に該当する領域（非表示領域）に対して、網掛け表示７１２とは異なるパターンの網掛け表示７１３を行った状態を示している。また、図７（ｃ）では、クライアント装置１２０において共有画像データ１２２を全て表示し切れていない理由（説明文）７１４を表示した状態も示している。ここでは、クライアント装置１２０において共有画像データ１２２の全てを表示し切れていない理由として、ウィンドウ５２１が他のウィンドウ７２１によって隠れた状態となっていることが表示される。なお、図７において、画面１１１上の破線は実際には表示されない。
【００３９】
次に、図８を参照しながら、画面共有を開始した後、クライアント装置１２０側において画面１２１内で共有画像データ１２２を拡大表示した場合について説明する。図８（ａ）は、共有画像データ１２２を拡大表示した状態を示している。これにより、クライアント装置１２０の画面１２１では共有画像データ１２２の一部しか表示されなくなる。そのため、非共有領域を強調表示すると、図８（ｂ）に示すように、クライアント装置１２０における実際の共有画像データ１２２の表示領域以外の領域に該当する領域に網掛け表示９１２がなされた状態となる。図８（ｃ）は、共有領域１１４のうち、拡大表示によって表示されなくなった領域に該当する領域に対して、網掛け表示９１２とは異なるパターンの網掛け表示９１３を行った状態を示している。また、図８（ｃ）では、クライアント装置１２０において共有画像データ１２２の全てを表示し切れない理由（説明文）９１４を表示した状態も示している。ここでは、クライアント装置１２０において共有画像データ１２２が拡大表示されていることが表示される。なお、図８において、画面１１１上の破線は実際には表示されない。
【００４０】
以上のように、本実施形態によれば、クライアント装置１２０側の操作制限を緩和するととともに、サーバ装置１１０のユーザは、クライアント操作１２０のユーザが現在見えている共有画像データ１２２の領域を把握することができる。従って、クライアント装置１２０のユーザが、会議中に他の資料の確認等をしており、共有画像データ１２２の一部が見えていない状況でも、サーバ装置１１０のユーザがそのことに気が付かずに議論を進める事態を避けることができる。
【００４１】
次に、本発明の第２の実施形態について説明する。第２の実施形態に係る画面共有システムは、１台のサーバ装置１１０に対して複数台のクライアント装置９２０、９３０、９４０が接続されている。
【００４２】
先ず、図９を参照しながら、クライアント装置９２０、９３０、９４０毎に異なる範囲を表示させる場合について説明する。図９（ａ）は、各クライアント装置９２０、９３０、９４０における表示範囲が指定された状態を示している。サーバ装置１１０は画面１１１全体を共有領域に指定しており、クライアント装置９２０、９３０、９４０は夫々、サーバ装置１１０において指定された共有領域のうちの領域９１１、９１２、９１３内の共有画像データを表示している。なお、破線９１１、９１２、９１３は実際には画面１１１に表示されない。
【００４３】
第１の実施形態と同様に、サーバ装置１１０がユーザによりマウス等の入力装置が操作されたことを強調表示開始イベントとして検知すると、サーバ装置１１０は各クライアント装置９２０、９３０、９４０に対して現在の表示状態を問い合わせる。一方、各クライアント装置９２０、９３０、９４０は、自身が表示している共有画像データの領域９１１、９１２、９１３を示す座標をサーバ装置１１０に対して送信する。サーバ装置１１０は、受信した表示状態に基づいて、サーバ装置１１０の画面１１１上における表示領域のうち、クライアント装置９２０、９３０、９４０の画面９２１、９３１、９４１上で共有画像データが非表示となっている領域に該当する領域（非共有領域）を夫々判定する。そしてサーバ装置１１０は、各非共有領域を合成し、合成後の非共有領域に対して強調表示を行う。
【００４４】
図９（ｂ）は、サーバ装置１１０の画面１１１上において非共有領域を強調表示した状態を示している。即ち、図９（ｂ）は、サーバ装置１１０の画面１１１上において、クライアント装置９２０、９３０、９４０全てで見えていない領域９１４が強調表示されている状態を示している。これに対し、図９（ｃ）は、各クライアント装置９２０、９３０、９４０の何れかで見えていない領域９１５が強調表示されている状態を示している。なお、図９（ｂ）に示す強調表示の領域は、各クライアント装置９２０、９３０、９４０から表示状態として通知される共有画像データの表示領域を示す座標に基づいて各クライアント装置９２０、９３０、９４０との非共有領域を求め、各非共有領域の論理積（ＡＮＤ）をとることにより得られる。また、図９（ｃ）に示す強調表示の領域は、各クライアント装置９２０、９３０、９４０から表示状態として通知される共有画像データの表示領域を示す座標に基づいて各クライアント装置９２０、９３０、９４０との非共有領域を求め、各非共有領域の論理和（ＯＲ）をとることにより得られる。図９（ｄ）は、図９（ｃ）に対して詳細情報を追加表示した例を示している。図９（ｄ）に示す例では、全クライアント装置９２０、９３０、９４０で共通に見えている領域以外の領域内において、クライアント装置９２０、９３０、９４０毎に見えている領域を示す情報を詳細情報として追加表示している。
【００４５】
以下、図１０Ａ及び図１０Ｂを参照しながら、第２の実施形態におけるサーバ装置１１０の処理について詳細に説明する。図１０Ａ及び図１０Ｂは、第２の実施形態における非共有領域を強調表示する際のサーバ装置１１０の処理を示すフローチャートである。
【００４６】
図１０ＡのステップＳ４０１において、サーバ装置１１０は画面共有を開始する。ステップＳ４０２において、サーバ装置１１０は強調表示開始イベントを取得する。ステップＳ１００１において、サーバ装置１１０はクライアント装置９２０、９３０、９４０の接続台数を取得する。ステップＳ１００２において、サーバ装置１１０はカウンタｉを初期化する。ステップＳ１００３において、サーバ装置１１０はｉ番目のクライアント装置に対して表示状態を問い合わせ、表示状態を取得する。ステップＳ１００５において、サーバ装置１１０は、ｉ番目のクライアント装置から取得した表示状態に基づいて、ｉ番目のクライアント装置との非共有領域を判定する。ステップＳ１００６において、サーバ装置１１０は、カウンタｉを１インクリメントする。ステップＳ１００７において、サーバ装置１１０は、全てのクライアント装置から表示状態を取得したか否かを判定する。全てのクライアント装置から表示状態を取得した場合、処理はステップＳ１００８に移行する。一方、全てのクライアント装置から表示状態を取得していない場合、処理はステップＳ１００３に戻る。
【００４７】
ステップＳ１００８において、サーバ装置１１０は、非共有領域の合成方法を判定する。本実施形態では、非共有領域の合成方法として、論理積（ＡＮＤ）による合成方法と論理和（ＯＲ）による合成方法とを適用する。論理積（ＡＮＤ）による合成方法である場合、ステップＳ１００９において、サーバ装置１１０は、各クライアント装置との非共有領域の論理積（ＡＮＤ）をとることにより非共有領域を合成する。一方、論理和（ＯＲ）による合成方法である場合、ステップＳ１０１０において、サーバ装置１１０は、各クライアント装置との非共有領域の論理和（ＯＲ）をとることにより非共有領域を合成する。ステップＳ１０１１において、サーバ装置１１０は、ステップＳ１００９又はＳ１０１０で合成した非共有領域に対して強調表示を行う。図９（ｂ）は、論理積（ＡＮＤ）による合成方法により非共有領域を合成し、合成した非共有領域に対して網掛け表示９１４を行うことにより強調表示した結果を示している。図９（ｃ）は、論理和（ＯＲ）による合成方法により非共有領域を合成し、合成した非共有領域に対して網掛け表示９１５を行うことにより強調表示した結果を示している。
【００４８】
ステップＳ１０１２において、サーバ装置１１０は、詳細情報を表示するか否かを判定する。詳細情報を表示しない場合、処理は図１０ＢのステップＳ４０８に移行する。一方、詳細情報を表示する場合、処理は図１０ＢのステップＳ１０１３に移行する。ステップＳ１０１３において、サーバ装置１１０は、サーバ装置１１０のユーザによって画面１１１上の一部領域が共有領域として指定されたか否かを判定する。ユーザによって画面１１１上の一部領域が共有領域として指定されなかった場合、サーバ装置１１０は画面１１１の全領域を共有領域として指定し、処理はステップＳ１０１４に移行する。一方、ユーザによって画面１１１上の一部領域が共有領域として指定された場合、処理はステップＳ１０２０に移行する。
【００４９】
ステップＳ１０１４において、サーバ装置１１０は、カウンタｉを初期化する。ステップＳ１０１５において、サーバ装置１１０は、ステップＳ１０１１で強調表示した合成された非共有領域（以下、合成非共有領域と称す）と、ｉ番目のクライアント装置における共有画像データの表示領域に該当する領域とに差異があるか否かを判定する。それらに差異がある場合、処理はステップＳ１０１６に移行する。一方、差異がない場合、処理はステップＳ１０１８に移行する。ステップＳ１０１６において、サーバ装置１１０は、合成非共有領域と、ｉ番目のクライアント装置における共有画像データの表示領域に該当する領域との重畳領域に対して、ステップＳ１０１１で施した網掛け表示とは異なるパターンの網掛け表示を行う。ステップＳ１０１７において、サーバ装置１１０は、ステップＳ１０１６にて強調表示した領域に当該ｉ番目のクライアント装置の名称を表示する。ステップＳ１０１８において、サーバ装置１２０は、カウンタｉを１インクリメントする。ステップＳ１０１９において、サーバ装置１２０は、全てのクライアント装置についてステップＳ１０１５の判定を行ったか否かを判定する。全てのクライアント装置について判定を行った場合、処理はステップＳ４０８に移行する。一方、全てのクライアント装置について判定を行ってない場合、処理はステップＳ１０１５に戻る。
【００５０】
図９は、ユーザが共有領域１１４を指定しておらず、サーバ装置１１０が画面１１１全体を共有領域として自動的に設定した例を示したものである。これに対し、図１１は、ユーザが画面１１１上の一部領域を共有領域１１４として指定し、さらにクライアント装置９２０、９３０、９４０にてそれぞれの表示状態が変更された例を示している。即ち、図１１に示す処理は、図１０ＢのステップＳ１０１３からＳ１０２０に分岐する処理となる。
【００５１】
図１１（ａ）は、共有領域１１４内の共有画像データを各クライアント装置９２０、９３０、９４０で表示した状態を示している。クライアント装置９２０は、共有画像データ１２２の全てを表示している。クライアント装置９３０は、共有画像データ１２２を表示しているウィンドウ９３２が他のウィンドウに隠れている。クライアント装置９４０は、共有画像データ１２２を拡大表示している。図１１（ｂ）は、各クライアント装置９２０、９３０、９４０との非共有領域の論理積（ＡＮＤ）をとることにより合成した非共有領域１１０１を強調表示した状態を示している。図１１（ｃ）は、各クライアント装置９２０、９３０、９４０との非共有領域の論理積（ＯＲ）をとることにより合成した非共有領域１１０３を強調表示した状態を示している。図１１（ｄ）は、図１１（ｃ）の表示状態に対して詳細情報１１０４、１１０５、１１０６を追加表示した例を示している。
【００５２】
ここで、図１１に示した処理について、図１０Ｂを参照しながら詳細に説明する。ステップＳ１０２０において、サーバ装置１１０は、ユーザによって指定された共有領域１１４を取得する。ステップＳ１０２１において、サーバ装置１１０は、カウンタｉを初期化する。ステップＳ１０２２において、サーバ装置１１０は、ステップＳ１０２０で取得した共有領域１１４と、ｉ番目のクライアント装置における共有画像データの表示領域に該当する領域とに差異があるか否かを判定する。それらに差異がある場合、処理はステップＳ１０２３に移行する。一方、差異がない場合、処理はステップＳ１０２５に移行する。ステップＳ１０２３において、共有領域１１４と、ｉ番目のクライアント装置における共有画像データの表示領域に該当する領域との重畳領域に対して、ステップＳ１０１１で施した網掛け表示とは異なるパターンの網掛け表示を行う。ステップＳ１０２５において、サーバ装置１１０は、カウンタｉを１インクリメントする。ステップＳ１０２６において、サーバ装置１１０は、全てのクライアント装置についてステップＳ１０２２の判定を行ったか否かを判定する。全てのクライアント装置について判定を行った場合、処理はステップＳ４０８に移行する。一方、全てのクライアント装置について判定を行っていない場合、処理はステップＳ１０２２に戻る。なお、図１０ＢのステップＳ４０８〜Ｓ４１１は、図４のステップＳ４０８〜Ｓ４１１と同様であるため、説明は省略する。
【００５３】
以上のように、第２の実施形態によれば、サーバ装置１１０のユーザは、複数のクライアント装置で画面１１１上のどの領域の画像データが見えているかを確認することができるようになる。また、クライアント装置毎に見えている領域が異なる場合、クライアント装置毎にどの領域が見えているのかを確認することが可能となる。このため、全てのクライアント装置のユーザに対して共通の説明を行う場合、又は、或るクライアント装置のユーザに対してのみ説明を行う場合、それぞれの状況で相手が同じ画面を見ているかどうか確認を取りながら議論を進めることが可能となる。
【００５４】
次に、本発明の第３の実施形態について説明する。第３の実施形態においては、図１に示した画面共有システムの構成上において、クライアント装置１２０側の画面表示を変更させることにより、サーバ装置１１０とクライアント装置１２０との間で同じ共有画像データを表示させる方法について説明する。
【００５５】
図１２は、図５と同様に、クライアント装置１２０側で共有画像データ１２２を表示しているウィンドウ５２１の全画面表示を解除した例を示している。図１２（ａ）は、ウィンドウ５２１の全画面表示を解除した状態を示している。ウィンドウ５２１は共有画像データ１２２全体を表示するだけの面積がないため、共有画像データ１２２の一部を表示しており、はみ出た分はスクロールバーを表示させている。実際のクライアント装置１２０における共有画像データ１２２の表示領域をサーバ装置１１０側で示すと、領域５１１となる。なお、第１の実施形態と同様に、破線１１４及び５１１は実際には表示領域１１１には表示されない。
【００５６】
また、他の実施形態と同様に、サーバ装置１１０がユーザによりマウス等の入力装置が操作されたことを検知すると、サーバ装置１１０はクライアント装置１２０に対して表示同期開始イベントを通知する。一方、クライアント装置１２０は、表示同期開始イベントを受信すると、ウィンドウ５２１が領域５１１の範囲を表示されていること、また、共有画像データ１２２の全てを表示するにはウィンドウ５２１のサイズが小さいことを表示状態として取得する。次にクライアント装置１２０は、共有画像データ１２２の全体を表示できるサイズにウィンドウ５２１を拡大する。図１２（ｂ）は、ウィンドウ５２のサイズを変更した結果を示している。クライアント装置１２０側で自動的に共有画像データ１２２全体を表示させることにより、サーバ装置１１０側のユーザとクライアント装置１２０側のユーザとは、それまで異なる領域を見ていたとしても、同期後は同じ共有画像データを表示させた状態で議論を継続することができる。
【００５７】
以下、図１３を参照しながら、図１２に示した処理について詳細に説明する。図１３は、第３の実施形態におけるクライアント装置１２０の処理を示すフローチャートである。
【００５８】
サーバ装置１１０が画面共有を開始し、共有画像データを送信すると、ステップＳ１３０１において、クライアント装置１２０は、共有画像データを受信する。その後、サーバ装置１１０上でキーボード・マウス等が操作されると、サーバ装置１１０はクライアント装置１２０に対して表示同期開始イベントを送信する。ステップＳ１３０２において、クライアント装置１２０は、表示同期開始イベントを受信する。なお、サーバ装置１１０からの表示同期開始イベントの送信タイミングは、サーバ装置１１０に対する操作が検知されたタイミングの他に、サーバ装置１１０がユーザの音声をマイク等で検出したタイミングでもよいし、周期的なタイミングであってもよい。
【００５９】
ステップＳ１３０３において、クライアント装置１２０は、サーバ装置１１０から共有領域を示す座標を取得する。ステップＳ１３０４において、クライアント装置１２０は、共有画像データの表示領域を示す座標を表示状態として取得する。ステップＳ１３０５において、クライアント装置１２０は、共有領域を示す座標と共有画像データの表示領域を示す座標とに基づいて、共有領域と共有画像データの表示領域との差異を取得する。ステップＳ１３０６において、クライアント装置１２０は、共有領域と共有画像データの表示領域とに差異があるか否かを判定する。差異がある場合、処理はステップＳ１３０７に移行する。一方、差異がない場合、処理はステップＳ１３０２に戻る。
【００６０】
ステップＳ１３０７及びＳ１３０８において、クライアント装置１２０は、ステップＳ１３０４で取得した表示状態に基づいて、共有領域と共有画像データの表示領域の表示領域とに差異がある理由を判定する。差異の理由が、共有画像データを表示しているウィンドウのサイズ不足である場合、処理はステップＳ１３０９に移行する。ステップＳ１３０９において、クライアント装置１２０は、当該ウィンドウのサイズを拡大する。差異の理由が、共有画像データを表示しているウィンドウを最小化していることである場合、処理はステップＳ１３１０に移行する。ステップＳ１３１０において、クライアント装置１２０は、当該ウィンドウの最小化を解除する。差異の理由が、共有画像データを表示しているウィンドウが他のウィンドウに隠れていることである場合、処理はステップＳ１３１１に移行する。ステップＳ１３１１において、クライアント装置１２０は、当該ウィンドウを最前面に表示する。差異の理由が、共有画像データを拡大表示していることである場合、処理はステップＳ１３１２に移行する。ステップＳ１３１２において、クライアント装置１２０は、当該共有画像データの拡大率を元に戻す。
【００６１】
その後、他の実施形態と同様に、サーバ装置１１０にてキーボード・マウス操作終了から一定時間が経過したことを検知すると、サーバ装置１１０からクライアント装置１２０に対して表示同期終了イベントを送信する。ステップＳ１３１３において、クライアント装置１２０は、表示同期終了イベントを受信する。ステップＳ１３１４において、クライアント装置１２０は、共有画像データを表示しているウィンドウの表示状態を元に戻す。図１２に示す例では、ウィンドウ５２１の表示状態が図１２（ｂ）に示す状態から図１２（ａ）に示す状態となる。なお、ステップＳ１３１５、Ｓ１３１６は、図４のステップＳ４１０、Ｓ４１１と同様の処理である。
【００６２】
ここで、図１４を参照しながら、クライアント装置１２０側において共有画像データを表示するウィンドウ５２１を最小化した例について説明する。図１４（ａ）は、ウィンドウ５２１を最小化した状態を示している。クライアント装置１２０は、共有画像データを表示するウィンドウ５２１が最小化されているため、サーバ装置１１０から表示同期開始イベントを受信すると、ウィンドウ５２１の最小化を解除する。図１４（ｂ）は、ウィンドウ５２１の最小化を解除した状態を示している。
【００６３】
次に、図１５を参照しながら、クライアント装置１２０側において共有画像データを表示するウィンドウ５２１が他のウィンドウ７２１に一部隠された例について説明する。図１５（ａ）は、ウィンドウ５２１が他のウィンドウ７２１に隠された状態を示している。クライアント装置１２０は、サーバ装置１１０から表示同期開始イベントを受信すると、ウィンドウ５２１を最前面に表示させる。図１５（ｂ）は、ウィンドウ５２１を最前面に表示した状態を示している。
【００６４】
次に、図１６を参照しながら、クライアント装置１２０側において共有画像データ１２２を表示するウィンドウ５２１を拡大表示した例について説明する。図１６（ａ）は、ウィンドウ５２１を拡大表示した状態を示している。クライアント装置１２０は、サーバ装置１２０から表示同期開始イベントを受信すると、ウィンドウ５２１の拡大率を元に戻し、共有画像データ１２２全体を表示させる。図１６（ｂ）は、ウィンドウ５２１の拡大率を戻した状態を示している。
【００６５】
以上のように、第３の実施形態においては、クライアント装置１２０では、サーバ装置１２０との共有画像データの表示領域の相違が自動修正される。これにより、クライアント装置１２０のユーザは、会議の中でサーバ装置１１０のユーザが説明している領域を見逃すことを避けることができる。また、必要に応じて自動的に表示が修正されるため、それ以外のときは、クライアント装置１２０上で共有画像データ１２２の表示サイズを自由に変更し、他の資料等を確認することができる。
【００６６】
以上、本発明の実施形態について説明したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記録媒体(記憶媒体)等としての実施態様をとることが可能である。具体的には、複数の機器（例えば、ホストコンピュータ、インタフェース機器、撮像装置、webアプリケーション等）から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００６７】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６８】
１０１：ネットワーク、１１０：サーバ装置、１１１、１２１：画面、１１４：共有領域、１２０：クライアント装置、１２２：共有画像データ
【図１】
0005773733.tif 000002
【図２】
0005773733.tif 000003
【図３】
0005773733.tif 000004
【図４】
0005773733.tif 000005
【図５】
0005773733.tif 000006
【図６】
0005773733.tif 000007
【図７】
0005773733.tif 000008
【図８】
0005773733.tif 000009
【図９】
0005773733.tif 000010
【図１０Ａ】
0005773733.tif 000011
【図１０Ｂ】
0005773733.tif 000012
【図１１】
0005773733.tif 000013
【図１２】
0005773733.tif 000014
【図１３】
0005773733.tif 000015
【図１４】
0005773733.tif 000016
【図１５】
0005773733.tif 000017
【図１６】
0005773733.tif 000018