JP4021249B2 - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP4021249B2
JP4021249B2 JP2002163050A JP2002163050A JP4021249B2 JP 4021249 B2 JP4021249 B2 JP 4021249B2 JP 2002163050 A JP2002163050 A JP 2002163050A JP 2002163050 A JP2002163050 A JP 2002163050A JP 4021249 B2 JP4021249 B2 JP 4021249B2
Authority
JP
Japan
Prior art keywords
window
display
document
data
attribute information
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.)
Expired - Fee Related
Application number
JP2002163050A
Other languages
English (en)
Other versions
JP2004013318A (ja
Inventor
進 藤岡
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002163050A priority Critical patent/JP4021249B2/ja
Publication of JP2004013318A publication Critical patent/JP2004013318A/ja
Application granted granted Critical
Publication of JP4021249B2 publication Critical patent/JP4021249B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Digital Computer Display Output (AREA)
  • Document Processing Apparatus (AREA)
  • User Interface Of Digital Computer (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、報処理装置及び情報処理方法に関する。
【0002】
【従来の技術】
コンピュータ等のディスプレイ上にコンテンツ(文書・Webページ等)を表示するアプリケーションとしては、Microsoft社製のWord(商標)のような「文書作成ソフト」・Adobe Systems社製のAcrobat Reader(商標)のような「文書管理ソフト」・Netscape Communications社製のNetscape Communicator(商標)のような「Webブラウザ」等が知られている。
【0003】
このようなコンテンツがディスプレイ上に表示されている場合に、当該コンテンツ上のオブジェクト(テキスト・イメージ等)を注釈するための注釈オブジェクト(注釈テキスト・注釈イメージ等)を、当該コンテンツに添付する技術がいくつか知られている。例えば、当該コンテンツ上に重ねて透明スクリーンをディスプレイ上に表示して、タッチパネル上での手書き操作やカット&ペースト操作等により、操作者が透明スクリーン上に注釈オブジェクトを描画して、これをコンテンツに添付された注釈オブジェクトとする「透明スクリーン方式」が知られている。
【0004】
このような注釈オブジェクトを記録したり送信したりする場合に、注釈オブジェクトの位置に関する情報を、どのように取り扱うかが問題となる。記録・送信された注釈オブジェクトをディスプレイ上に再表示する場合に、注釈オブジェクトをディスプレイ上のどの位置に再表示するかが問題となるからである。
【0005】
例えば、ディスプレイ上でスクロール表示されるコンテンツに関しては、スクロールにより、注釈オブジェクトの再表示時におけるコンテンツの表示位置が、スクロール分だけ注釈オブジェクトの記録時・送信時と異なっている場合があり、そのときは、再表示時における注釈オブジェクトの表示位置を、スクロール分だけ記録時・送信時から移動する必要がある。
【0006】
さらに、ディスプレイ上のウィンドウ内に表示されるコンテンツに関しては、ウィンドウの移動等により、注釈オブジェクトの再表示時におけるコンテンツの表示位置が、ウィンドウの移動分だけ注釈オブジェクトの記録時・送信時と異なっている場合があり、そのときは、再表示時における注釈オブジェクトの表示位置を、ウィンドウの移動分だけ記録時・送信時から移動する必要がある。
【0007】
特開2001−117685・特開2001−134415には、透明スクリーン方式の注釈添付方法が記載されている。しかし、注釈オブジェクトの位置に関する情報をどのように取り扱うかについては、何ら記載されていない。
【0008】
特開平10−124494には、注釈イメージ(注釈オブジェクト)が、ディスプレイ上においてコンテンツ上のあるテキスト(オブジェクト)と同じ位置に表示されているときに、当該注釈イメージを、そのテキストと対応付けて記録する注釈添付方法が記載されている。この方法では、注釈イメージの再表示時において、コンテンツの編集等によりコンテンツ上のテキストの表示位置が記録時と異なっているときでも、注釈イメージを、対応付けられたテキストと同じ表示位置に再表示することができる。
【0009】
特開2000−250903には、注釈イメージ(注釈オブジェクト)が、ディスプレイ上においてコンテンツ上のあるテキスト(オブジェクト)を指定するように表示されているときに、当該注釈イメージを、そのテキストと対応付けて記録する注釈添付方法が記載されている。この方法では、注釈イメージの再表示時において、コンテンツの編集等によりコンテンツ上のテキストの表示位置が記録時と異なっているときでも、注釈イメージを、対応付けられたテキストを指定するように再表示することができる。
【0010】
【発明が解決しようとする課題】
従来の方法では、注釈イメージ(注釈オブジェクト)をコンテンツ上のテキスト(オブジェクト)と対応付けて記録する。
【0011】
そのため、従来の方法では、当該コンテンツに関するアプリケーションの実行プロセス(アプリケーション・プロセス)にアクションを起こさせて、当該コンテンツ上のテキストに係るテキストデータにアクセスしなければ、注釈イメージの位置を記録することができないという欠点があった。
【0012】
さらには、従来の方法では、当該コンテンツに関するアプリケーションの実行プロセスにアクションを起こさせる必要上、当該注釈添付方法を実現するためのソフトウェア・ハードウェアを開発する開発者が、当該コンテンツに関するアプリケーションのプログラム仕様等を理解する手間を要求されるという欠点があった。特に、対象となるアプリケーションの種類が増えれば増えるほど、この手間は増加してしまうものであった。
【0013】
したがって、本発明は、透明スクリーン上に形成された注釈オブジェクトその他のオブジェクトに関して、コンテンツに関するアプリケーションの実行プロセスにアクションを起こさせずに、当該オブジェクトの位置を管理(記録時:描画位置の記録、送信時:描画位置の送信、再表示時:再表示位置の決定、など)することを課題とする。
【0014】
【課題を解決するための手段】
請求項1に記載の発明は、情報処理装置であって、この情報処理装置は、ディスプレイと、描画オブジェクトを処理対象のウィンドウ(以下、「トップウィンドウ」と言う。)内に重畳表示する重畳描画プロセスと、前記ディスプレイに表示されているトップウィンドウについて前記ディスプレイにおける前記トップウィンドウの表示位置と前記トップウィンドウの大きさと前記トップウィンドウにて実行されているアプリケーションのアプリケーション名と該アプリケーションにて実行されている文書ファイルのファイル名とを含むウィンドウに係る情報をウィンドウ属性情報として取得するウィンドウマネージャと、前記トップウィンドウのビットマップ画像を取得し該ビットマップ画像に基づいて前記トップウィンドウ内に表示されている文書データの前記文書ファイルにおける位置を文書データの表示位置として取得し該取得した文書データの表示位置を文書データ表示位置情報として前記重畳描画プロセスに渡す認識プロセスと、を制御する制御手段と、前記描画オブジェクトを、トップウィンドウ生成時、トップウィンドウ移動時、又はトップウィンドウの大きさの変更時に、前記文書データ表示位置情報を含む前記ウィンドウ属性情報(以下、「記憶時ウィンドウ属性情報」と言う。)と対応付けて記憶する記憶手段と、を備え、
前記重畳描画プロセスは、描画オブジェクトの表示の指示を受け付けると、前記ウィンドウマネージャ及び前記認識プロセスから、前記指示を受け付けた時のトップウィンドウ(以下、「指示時ウィンドウ」と言う。)のウィンドウ属性情報(以下、「指示時ウィンドウ属性情報」と言う。)を取得し、前記指示時ウィンドウ属性情報に基づいて、前記記憶手段から前記指示時ウィンドウに重畳表示すべき描画オブジェクトと該描画オブジェクトに対応付けられた前記記憶時ウイィンドウ属性情報を読み出し、前記指示時ウィンドウ属性情報と前記記憶時ウィンドウ属性情報とに基づいて、前記読み出した描画オブジェクトを、前記記憶時ウィンドウ属性情報を記憶した時のトップウィンドウ(以下、「記憶時ウィンドウ」と言う。)における表示位置と対応する位置となる指示時ウィンドウにおける位置に、重畳して表示するものである。
【0016】
請求項2に記載の発明は、請求項1に記載の情報処理装置において、前記認識プロセスにおいて取得される前記文書データの表示位置は、トップウィンドウにおける文書のスクロール位置に対応し、前記文書データのスクロール位置は、前記トップウィンドウのビットマップ画像から抽出したスクロールバーにおける 1 の端部からスクロールボックスまでの画素数と他の端部からスクロールボックスまでの画素数とに基づいて決定されることを特徴とする。
【0018】
請求項3に記載の発明は、請求項1又は2に記載の情報処理装において、前記重畳描画プロセスは、記憶時ウィンドウ属性情報に含まれるトップウィンドウの大きさと指示時ウィンドウ属性情報に含まれるトップウィンドウの大きさ(以下、「指示時ウィンドウの大きさ」と言う。)とに基づいて記憶時ウィンドウ属性情報を記憶した時と指示時ウィンドウ属性情報を取得した時におけるトップウィンドウの大きさの変化の割合を取得し、該取得した変化の割合に基づいて前記記憶時ウィンドウ属性情報に含まれる文書データ表示位置情報を変更し、前記描画オブジェクトを前記変更された記憶時ウィンドウにおける表示位置と対応する位置関係となる指示時ウィンドウにおける位置に重畳して表示することを特徴とする
【0020】
請求項4に記載の発明は、請求項1又は2に記載の情報処理装置において、前記記憶時ウィンドウ属性情報は、さらに、トップウィンドウ内における文書のページ番号と文書の表示倍率とを有し、前記認識プロセスは、さらに、前記記憶手段を参照して、前記ビットマップ画像からページ番号と表示倍率が含まれる領域を抽出し、該抽出した領域からページ番号と表示倍率とを認識し、該認識したページ番号と表示倍率とを表示属性として、前記描画オブジェクトと対応付けて前記記憶手段に記憶することを特徴とする。
【0022】
請求項5に記載の発明は、情報処理方法であって、ディスプレイと、描画オブジェクトを処理対象のウィンドウ(以下、「トップウィンドウ」と言う。)内に重畳表示する重畳描画プロセスと、前記ディスプレイに表示されているトップウィンドウについて前記ディスプレイにおける前記トップウィンドウの表示位置と前記トップウィンドウの大きさと前記トップウィンドウにて実行されているアプリケーションのアプリケーション名と該アプリケーションにて実行されている文書ファイルのファイル名とを含むウィンドウに係る情報をウィンドウ属性情報として取得するウィンドウマネージャと、前記トップウィンドウのビットマップ画像を取得し該ビットマップ画像に基づいて前記トップウィンドウ内に表示されている文書データの前記文書ファイルにおける位置を文書データの表示位置として取得し該取得した文書データの表示位置を文書データ表示位置情報として前記重畳描画プロセスに渡す認識プロセスと、を制御する制御手段と、前記描画オブジェクトを、トップウィンドウ生成時、トップウィンドウ移動時、又はトップウィンドウの大きさの変更時に、前記文書データ表示位置情報を含む前記ウィンドウ属性情報(以下、「記憶時ウィンドウ属性情報」と言う。)と対応付けて記憶する記憶手段と、を備えた情報処理装置における情報処理方法であって、前記重畳描画プロセスは、描画オブジェクトの表示の指示を受け付けると、前記ウィンドウマネージャ及び前記認識プロセスから、前記指示を受け付けた時のトップウィンドウ(以下、「指示時ウィンドウ」と言う。)のウィンドウ属性情報(以下、「指示時ウィンドウ属性情報」と言う。)を取得し、前記指示時ウィンドウ属性情報に基づいて、前記記憶手段から前記指示時ウィンドウに重畳表示すべき描画オブジェクトと該描画オブジェクトに対応付けられた前記記憶時ウイィンドウ属性情報を読み出し、前記指示時ウィンドウ属性情報と前記記憶時ウィンドウ属性情報とに基づいて、前記読み出した描画オブジェクトを、前記記憶時ウィンドウ属性情報を記憶した時のトップウィンドウ(以下、「記憶時ウィンドウ」と言う。)における表示位置と対応する位置となる指示時ウィンドウにおける位置に、重畳して表示することを特徴とする。
【0024】
請求項6に記載の発明は、請求項5に記載の情報処理方法において、前記認識プロセスにおいて取得される前記文書データの表示位置は、トップウィンドウにおける文書のスクロール位置に対応し、前記文書データのスクロール位置は、前記トップウィンドウのビットマップ画像から抽出したスクロールバーにおける 1 の端部からスクロールボックスまでの画素数と他の端部からスクロールボックスまでの画素数とに基づいて決定されることを特徴とする。
【0026】
請求項7に記載の発明は、請求項5又は6に記載の情報処理方法において、前記重畳描画プロセスは、記憶時ウィンドウ属性情報に含まれるトップウィンドウの大きさと指示時ウィンドウ属性情報に含まれるトップウィンドウの大きさとに基づいて記憶時ウィンドウ属性情報を記憶した時と指示時ウィンドウ属性情報を取得した時におけるトップウィンドウの大きさの変化の割合を取得し、該取得した変化の割合に基づいて前記記憶時ウィンドウ属性情報に含まれる文書データ表示位置情報を変更し、前記描画オブジェクトを前記変更された記憶時ウィンドウにおける表示位置と対応する位置関係となる指示時ウィンドウにおける位置に重畳して表示することを特徴とする。
【0028】
請求項8に記載の発明は、請求項5又は6に記載の情報処理方法において、前記記憶時ウィンドウ属性情報は、さらに、トップウィンドウ内における文書のページ番号と文書の表示倍率とを有し、前記認識プロセスはさらに、前記記憶手段を参照して、前記ビットマップ画像からページ番号と表示倍率が含まれる領域を抽出し、該抽出した領域からページ番号と表示倍率とを認識し、該認識したページ番号と表示倍率とを表示属性として、前記描画オブジェクトと対応付けて前記記憶手段に記憶することを特徴とする。
【0034】
【発明の実施の形態】
本発明の実施の形態について説明する。
【0035】
(本発明の実施の形態の例)
(1)本実施形態の構成
図1は、本発明の実施の形態の例であるペン入力装置の外部構成を示す。ペン入力装置1には、LCD(Liquid Crystal Display)16と、LCD16に重ね合わせて付着されたタッチパネル18が備えられている。タッチパネル18上でのタッチ入力操作には、タッチペン2を使用する。
【0036】
図2は、本発明の実施の形態の例であるペン入力装置の内部構成および付属機器の接続構成を示す。ペン入力装置1は、タッチペン2の他に適宜、キーボード3、マウス4、PCカード5、着脱可能な電源ケーブル6と共に使用される。
【0037】
本実施形態のペン入力装置1は、CPU(Central Processing Unit)10、クロック11、メインメモリ12、ROM(Read Only Memory)13、RTC(Real Time Clock)14、LCD表示コントローラ15、LCD16、タッチパネルコントローラ17、タッチパネル18、HD(Hard Disk)コントローラ19、ハードディスク20、USB(Universal Serial Bus)コントローラ▲1▼21、USB・I/F▲1▼22、USBコントローラ▲2▼23、USB・I/F▲2▼24、PCカードコントローラ25、カードI/F26、システムバス27、バッテリ28、DC−DCコンバータ29、充電回路30等から構成される。
【0038】
CPU10は、ROM13に記憶された制御処理プログラムや、ハードディスク20からメインメモリ12に読み出されたOS(Operating System)や各種のアプリケーションプログラムを実行・処理する。クロック11は、水晶発振子と分周回路から構成されており、CPU10やシステムバス27の動作タイミングを制御するためのクロックを生成している。メインメモリ12は、DRAM(Dynamic Random Access Memory)より構成されており、CPU10のワークエリア等で使用される。ROM13は、システム全体の制御を行うためのプログラムが予め書き込まれている。RTC14は、日付時計であり、専用バッテリ(図示を省略)によりバックアップされている。
【0039】
LCD表示コントローラ15は、文字やグラフィックデータ等の表示データをD/A(Digital/Analog)変換すると共に、これらのデータをLCD16に表示するための制御を行う。タッチパネルコントローラ17は、タッチパネル18上でタッチペン2のペン先が接触した部分を検出し、その位置情報を出力するとともに、タッチパネル18上での接触持続時間を計測し、その計測時間が所定の値以上の場合には接触解除を監視して、接触解除を検出した場合にはペンアップ通知データを出力する。HDコントローラ19は、ハードディスク20にデータを書き込んだり、ハードディスク20からデータを読み出すための制御を行う。
【0040】
USBコントローラ▲1▼21とUSBコントローラ▲2▼23は、USB規格に準拠したデータ転送を実行・制御する。PCカードコントローラ25は、カードI/F26に装着されたPCMCIA(Personal Computer Memory Card International Association)規格に準拠したPCカード5との間のデータ転送を実行・制御する。PCカード5は、PCMCIA規格に準拠したカードであり、例えば、IEEE802.11規格に準拠した無線LANカードが使用される。
【0041】
バッテリ28は、充電が可能な例えばリチウムイオンバッテリ等である。DC−DCコンバータ29は、電源ケーブル6またはバッテリ28から供給される電源を、所定の電圧に変換してペン入力装置1内部に供給すると共に、電源ケーブル6からの電源供給がない場合は、バッテリ28からの電源供給に切り換える。充電回路30は、電源ケーブル6から電源が供給されているときに、バッテリ28を充電する。電源ケーブル6は、ACアダプタ31と一体化されており、ACアダプタ31は内蔵されたAC−DCコンバータにより、交流電源を所定の電圧の直流に変換する。
【0042】
ここで、タッチパネル18上にタッチ入力された位置を表す「タッチ入力座標」と、LCD16上に表示された位置を表す「表示座標」について説明する。
【0043】
タッチペン2がタッチパネル18に接触すると、タッチパネルコントローラ17はこの接触を検出し、CPU10に割り込みを発生させる。CPU10はこの割り込みにより、タッチパネルコントローラ17から座標値を得る。このタッチ入力座標は、LCD16の表示領域の左上の角を原点として、右方向をX軸の正の方向・下方向をY軸の正の方向として表現する。
【0044】
LCD16上に表示された表示物の表示座標は、LCD16の表示領域の左上の角にある画素を原点として、右方向をX軸の正の方向・下方向をY軸の正の方向として画素単位で表現する。すなわち、(表示座標)=(原点からのX軸方向の画素数,原点からのY軸方向の画素数)である。
【0045】
説明を簡単にするために、タッチ入力座標の座標単位もLCD16の画素間隔に等しいものとする。すなわち、タッチ入力座標の座標軸・座標単位と、表示座標の座標軸・座標単位は、一致しているものとする。
【0046】
なお、LCD16の表示領域の左上の角をタッチ入力座標の原点とするには、キャリブレーションを実行する。キャリブレーションは、表示座標とタッチ入力座標との対応付けを行うための操作であり、従来から広く知られた技術であるため、その説明は省略する。
【0047】
(2)本実施形態の操作
本実施形態において、ユーザは、所定のアプリケーションを使用してLCD16上に文書を表示させて、キーボード3やマウス4を使用して文書上に文字を書いたり画像を描いたりすることができる。この文書ファイルは、ハードディスク20に保存することができる。
【0048】
本実施形態において、ユーザはさらに、LCD16上に文書を表示させて、その上に重ねて透明スクリーンを表示させて、透明スクリーン上に文字を書いたり画像を描いたりすることができる。透明スクリーンは、文書より小さくても大きくてもよい。また、上述の文字・画像の描画方法としては、タッチパネル18上に手書きされた画像を取り込む方法・LCD16上に表示された画像を貼り付ける方法・キーボード3に入力された文字を取り込む方法等がある。
【0049】
(2.1)表示された画像の貼り付け
まず、LCD16上に表示された画像(ビットマップデータ)を透明スクリーン上に貼り付ける場合について説明する。図3は、あるアプリケーションA53が文書A54を、別のアプリケーションB55が文書B56を、デスクトップ画面57上に表示させている状態を表す。例えば、アプリケーションAはAdobe Systems社製のAcrobat Reader(商標)で、アプリケーションBはNetscape Communications社製のNetscape Communicator(商標)である。図3中、点線で囲まれた領域は、表示データの凍結(フリーズ)が可能なフリーズ領域50を示しており、各アプリケーションのウィンドウは、この領域内に表示されるようになっている。
【0050】
以下具体的に、アプリケーションAの表示文書Aの上に重ねられた仮想的な透明スクリーン(以下、単に透明スクリーンと記す)上の任意の位置に、アプリケーションBの表示文書B中の写真Aのビットマップデータをコピーする方法について説明する。
【0051】
まず第1に、ユーザが画面に表示された「フリーズ」ボタン40をタッチペン2でタッチすると、フリーズ領域50の表示データがフリーズされる。すなわち、アプリケーションAやアプリケーションBのウィンドウの操作ができない状態となる。なお、表示データのフリーズと共に、「フリーズ」ボタン40はリバース表示になる。
【0052】
続いて第2に、画面に表示された矩形領域指定アイコン41がタッチされると、表示データの矩形領域設定モードとなる。このモードにある場合、タッチペン2がタッチパネル18に接触された(ペンダウン)点が矩形の左上角となり、タッチパネル18から離された(ペンアップ)点が矩形の右下角となる。ここで、ユーザが写真Aを囲んだ領域(矩形領域)を指定すると、LCD表示コントローラ15中の表示画面バッファにあるこの領域のビットマップデータを、メインメモリ12へコピーする。
【0053】
続いて第3に、ユーザが「フリーズ」ボタン40をタッチすると、フリーズ領域50の表示データのフリーズが解除される。なお、表示データのフリーズ解除と共に、「フリーズ」ボタン40は正常表示に戻る。
【0054】
続いて第4に、ユーザがアプリケーションBのウィンドウを閉じた後、ユーザが「切換」ボタン42を押すと、先に示したフリーズ領域50と同じ領域を重畳描画可能領域51とする透明スクリーンが重畳され、重畳描画モードとなる。このとき、図4のように、「フリーズ」ボタン40・矩形領域指定アイコン41の表示を画面上から消し、代わりに、「保存」ボタン43・「読出」ボタン44・「手書き」ボタン45を画面上に表示させる。
【0055】
続いて第5に、ユーザが重畳描画可能領域51内の任意の位置をタッチすると、先にメインメモリ12へコピーした写真Aのビットマップデータが、LCD表示コントローラ15中の表示画面バッファの指定された位置へコピーされて、ユーザが指定した位置に写真Aが表示される。このときの表示画面例が図4に示されている。
【0056】
なお、このときの表示画面バッファにある表示データを、論理的なプレーンに階層化して表したものを図5に示す。図5に示すように、表示データはデスクトップ画面57(LCD16の表示画面全体の大きさを持つ)・文書A54・アプリケーションA53のウィンドウ58・透明スクリーン59に階層化されている。なお、文書A54は、アプリケーションA53のウィンドウ58内に表示できる部分のみを図示している。また、透明スクリーン59は、後述するように、実際にはLCD16の表示画面領域よりも大きな領域を持つことが多い。
【0057】
写真AのビットマップデータがLCD表示コントローラ15中の表示画面バッファにコピーされる前に、表示画面バッファ中のコピーされる領域にあるビットマップデータをメインメモリ12へコピー(退避)しておく。そして、透明スクリーンが除かれた場合に、この退避されたビットマップデータを表示画面バッファ中の元の位置へコピーして、表示画面を透明スクリーンが重畳された前の状態に戻す。
【0058】
透明スクリーン上のデータの管理は重畳描画プロセスが行い、このプロセスの実行はCPU10が行う。重畳描画プロセスは、透明スクリーン上の矩形領域のビットマップデータや後述する手書き描画データ(重畳データ)の位置を、そのときのトップウィンドウ(最も上に重ねて表示されたウィンドウ)に表示された文書の表示位置に基づいて管理する。当該管理については後述する。
【0059】
(2.2)手書きされた画像の取り込み
次に、タッチパネル18上に手書きされた画像(手書き描画データ)を透明スクリーン上に取り込む場合について説明する。アプリケーションAが文書AをLCD16上に表示させている状態で、ユーザが「切換」ボタン42を押すと、図4で示したのと同じ領域(透明スクリーン領域51)に対して透明スクリーンが重畳され「重畳描画モード」となり、さらに、ユーザが「手書き」ボタン45を押すと、図6のように「重畳手書き描画モード」となる。このとき、「手書き」ボタン45はリバース表示になり、また、線種を選択するための「線種」ボタン46・矩形を描画するための「矩形」ボタン47・描画線を消去するための「消ゴム」ボタン48が表示される。
【0060】
重畳描画プロセスは、重畳手書き描画モードにおいて、タッチパネルコントローラ17から得られる各座標値が透明スクリーン領域51にあるか否かを判断し、2つの連続した座標値がこの領域にあり、かつ、ペンダウン状態(ペンダウンからペンアップまでの期間)である場合には、各座標値間を直線で結んでLCD16に表示させるための描画コマンドを、LCD表示コントローラ15へ出す。LCD表示コントローラ15は、この描画コマンドに従った描画を行い、手書きの描画線がLCD16上に表示される。
【0061】
重畳描画プロセスはまた、タッチパネルコントローラ17から得たペンダウンからペンアップまでの座標列を、ストロークデータとしてメインメモリ12に記憶する。このストロークデータの位置は、そのときの文書の表示位置に基づいて記憶される。当該記憶(管理)については後述する。
【0062】
なお、タッチペン2をタッチパネル18に接触させることによって手書き描画する代わりに、マウス4の左ボタンを押すことによって手書き描画することも可能である。この場合、重畳描画プロセスは、マウス4の左ボタンONのイベント受信によりペンダウンを、マウス4の左ボタンOFFのイベント受信によりペンアップを、それぞれ検出する。
【0063】
(3)本実施形態における位置の取り扱い
(3.1)概略
本実施形態における、文書に対して重畳された矩形領域のビットマップデータや手書き描画データ(重畳データ)の記憶方法について説明する。
【0064】
本実施形態においては、透明スクリーンに重畳データが描画されると、その重畳データを、トップウィンドウのアプリケーション名・トップウィンドウの表示位置・トップウィンドウに表示された文書のファイル名・文書のページ番号・文書のスクロール位置・文書の表示倍率等と対応付けて記憶する。重畳データの再表示時において、文書の表示位置が変化していても、文書に対する重畳データの添付位置を記録時と同一にして、重畳データを画面上に再表示するためである。
【0065】
ここで、アプリケーション名・ウィンドウの表示位置・ウィンドウの大きさは、ウィンドウ生成時、ウィンドウ移動時、またはウィンドウの大きさの変更時に、ウィンドウマネージャがウィンドウ属性としてメインメモリ12に記憶し、重畳描画プロセスがこの情報を参照する。このウィンドウマネージャは、デスクトップ画面にプルダウンメニューによる実行可能なアプリケーションの一覧表示を行い、選択されたアプリケーションの起動処理も行う。また、アプリケーション起動用のアイコンが表示・登録されている場合には、そのアイコンが選択されたときにアプリケーションの起動処理も行う。
【0066】
ウィンドウマネージャは、アプリケーションのウィンドウに付加しているタイトルバーの中に、そのアプリケーションから受け取った文書のファイル名を表示するが、ウィンドウマネージャは、その文書のファイル名もウィンドウ属性としてメインメモリ12に記憶する。
【0067】
(3.2)意義
本実施形態では、上述したように、文書のスクロール位置と対応付けて重畳データを記憶する。このように、文書の表示位置に基づいて透明スクリーン上の画像の位置を管理する意義について概念的に説明する。
【0068】
図7Aには、画面と、画面上の文書と、文書上の透明スクリーンと、透明スクリーン上の画像が示されている。
【0069】
ここで、画面上において文書が表示されている位置(文書の表示位置)は、「文書上の固定点S」の「画面上の固定点D」に対する位置によって表される。例えば、図7Aのように、点Sの点Dに対する座標(Sx,Sy)で表される。ここでは、点S・点Dはそれぞれ文書・画面の左上の角にとったが、これに限られるものではない。また、点Sは、文書に対して位置が固定された点であれば、文書内にとられたものも文書外にとられたものも、「文書上の固定点」に該当する。点Dについても同様である。
【0070】
同様に、画面上において画像が表示されている位置(画像の表示位置)は、「画像上の固定点I」の「画面上の固定点D」に対する位置によって表される。例えば、図7Aのように、点Iの点Dに対する座標(Ix,Iy)で表される。
【0071】
また、文書に対して画像が添付されている位置(画像の添付位置)は、「画像上の固定点I」の「文書上の固定点S」に対する位置によって表される。例えば、図7Aのように、点Iの点Sに対する座標(X,Y)=(Ix−Sx,Iy−Sy)で表される。なお、透明スクリーンの文書に対する位置が固定されている場合においては(例えば、「透明スクリーンの左上角」が、常に「文書の左上角」の上に位置するようにする)、文書に対して画像が添付されている位置(画像の添付位置)は、透明スクリーン上において画像が描画されている位置(画像の描画位置)と言い換えられる。
【0072】
さて、図7Aのように、文書の表示位置・画像の表示位置がそれぞれ(Sx,Sy)・(Ix,Iy)であるときに画像を記録しておき、図7Bのように、文書の表示位置が(Sx´,Sy´)であるときに画像を再表示するために、画像の再表示位置(Ix´,Iy´)を決定する場面にあるとする。
【0073】
図より、記録時(図7A)の文書は画面上で上の方に表示されているが、再表示時(図7B)の文書は画面上で下の方に表示されていることが解る。このような文書の表示位置の変更は、例えば、文書のスクロールやウィンドウの移動によって生じる。
【0074】
ここで、本実施形態においては、再表示時における画像の添付位置(Ix´−Sx´,Iy´−Sy´)を、記録時における画像の添付位置(Ix−Sx,Iy−Sy)=(X,Y)と同一としたいのだから、「Ix´−Sx´=Ix−Sx=X」「Iy´−Sy´=Iy−Sy=Y」が成立することになる。よって、再表示時における画像の表示位置(Ix´,Iy´)は、(Ix−Sx+Sx´,Iy−Sy+Sy´)または(X+Sx´,Y+Sy´)として決定される。
【0075】
このことから、以下の例のように、文書の表示位置に基づいて透明スクリーン上の画像の位置を管理することが考えられる。
【0076】
記録時においては、所定の方法(後述の「位置抽出」等)で文書の表示位置(Sx,Sy)を入手して、入手した文書の表示位置(Sx,Sy)と画像の表示位置(Ix,Iy)を記録する。または、入手した文書の表示位置(Sx,Sy)と画像の表示位置(Ix,Iy)から、画像の添付位置(X,Y)を導出して、導出した画像の添付位置(X,Y)を記録する。
【0077】
再表示時においても、所定の方法(後述の「位置抽出」等)で文書の表示位置(Sx´,Sy´)を入手する。そして、記録された(Sx,Sy)および(Ix,Iy)と、入手した(Sx´,Sy´)とに基づいて、再表示時における画像の表示位置(Ix´,Iy´)を決定する。または、記録された(X,Y)と、入手した(Sx´,Sy´)とに基づいて、再表示時における画像の表示位置(Ix´,Iy´)を決定する。
【0078】
このように、文書の表示位置(Sx,Sy)に基づいて画像の表示位置・添付位置を記録すること、文書の表示位置(Sx´,Sy´)に基づいて画像の再表示位置を決定すること等、文書の表示位置に基づいて透明スクリーン上の画像の位置を管理することには、再表示時における画像の添付位置を、記録時における画像の添付位置と同一にすることを可能とするという点で意義がある。
【0079】
なお、文書がウィンドウ内に表示される場合については、上述の「画面」を「ウィンドウ」に読み替えてもよい。これは、文書・画像の表示位置を、画面上の固定点から見た表示位置ではなく、ウィンドウ上の固定点から見た表示位置とすることを意味する。両表示位置に関して、一方から他方への変換は、ウィンドウ上の固定点の画面上の固定点に対する位置((画面上の固定点から見た)ウィンドウの表示位置)が解っていれば、容易に計算できる。なお、本実施形態においては、このためもあって、上述したように、ウィンドウの表示位置とも対応付けて重畳データを記憶している。
【0080】
本実施形態ではさらに、上述したように、文書の表示属性(文書のページ番号・文書の表示倍率等)と対応付けて重畳データを記憶する。
【0081】
このように、文書の表示倍率に基づいて透明スクリーン上の画像の位置を管理することについては、例えば、再表示時における文書の表示倍率が、記録時における文書の表示倍率と変化している場合であっても、再表示時における画像の添付位置を、記録時における画像の添付位置と同一にすることを可能とするという点で意義がある。例えば、表示倍率が100%から50%に変化している場合は、記録時における画像の描画位置の値の1/2を、再表示時における画像の描画位置の値とする。
【0082】
また、文書のページ番号に基づいて透明スクリーン上の画像の位置を管理することには、例えば、透明スクリーン上の画像の位置をページごとに管理することを可能とするという点で意義がある。
【0083】
なお、本実施形態においては、抽出手段により、文書の表示位置等の表示データから文書の表示位置等を「抽出」し、管理手段により、これに基づいて画像の位置等を「管理」する。当該抽出・管理については、詳細に後述する。
【0084】
(4)本実施形態における文書の表示位置等の抽出
(4.1)文書の表示属性の抽出
本実施形態において、文書を表示させているアプリケーション・プロセスを使用せずに、文書のページ番号・文書の表示倍率を得る方法について説明する。これらは、文書のページ番号・文書の表示倍率をLCD16上に表示させるためのデータ(これを「表示データ」と呼ぶ)、すなわち、LCD表示コントローラ15中の表示画面バッファに記憶されたデータから抽出される。
【0085】
文書のページ番号と表示倍率はアプリケーションによって異なった位置に表示される。例えば、Microsoft社製のOSであるWindows(登録商標)上で、Adobe Systems社製のAcrobat Reader(商標)を起動して、Acrobat Reader(商標)のウィンドウ内に文書を表示させている例を、図8に示す。
【0086】
この場合、文書のページ番号と表示倍率はウィンドウの左下部の所定の位置に表示されている。これらの表示データはLCD表示コントローラ15中の表示画面バッファにビットマップデータとして存在しているため、以下のように、このビットマップデータから数字を識別する(これを、「認識機能」と呼ぶ)。
【0087】
認識プロセス(CPU10が実行)は、LCD表示コントローラ15中の表示画面バッファにあるビットマップデータの中で文書のページ番号を含んだ領域を切り出して、メインメモリ12にコピーする(領域の切り出し方法については後述する)。この切り出されたビットマップデータはカラー表示用のRGB形式であるため、これを変換式「Y=0.31R+0.59G+0.11B」を用いて輝度データ(Y)に変換し、この輝度データについて2値化する。これは、RGB信号からNTSC(National Television SystemCommittee)テレビジョン方式における輝度信号Yに変換する式である。
【0088】
そして、この2値化されたビットマップデータについて文字認識を行い、文字をテキストデータとして出力する。図8の例では、ページ番号のテキストデータとして「2/5」が出力される。
【0089】
認識プロセスは、LCD16に表示された表示倍率についても同様な処理を行い、図8の例では、表示倍率のテキストデータとして「100%」が出力される。
【0090】
認識プロセスは、これらのテキストデータを重畳描画プロセスへ渡し、重畳描画プロセスはこれらのテキストデータから、現在のページ番号が「2ページ目」で表示倍率が「100%」であると判断する。
【0091】
なお、文書を表示させているアプリケーションのウィンドウ内におけるページ番号と表示倍率の表示位置と表示領域は、そのアプリケーションに対応付けてシステムファイルとして予めハードディスク20に記憶しておく。
【0092】
このページ番号と表示倍率の表示位置と表示領域は、例えば装置のシステム設定モード時に、タッチペン2を用いてそれらの表示データを矩形で囲むことで指定する。この矩形の対角の2点の座標は、アプリケーションのウィンドウの左下の角の座標からの相対座標で表す。
【0093】
図9は、表示倍率の表示領域を示す点A1と点A2、ページ番号の表示領域を示す点B1と点B2、およびアプリケーションのウィンドウの左下の角の点Wを示している。点Wからの相対座標で表された点A1・点A2・点B1・点B2の座標値を、アプリケーションに対応付けてシステムファイルとしてハードディスク20に記憶する。
【0094】
そして、ウィンドウマネージャがウィンドウ生成時に、アプリケーション名やウィンドウの大きさと表示位置等の情報とともに、点A1・点A2・点B1・点B2の座標値(点Wからの相対座標)をウィンドウ属性としてメインメモリ12に記憶する。
【0095】
重畳描画プロセスは、重畳描画モードへ切り替わったときに、メインメモリ12に記憶されたウィンドウ属性を参照して、表示倍率とページ番号の領域を示す点A1・点A2・点B1・点B2のLCD16の表示領域全体に対する絶対座標を求める。
【0096】
ウィンドウ属性には、ウィンドウの表示位置であるウィンドウの左上の角の座標と、ウィンドウの横方向の大きさ(X軸方向の画素数)と縦方向の大きさ(Y軸方向の画素数)が含まれているため、ウィンドウの左下の角(点W)の座標(0,ウィンドウの縦方向の大きさ)から、それぞれ相対座標を加算して、点A1・点A2・点B1・点B2の絶対座標が求まる。
【0097】
そして、重畳描画プロセスは、認識プロセスに対して、点A1と点A2の絶対座標を渡すことにより表示倍率のテキストデータを得、また点B1と点B2の絶対座標を渡すことによりページ番号のテキストデータを得ることができる。
【0098】
(4.2)文書の表示位置の抽出
本実施形態において、文書を表示させているアプリケーション・プロセスを使用せずに、スクロールされた文書の表示位置を得る方法について説明する。スクロールされた文書の表示位置は、文書表示ウィンドウの右辺に沿って表示された「垂直スクロールバー」と、文書表示ウィンドウの下辺に沿って表示された「水平スクロールバー」と、それらのスクロールバー中に表示された「スクロールボックス」をLCD16上に表示させるためのデータ(「表示データ」)から抽出される。
【0099】
まず、文書の縦方向の表示位置を特定する方法について説明する。
【0100】
垂直スクロールバー中に表示されたスクロールボックス(図8を参照)の位置は、そのウィンドウに文書を表示させているアプリケーションによって、文書の縦方向の表示位置と対応付けられている。そこで、スクロールボックスの位置から文書の縦方向の表示位置を特定できるようにする。
【0101】
スクロールボックスの位置は、LCD表示コントローラ15中の表示画面バッファに記憶されたデータを利用して特定する。LCD表示コントローラ15中の表示画面バッファに記憶されたビットマップデータから垂直スクロールバー全体を含む矩形領域を切り出し、この矩形領域のデータからスクロールボックスの位置を特定する。
【0102】
縦方向のスクロールバーとそれを含むウィンドウの右端部分を図10に示す。垂直スクロールバーの上辺とこのスクロールバーを含むウィンドウの上辺との間の表示画素数nと、垂直スクロールバーの下辺とこのスクロールバーを含むウィンドウの下辺との間の表示画素数mは、このウィンドウの大きさに無関係に一定であるため、ウィンドウの大きさと表示位置の情報から、垂直スクロールバー全体を含む矩形領域を切り出すことができる。
【0103】
ここで、表示画素数nと表示画素数mの値を特定する方法について説明する。
【0104】
装置のシステム設定モード時に、ユーザにより設定項目の1つである「垂直スクロールバーの位置取得」が選択されると、まずシステムファイル中に予め登録されたアプリケーション名の一覧リストを表示し、この中から1つを選択させる。
【0105】
次に、垂直スクロールバーとウィンドウの右上角と右下角を含めた矩形領域をユーザに指定させ、ユーザにより指定されると、この矩形領域に該当するLCD表示コントローラ15中の表示画面バッファに記憶されたビットマップデータを、メインメモリ12にコピーする。ユーザによるこの矩形領域の指定例を図11に示す。
【0106】
そして、このビットマップデータについてパターン認識プロセスを使用して、垂直スクロールバーの上辺とウィンドウの上辺との間の表示画素数nと、垂直スクロールバーの下辺とウィンドウの下辺との間の表示画素数mを調べる。
【0107】
パターン認識プロセスは、ウィンドウの外枠線とスクロールボタンのマークを参照情報として垂直スクロールバーの矩形を特定して、垂直スクロールバーの上辺とウィンドウの上辺との間の表示画素数nと、垂直スクロールバーの下辺とウィンドウの下辺との間の表示画素数mを特定する。
【0108】
なお、パターン認識プロセスの認識精度を向上させるためには、図11に示した矩形領域の表示データを含んだLCD16の表示画面のハードコピーを得て、このハードコピーをスキャナで読み込んで得られたビットマップデータを、パターン参照用データとして利用してもよい。
【0109】
LCD16の表示画面のハードコピーは、LCD表示コントローラ15中の表示画面バッファに記憶されたビットマップデータをPCカード5にコピーし、このPCカード5に記憶されたビットマップデータを、パーソナルコンピュータを用いてプリンタに印刷することによって得ることができる。
【0110】
このようにして、ウィンドウ内における垂直スクロールバーの表示位置が特定される。得られた表示画素数nと表示画素数mの値はウィンドウ属性としてメインメモリ12に記憶しておく。
【0111】
次に、パターン認識プロセスを使用して、垂直スクロールバー内のスクロールボックスの位置を特定する。パターン認識プロセスは既に垂直スクロールバーを特定しているため、この中からスクロールボックスを認識する。そして、垂直スクロールバーの上辺とスクロールボックスの上辺との間の表示画素数kを調べて、スクロールボックスの位置を特定する。文書の縦方向の表示位置は、スクロールボックスの位置を示す垂直スクロールバーの上辺とスクロールボックスの上辺との間の表示画素数kで特定する。
【0112】
なお、上記の表示画素数nと表示画素数mの値を特定するための動作は、デフォルトのウィンドウサイズで実行する。そして、ウィンドウサイズが縦方向に縮小された場合、現在の文書の縦方向の表示位置は、垂直スクロールバーの上辺とスクロールボックスの上辺との間の表示画素数「k」を「k×縮小率(%)/100」の値で置き換えて、この置き換わった表示画素数kで特定する。
【0113】
得られた表示画素数kの値はウィンドウ属性としてメインメモリ12に記憶しておく。
【0114】
表示画素数kは文書の先頭からの表示位置を特定しているため、次に、現在表示されている文書ページの先頭からの相対位置(1つのページにおける先頭からの位置割合:%で表記)を特定する。垂直スクロールバーの縦方向の表示画素数をL、表示文書のページ数をT、現在表示されているページ番号をPとすると、文書ページの先頭から現在の表示位置の先頭までの縦方向の相対位置RelPos(v)[%]は、
【0115】
【数1】
Figure 0004021249
により求まる。例えば、文書ページが縦方向の中央から表示されている場合、RelPos(v)=50[%]となる。
【0116】
次に、文書の横方向の表示位置を特定する方法について説明する。
【0117】
文書の横方向の表示位置は、水平スクロールバー内のスクロールボックスの表示位置により特定する。水平スクロールバーの表示位置と水平スクロールバー内のスクロールボックスの位置については、LCD表示コントローラ15中の表示画面バッファに記憶されたデータを利用して、垂直スクロールバーの表示位置と垂直スクロールバー内のスクロールボックスの位置を特定した上記の処理と同様にして特定する。図12は、文書の横方向の表示位置を特定する水平スクロールバーの左辺とスクロールボックスの左辺との間の表示画素数jを示している。
【0118】
なお、ウィンドウサイズがデフォルトのサイズから横方向に縮小された場合、現在の文書の横方向の表示位置は、水平スクロールバーの左辺とスクロールボックスの左辺との間の表示画素数「j」を「j×縮小率(%)/100」の値で置き換えて、この置き換わった表示画素数jで特定する。
【0119】
得られた表示画素数jの値はウィンドウ属性としてメインメモリ12に記憶しておく。
【0120】
表示画素数jを使用して文書ページの左端からの表示位置を特定する。水平スクロールバーの横方向の表示画素数をWとすると、文書ページの左端から現在の表示位置の左端までの横方向の相対位置RelPos(h)[%]は、
【0121】
【数2】
Figure 0004021249
により求まる。
【0122】
このようにして、本実施形態は、文書を表示させているアプリケーション・プロセスを使用せずに、スクロールされた文書の表示位置を特定することができる。
【0123】
(5)本実施形態における画像の位置等の管理
本実施形態において、上述のように求められた相対位置RelPos(v)・RelPos(h)に基づいて、画像の位置を管理する方法について説明する。
【0124】
まず、文書ページとウィンドウ内での表示領域との関係、および、文書ページと透明スクリーンとの関係について、図13を用いて説明する。図13では、文書ページの上部の領域(斜線で図示)が、LCD16の表示画面のウィンドウ内に表示されている。透明スクリーンは、文書の外側にも画像を添付することができるように、LCD16の表示画面領域よりも大きな領域を持つようにしている。図中、点線で囲まれた領域はLCD16の表示画面領域を示している。
【0125】
本実施形態においては、透明スクリーン上の画像の位置を、文書ページの左上角を原点とした座標で表す。これを、1つの文書ページに対する「透明スクリーン用絶対座標」と呼ぶこととする。これは、「3.2 意義」で記述した内容と関連されると、画像上の固定点の文書上の固定点に対する位置(画像の添付位置)に相当する。透明スクリーン用絶対座標の座標間隔(座標の最小単位)はLCD16の表示画素間隔に等しくとる。
【0126】
(5.1)表示された画像を貼り付けた場合
まず、表示文書に対して矩形領域のビットマップデータを重畳させる場合の例として、図4に示したように、アプリケーションAが表示している文書Aに写真Aを重畳させる場合について説明する。
【0127】
図14には、図4の表示画面内容について、表示されている文書ページ全体の領域、文書の表示領域、LCD16の表示画面領域、透明スクリーンの領域が示されている。文書の表示領域には、文書ページの先頭からのデータが表示されている。図のように、透明スクリーン用絶対座標原点の表示座標は(a,b)である。
【0128】
写真Aの位置は、左上角の点T(「3.2 意義」でいう「画像上の固定点」)で特定できる。この点Tの透明スクリーン用絶対座標を(Xs,Ys)、表示座標を(Xd,Yd)とすると
【0129】
【数3】
Figure 0004021249
【0130】
【数4】
Figure 0004021249
の関係式が成立する。
【0131】
この絶対座標(Xs,Ys)を記録しておけば、再表示時において、文書のスクロールにより絶対座標の原点(a,b)が変わってしまったとしても、関係式(3)(4)により写真Aの表示座標を決定できる。
【0132】
このように、RelPos(v)・RelPos(h)に基づけば、写真Aの再表示位置を決定することができるが、RelPos(v)・RelPos(h)の値の精度等が原因で、この再表示位置には、画素単位でのずれが生じてしまう場合がある。
【0133】
そこで、本実施形態においては、透明スクリーン上の画像を矩形の文書データ領域(ある文書データ(文書に係る表示データ)がLCD16上に表示させる領域)と対応づけるため、透明スクリーン上の画像の位置を、その文書データ領域の左上角を原点とした座標でも表す。これを、近隣の文書データ領域に対する「透明スクリーン用相対座標」と呼ぶこととする。
【0134】
ここで、図14の写真Aとその近隣の文書データ領域との位置関係を求める。写真Aに対応した文書データ領域を図15に示す。写真Aとその近隣の文書データ領域とを対応付けるため、この文書データ領域の左上角の点Uに対する点Tの透明スクリーン用相対座標を求める。
【0135】
そして、点Tにおける上記の2種類の座標(透明スクリーン用絶対座標と透明スクリーン用相対座標)と、写真Aの近隣の文書データ領域の「ビットマップデータ」「その領域の縦方向と横方向の画素数」を、写真Aの位置情報データとしてメインメモリ12に記憶しておく。
【0136】
その後、「保存」ボタン43がタッチされると、重畳描画プロセスは写真Aの表示データ(ビットマップデータ)を、「透明スクリーン用絶対座標」「透明スクリーン用相対座標」と、写真Aの近隣の文書データ領域の「ビットマップデータ」「その領域の縦方向の画素数と横方向の画素数」に対応させて、さらに、現在の文書のページ番号に対応付けてハードディスク20に書き込み、保存する。このとき、表示データをページごとに保存するようにすると、表示データの位置の管理が容易になる。
【0137】
図16に、重畳描画プロセスにおける上記の重畳描画モードでの動作フローを示す。重畳描画モードになると、ウィンドウ属性として記憶されたアプリケーション名、アプリケーションのウィンドウの大きさと表示位置、文書のファイル名を参照し(S1)、システムファイルを参照して、アプリケーション名に対応したページ番号と表示倍率の表示位置と表示領域を得て(S2)、認識プロセスを利用して、画面の表示データからページ番号と表示倍率のテキストデータを得て(S3)、画面の表示データからスクロールバー中のスクロールボックスの位置を特定し、文書データの表示位置を特定する(S4)。次に、ビットマップデータが重畳されると、重畳されたビットマップデータ領域の左上角の点Tにおける透明スクリーン用絶対座標と近隣の文書データ領域に対する相対座標を求め(S5)、点Tにおける2種類の座標と、近隣の文書データ領域の表示データ及びその領域の縦方向と横方向の画素数を重畳されたビットマップの位置情報として記憶しておく(S6)。そして、さらにビットマップデータが重畳されると再びS5・S6の処理を実行し、保存ボタンが押されると、重畳されたビットマップデータを点Tにおける2種類の座標と、近隣の文書データ領域の表示データ及びその領域の縦方向の画素数と横方向の画素数に対応させて、さらに、現在の表示ページに対応付けてハードディスク20に保存して(S7)、終了する。
【0138】
(5.2)手書きされた描画データを取り込んだ場合
次に、文書が表示されている時に透明スクリーンへ手書き描画した場合のLCD16の表示例を図17に示す。図17では、透明スクリーン領域51(手書き描画が可能な領域)内にて、「直す」「OK」の文字や「矢印」「囲み円」「括弧書き」の図形が、文書に対するコメントとして手書き描画されている。
【0139】
図18には、図17の表示画面内容について、表示されている文書ページ全体の領域、文書の表示領域、LCD16の表示画面領域、透明スクリーンの領域が示されている。文書の表示領域には、文書ページの先頭からのデータが表示されている。図のように、透明スクリーン用絶対座標原点の表示座標は(c,d)である。
【0140】
手書きされた画像の位置は、写真のときと同様に、当該画像上の固定点で特定できる。この固定点の透明スクリーン用絶対座標を(Xs,Ys)、表示座標を(Xd,Yd)とすると
【0141】
【数5】
Figure 0004021249
【0142】
【数6】
Figure 0004021249
の関係式が成立する。
【0143】
この絶対座標(Xs,Ys)を記録しておけば、再表示時において、文書のスクロールにより絶対座標の原点(c,d)が変わってしまったとしても、関係式(5)(6)により画像の表示座標を決定できる。
【0144】
重畳描画プロセスは、手書き入力によりタッチパネルコントローラ17から得た各座標値(表示座標と同じ)を、LCD表示コントローラ15に対してはそのまま渡すが、関係式(5)(6)により、透明スクリーン用絶対座標にも変換し、この変換された座標データをメインメモリ12に記憶しておく。
【0145】
また、本実施形態においては、透明スクリーン用絶対座標値に変換された手書きデータを、それらの位置関係からグループ化し、各グループを1つのオブジェクトとして扱う。図18に示した手書きデータをオブジェクト化した例を図19に示す。文字「OK」と図形「括弧書き」は点線で示す「オブジェクト1」、文字「直す」と図形「矢印」「囲み線」は点線で示す「オブジェクト2」として、オブジェクト化されている。
【0146】
図19はまた、手書き描画オブジェクトと対応付けられた文書データの表示領域(後述)も示している。「オブジェクト1」はその近隣の文書データ領域である「手書き描画オブジェクト1用文書データ領域」、「オブジェクト2」はその近隣の文書データ領域である「手書き描画オブジェクト2用文書データ領域」に対応付けている。
【0147】
手書きデータのグループ化(オブジェクト化)は、手書きのストロークデータ(ペンダウンからペンアップまでの座標列)の位置関係から判断する。すなわち、2つのストローク間で最も距離が短くなるような各ストローク中の座標データを見つけ、これらの座標間の距離が所定の値以下であるか否かをチェックする。この距離が所定の値以下の場合には、これらのストロークをグループ化する。
【0148】
さて、上述のように、RelPos(v)・RelPos(h)に基づけば、手書き描画オブジェクトの表示位置を決定することができるが、写真の場合と同様に、RelPos(v)・RelPos(h)の精度等が原因で、この再表示位置には、画素単位でのずれが生じてしまう場合がある。
【0149】
そこで、写真の場合と同様に、透明スクリーン上の画像を文書データ領域(矩形領域)と対応づけるため、透明スクリーン上の画像の位置を、その文書データ領域の左上角を原点とした座標でも表す。これは、写真の場合の説明で述べたように、近隣の文書データ領域に対する「透明スクリーン用相対座標」と呼ばれる。
【0150】
表示された文書データの中で、手書き描画オブジェクトの一部あるいは全てを含む所定の大きさの矩形領域に含まれる文書データ(ビットマップデータ)を、前記の手書き描画オブジェクトと対応付けてメインメモリ12に記憶しておく。また、前記の文書データ(ビットマップデータ)とともに、「その矩形領域の縦方向の画素数と横方向の画素数」「その矩形領域の左上角からの透明スクリーン用相対座標」も記憶しておく。なお、図20のオブジェクト3「ここはよく検討する」のように、文書表示領域にない手書き描画オブジェクトについては、図中の「手書き描画オブジェクト3用文書データ領域」のように、この手書き描画オブジェクトの横にある文書データ領域を対応付ける。
【0151】
図17および図18に示した手書き描画データが重畳表示された文書が上方へスクロールされた場合における、文書ページ全体の領域、文書の表示領域、LCD16の表示画面領域、透明スクリーンの領域の関係を図21に示す。
【0152】
図21では、図17に示した手書き描画データの一部(図19の手書き描画オブジェクト2)が表示されている。図21に示した例では、文書表示領域より上側に存在する手書き描画データの表示は行わないようにしている。
【0153】
文書のスクロール操作は重畳手書き描画モードがオフの状態で行われるため、重畳手書き描画モードがオンになると、重畳描画プロセスは式(1)の計算を行い、文書ページの現在の表示位置を得る。
【0154】
そして、先に保存した手書き描画オブジェクト用文書データ領域の中から現在の表示データ中にあるものを推測し、すなわち、手書き描画オブジェクト2用文書データ領域を推測し、この推測された領域の表示データが現在の表示データ中にあるか否かをチェックする。図21の場合においては、現在の表示データ中にこの手書き描画オブジェクト2用文書データ領域が含まれていると判断されることになる。
【0155】
手書き描画オブジェクト2用文書データ領域の左上角の透明スクリーン用絶対座標と、その矩形領域の縦方向の画素数は既に保存されているため、この矩形領域の左下角(点S)の透明スクリーン用絶対座標を求めることは可能である。
【0156】
そして、文書表示領域の左上点Rと点Sとの間の縦方向の画素数から、文書表示領域の左上点Rの透明スクリーン用絶対座標が求まる。図21では、この座標を(0,β)で示している。
【0157】
その後、図21の文書表示状態において手書き画像が入力されると、それらの座標データとして点Rからの相対座標を基にして、当該手書き画像の透明スクリーン用絶対座標が求まる。すなわち、関係式(5)(6)に従って、タッチパネルコントローラ17から得たX座標値(表示座標)からcを減算し、Y座標値(表示座標)からd−βを減算する。例えば、図22は、図21の表示文書中にある表に対して新たに「不要」が手書き描画された場合を示しているが、この手書き画像の透明スクリーン用絶対座標は、そのように求められる。
【0158】
上記の例では、スクロール前の画面データとスクロール後の画面データとに表示が重複した文書データがあり、かつ、その重複領域中に手書き描画オブジェクト用文書データ領域のデータが含まれている場合を示したが、その重複領域中に手書き描画オブジェクト用文書データ領域のデータが含まれていない場合や、スクロール前とスクロール後の画面データに重複した文書データがない場合は、本実施形態においては、手書き入力データの座標として近隣の文書データ領域に対する相対座標のみが存在し、1つのページに対する絶対座標は存在しない(この場合、例えば、座標値が16ビットのデータ型で定義されている場合、OxFFFFがセットされる)。
【0159】
以上では、縦方向のスクロールについて説明したが、横方向のスクロールについても同様である。
【0160】
図18および図22に示した手書き描画が行われ、LCD16の表示画面の右上にある「保存」ボタン43が選択されると、重畳描画プロセスは手書き入力データを、「透明スクリーン用絶対座標」「透明スクリーン用相対座標」の2種類の座標と、近隣の文書データ領域の「ビットマップデータ」「その矩形領域の縦方向の画素数と横方向の画素数」に対応させて、さらに、現在の文書のページ番号に対応付けてハードディスク20に書き込み、保存する。このとき、手書き入力データをページごとに保存するようにすると、手書き入力データの位置の管理が容易になる。
【0161】
図23に、重畳描画プロセスにおける上記の重畳手書き描画モードでの動作フローを示す。重畳描画プロセスにおいて、手書き入力があると、入力座標(表示座標と同じ)間を直線描画し(S1)、入力座標から近隣の文書データ領域に対する相対座標と透明スクリーン用絶対座標を得て、これらのデータを近隣の文書データ領域の表示データ及びその領域の縦方向と横方向の画素数とともに記憶しておく(S2)。そして、手書き入力があると再びS1・S2の処理を実行し、保存ボタンが押されると、手書き描画部分の近隣データ領域に対する相対座標と透明スクリーン用絶対座標、及び近隣の文書データ領域の表示データとその領域の縦方向と横方向の画素数を現在の表示ページに対応付けてハードディスク20に保存して(S3)、終了する。
【0162】
その後、別のページを表示させたり、表示されている文書を閉じたりするために、「手書き」ボタン45が押されて重畳手書き描画モードが解除され、続いて「切換」ボタン42が押されて重畳描画モードが解除されると、重畳描画プロセスは表示画面に重畳された仮想的な透明スクリーンを取り除いて、表示画面を透明スクリーンが重畳された前の状態に戻す(退避されたビットマップデータを表示画面バッファ中の元の位置へ戻す)。また、ウィンドウマネージャは、手書き描画表示と「切換」ボタン42の上部に表示された各種ボタンを消去して、「フリーズ」ボタン40と矩形領域指定アイコン41を表示するための再描画を行う。
【0163】
(5.3)保存された画像を重畳表示させた場合
次に、文書が表示されている状態にて、重畳描画モードでない場合に重畳描画モードに切り替えて、保存された写真等のビットマップデータを文書データと重畳して再表示させる動作について説明する。
【0164】
LCD16に表示された「切換」ボタン42がタッチされて重畳描画モードに切り替わるときに、重畳描画プロセスは、メインメモリ12に記憶されたウィンドウ属性であるアプリケーション名・アプリケーションのウィンドウの大きさ・アプリケーションのウィンドウの表示位置・文書のファイル名を参照する。
【0165】
そして、文書のページ番号・文書の表示倍率は、上述したように認識プロセスを使用して識別される。また、重畳描画プロセスは、文書を表示させているアプリケーションのウィンドウ内に表示された文書の表示位置を、スクロールボックスの表示位置を利用した上述の方法を用いて、その文書を表示させているアプリケーション・プロセスに問い合わせを行わずに特定する。
【0166】
そして、LCD16の表示画面の右上にある「読出」ボタン44が選択されると、保存したビットマップデータの中で現在のページ番号と対応して管理されたビットマップデータを、文書の表示位置に対応させて表示させる。
【0167】
例えば、文書の2ページ目の先頭からの領域が表示されている場合に「読出」ボタン44が選択されると、重畳描画プロセスは、ビットマップデータの付属情報である透明スクリーン用絶対座標から関係式(3)(4)を使用して表示座標に変換し、この位置にビットマップデータを表示する。すなわち、図4に示した文書の場合には、写真Aが重畳して再表示される。
【0168】
もし、他のページがページの途中から表示されており、そこに重畳表示させるビットマップデータの透明スクリーン用絶対座標が存在していない場合には、スクロールボックスの表示位置から特定される現在の表示データのページ中における表示位置情報を基に、現在の表示データ中に、重畳するビットマップデータに対応付けて保存された文書データ領域が有るか否かをチェックする。
【0169】
そして、表示領域中にその文書データ領域が含まれていると判断した場合には、その文書データ領域に対応付けて保存されたビットマップデータをその文書データ領域に対する相対座標位置に重畳表示する。この時、ビットマップデータは、文書データ領域に対する相対座標を表示座標に変換した後に表示する。なお、本実施形態における表示座標は、「1 本実施形態の構成」で説明したように、LCDの表示領域の左上の角にある画素を原点としているが、例えば、ウィンドウの表示領域の左上の角にある画素を原点としてもよい。
【0170】
(5.4)保存された手書き描画データを重畳表示させた場合
次に、文書が表示されている状態にて、重畳手書き描画モードでない場合に重畳手書き描画モードに切り替えて、保存された手書き描画データを文書データと重畳して表示させる動作について説明する。
【0171】
重畳描画モードでない場合にLCD16に表示された「切換」ボタン42がタッチされて重畳描画モードに切り替わるときに、重畳描画プロセスは、メインメモリ12に記憶されたウィンドウ属性であるアプリケーション名・アプリケーションのウィンドウの大きさ・アプリケーションのウィンドウの表示位置・文書のファイル名を参照する。
【0172】
そして、文書のページ番号・文書の表示倍率は、上述したように認識プロセスを使用して識別される。また、重畳描画プロセスは、文書を表示させているアプリケーションのウィンドウ内に表示された文書の表示位置を、スクロールボックスの表示位置を利用した上述の方法を用いて、その文書を表示させているアプリケーション・プロセスに問い合わせを行わずに特定する。
【0173】
そして、「手書き」ボタン45がタッチされて重畳手書き描画モードに切り替わり、LCD16の表示画面の右上にある「読出」ボタン44が選択されると、保存した手書き描画データの中で現在のページ番号と対応して管理された手書き描画データを、文書の表示位置に対応させて表示させる。
【0174】
例えば、文書の2ページ目の先頭からの領域が表示されている場合に「読出」ボタン44が選択されると、重畳描画プロセスは、手書き入力データ中に透明スクリーン用絶対座標が存在していることを確認し、透明スクリーン用絶対座標から関係式(5)(6)を使用して表示座標に変換し、この位置に手書き描画線を表示する。
【0175】
もし、他のページがページの途中から表示されており、そこに重畳表示させる手書きデータの透明スクリーン用絶対座標が存在していない場合には、スクロールボックスの表示位置から特定される現在の表示データのページ中における表示位置情報を基に、現在の表示データ中に、手書き描画オブジェクトと対応付けて保存された文書データ領域が有るか否かをチェックする。
【0176】
そして、表示領域中にその文書データ領域が含まれていると判断した場合には、その文書データ領域に対応付けて保存された手書き入力データを、文書データ領域に対する相対座標から表示座標に変換し、この位置に手書き描画線を表示する。なお、本実施形態における表示座標は、「1 本実施形態の構成」で説明したように、LCDの表示領域の左上の角にある画素を原点としているが、例えば、ウィンドウの表示領域の左上の角にある画素を原点としてもよい。
【0177】
(5.5)ビットマップデータが重畳表示されているときに、文書の表示倍率が変更された場合
次に、文書ページとそれに対応した重畳ビットマップデータが表示されている場合に、文書の表示倍率が変更された場合について説明する。
【0178】
重畳描画モードが解除された状態で文書の表示倍率が変更され、「切換」ボタン42が押されて再び重畳描画モードに切り替わると、重畳描画プロセスは上述した一連のチェック処理を実行して文書の表示倍率を識別する。
【0179】
まず、文書データがページの先頭から表示されている場合について説明する。「読出」ボタン44が押されると、ページの先頭(ページの左上角)と透明スクリーン用絶対座標原点は一致しているため、透明スクリーン用絶対座標に座標変換された重畳ビットマップデータを、原点を中心として文書と同じ倍率の拡大または縮小処理を実行してLCD16に表示させる。なお、重畳ビットマップデータの拡大処理として例えばデータの補間処理を使用し、縮小処理として例えばデータの間引き処理を使用する。
【0180】
なお、文書データが既に拡大または縮小されて表示されているときにビットマップデータの重畳が行われた場合は、ビットマップデータの重畳後にこのビットマップ領域(矩形領域)の大きさを適宜ユーザが電子ペン2を使用して変更する。この領域変更時の動作は、まず、ユーザが重畳表示しているビットマップ領域内を電子ペン2でタッチすると、この領域の縁を強調線表示する。そして、ユーザがこの矩形の右下角(対角点)を電子ペン2でタッチし、そのままタッチパネル18上をなぞると、領域の縁である矩形の右下角が電子ペン2の接触位置となるように矩形の大きさを変えて表示する。そして、ユーザが電子ペン2をタッチパネル18から離す(ペンアップ)と、そのペンアップされた点が重畳表示するビットマップ領域の新たな対角点となるように、ビットマップデータを拡大または縮小して表示する。
【0181】
文書データがページの先頭から表示されていない場合には、表示倍率の変更前の表示位置情報を利用することができないため、表示倍率の変更前に表示データに対応付けて保存された重畳ビットマップデータを、表示倍率変更後の表示データと対応付けて表示させることはできない。
【0182】
そこで、重畳表示しているビットマップ領域(重畳ビットマップ領域)の左上角(図15の点T)における透明スクリーン用絶対座標とその近隣の文書データ領域に対する相対座標、また、重畳ビットマップ領域の近隣の文書データ領域のビットマップデータ及びその領域の縦方向と横方向の画素数を重畳ビットマップの位置情報データとして、文書の表示倍率のデータとともにメインメモリ12に記憶しておく。
【0183】
そして、「保存」ボタン43がタッチされると、重畳描画プロセスは重畳ビットマップデータを、先にメインメモリ12に記憶した重畳ビットマップ領域の左上角の透明スクリーン用絶対座標、その近隣の文書データ領域に対する相対座標、重畳ビットマップ領域の近隣の文書データ領域のビットマップデータ及びその領域の縦方向と横方向の画素数、文書の表示倍率に対応させて、さらに、現在の文書のページ番号に対応付けてハードディスク20に書き込み、保存する。
【0184】
そして、その後、これらの保存された重畳ビットマップデータを表示させる場合、その時の文書の表示倍率に対応した表示位置からその倍率に対応したビットマップデータを表示させる。
【0185】
(5.6)手書き描画データが重畳表示されているときに、文書の表示倍率が変更された場合
次に、文書ページとそれに対応した手書き描画データが表示されている場合に、文書の表示倍率が変更された場合について説明する。
【0186】
重畳手書き描画モード及び重畳描画モードが解除された状態で文書の表示倍率が変更され、「切換」ボタン42が押されて再び重畳描画モードに切り替わると、重畳描画プロセスは上述した一連のチェック処理を実行して文書の表示倍率を識別する。そして、「手書き」ボタン45が押されると重畳手書き描画モードとなる。
【0187】
まず、文書データがページの先頭から表示されている場合について説明する。「読出」ボタン44が押されると、ページの先頭(ページの左上角)と透明スクリーン用絶対座標原点は一致しているため、透明スクリーン用絶対座標に座標変換された手書き描画データを、原点を中心として文書と同じ倍率の拡大または縮小処理を実行してLCD16に表示させる。なお、手書き描画データの拡大処理として例えば座標データの補間処理を使用し、縮小処理として例えば座標データの間引き処理を使用する。
【0188】
なお、文書データが既に拡大または縮小されて表示されているときに手書き入力が行われた場合は、重畳描画プロセスは、手書き入力によりタッチパネルコントローラ17から得た各座標値(表示座標と同じ)をLCD表示コントローラ15へはそのまま渡し、また透明スクリーン用の絶対座標にも変換し、この変換された座標データをメインメモリ12に記憶しておく。
【0189】
文書データがページの先頭から表示されていない場合には、表示倍率の変更前の情報を利用することができないため、表示倍率の変更前に表示データに対応付けて保存された手書き描画データを、表示倍率変更後の表示データと対応付けて表示させることはできない。
【0190】
そこで、上記の図18・図19・図20を参照しながら説明した、手書き描画オブジェクトとそのオブジェクトに対応付けられた領域の文書データを用いて手書きデータの表示位置を特定する方法を、表示倍率毎に実行させる。
【0191】
そして、手書き入力データを近隣の文書データ領域に対する相対座標として、また透明スクリーン用の絶対座標に変換して保存する場合、文書の表示倍率のデータもいっしょに保存する。そして、その後これらの保存された手書き入力データを再表示させる場合、そのときの文書の表示倍率に対応したものを表示させる。
【0192】
(6)本実施形態におけるその他の情報処理
(6.1)背景を白とする情報処理
文書を表示させているアプリケーションの表示ウィンドウの外側で手書き描画が行われた場合、手書き描画データを見やすくするために、その背景を白とする場合について説明する。
【0193】
重畳手書き描画モードにある場合、重畳描画プロセスはメインメモリ12に記憶されたウィンドウ属性を参照することで、文書を表示させているアプリケーションのウィンドウの大きさと表示位置の情報を得ている。従って、タッチパネル18上で手書き入力され、タッチパネルコントローラ17から得られる各座標データ(表示座標と同じ)について、文書表示ウィンドウの内側の領域であるか否かを判断する。
【0194】
そして、その座標データが文書表示ウィンドウの外側であり、かつタッチパネルコントローラ17からペンアップ通知データを受信した場合には、文書表示ウィンドウの外側にある各座標データを調べ、それらが全て含まれるような所定の大きさの矩形領域を白色で塗りつぶす描画コマンドを、LCD表示コントローラ15へ出し、続いて、その矩形領域内の座標データ間を直線で結んで描画する描画コマンドを、LCD表示コントローラ15へ出す。
【0195】
このようにして、文書表示ウィンドウの外側で手書き描画が行われた場合、その背景部分が白く表示される。この表示例を図24に示す。図24では、文書表示ウィンドウ外の手書き描画が可能な領域の背景をグレーで表示させている。
【0196】
なお、タッチパネルコントローラ17から得られる座標データのチェック時に文書表示ウィンドウの外側であると判断された座標データは、座標間の直線描画コマンドに入れてLCD表示コントローラ15へ渡すとともに、キューにも入れておく。このキューはプログラム中に定義された配列である。そして、このキューにある座標データから背景を白色で塗りつぶす矩形領域を判断する。
【0197】
以上のように、文書を表示させているアプリケーションのウィンドウの外側において、透明スクリーン上に手書き画像が描画された場合、その背景を白とすることで、描画線が見やすくなり、利便性が向上する。なお、ここではウィンドウの外側となったときに「白」としているが、文書の外側となったときに「白」となるようにしてもよい。
【0198】
(6.2)Webページに関する情報処理
WebブラウザがWebページを表示させている場合の情報処理について説明する。Webブラウザの表示例を図25に示す。
【0199】
重畳描画モードになるとき、重畳描画プロセスはメインメモリ12に記憶されたウィンドウ属性の1つである文書を表示させているアプリケーション名を参照して、Webブラウザであるか否かを判断する。
【0200】
そして、Webブラウザであると判断した場合、Webページの表示属性であるURLを、URLの表示データから識別する。この識別は、先に説明したAcrobat Reader(商標)のウィンドウ内の表示データから表示倍率やページ番号を識別する方法と同様に、認識機能によって識別する方法を用いる。
【0201】
認識プロセスは、LCD表示コントローラ15中の表示画面バッファにあるビットマップデータの中でURLを含んだ領域を切り出して文字認識を行い、認識された文字列(テキストデータ)を重畳描画プロセスへ渡す。
【0202】
Webページは、ページ番号の代わりにURLで識別されるため、Webページ上で重畳して描画される写真等のビットマップデータや、重畳手書き描画モード時にWebページ上で重畳して描画される手書き描画データは、テキストデータとして得たURLと対応付けて管理される。
【0203】
Webページが表示されている場合における重畳描画モード時または重畳手書き描画モード時の情報処理は、ページ識別情報としてページ番号の代わりにURLを利用する点を除いては、Acrobat Reader(商標)を例にとって説明した前述の情報処理と同様にすることができる。
【0204】
(6.3)ウィンドウが複数存在する場合の情報処理
文書を表示しているウィンドウが複数存在する場合には、重畳描画モード時に重畳された写真等のビットマップデータや、重畳手書き描画モード時に入力された手書き描画データは、現在のフォーカスウィンドウ(アクティブになっているウィンドウ)に表示された文書ページに対して管理する。また、重畳データとして保存されたビットマップデータや手書き描画データを再表示する場合も、現在のフォーカスウィンドウに表示された文書ページに対応したものを再表示させる。
【0205】
(本発明の実施の形態のその他の例)
(A)電子黒板
先述した実施形態においては、表示装置としてLCDを用いたが、代わりにPDP(Plasma Display Panel)等の大画面ディスプレイを用い、大画面ディスプレイの表示面にタッチパネル等の座標入力手段を付加し、表示面に対して手書き描画することが可能ないわゆる「電子黒板」とすることができる。
【0206】
この場合、電子黒板上の文書等の上に手書き描画線等を表示したとき、当該文書に関するアプリケーションの実行プロセスにアクションを起こさせずに、当該手書き描画線等の位置を管理することができるので、会議や教育での利便性が向上する。
【0207】
(B)データ会議システム
先述した実施形態のペン入力装置にLAN(イーサネット(登録商標))用のPCカードを挿入して、ネットワークを介して遠隔地にあるペン入力装置とデータ会議を実行する場合について説明する。なお、会話は電話等の音声通信機器を使用して行うものとする。
【0208】
データ会議用に形成されたネットワークに接続している1つの端末の表示画面を、他の全ての端末が共有するための仕様が、ITU−T勧告T.120シリーズとして標準化されている。そこで、先述したペン入力装置を複数個、データ会議用ネットワークに接続し、各ペン入力装置が画面共有機能を実行させることが可能である。
【0209】
この場合、各人が各画面上の資料等に重畳表示した手書き描画線等は、他の全員の画面上にも表示されることになるが、当該資料等に関するアプリケーションの実行プロセスにアクションを起こさせずに、当該描画線等の位置を管理することができるので、描画線等の保管が容易になるなど、会議での利便性が向上する。
【0210】
また、教育現場において、教師のペン入力装置と生徒のペン入力装置との間で画面共有機能を実行させれば、画面上の教科書等にメモ書き等を添付しながら授業する際に役立つなど、教育での利便性が向上する。
【0211】
(C)サーバ/クライアント型会議システム
ここでは、本発明の実施の形態の例として、サーバに記憶された会議資料文書を複数のクライアントが閲覧・編集しながら会議を行う電子会議システムを例にとって説明する。
【0212】
まず、サーバ/クライアントシステムのシステム構成例を図26に示す。本システムはサーバ60と、それに接続された大型ディスプレイ装置61と、各会議参加者が使用するクライアント62〜65から構成されており、これらの機器は無線LAN(例えばIEEE(Institute of Electrical and Electronics Engineers)802.11b)で接続されている。
【0213】
サーバ60は、例えばPC−AT(The Personal Computer for Advanced Technologies)アーキテクチャ(IBM社が1984年に発表)のコンピュータであり、そのPCI(Peripheral Compornent Interconnect)バスに接続されたPCIアダプタボードを介して、無線LAN用PCカードが装着されている。なお、図26中、サーバ60に接続されたキーボードの図示は省略している。
【0214】
大型ディスプレイ装置61は、例えばPDPの表示面にタッチパネルが付着されており、VGAケーブルとRS−232Cケーブルによってサーバ60と接続され、サーバ60の表示装置として機能するとともに、サーバ60のタッチ入力装置として機能する。なお、VGAケーブルはサーバ60からPDPへ画面表示信号を出力し、RS−232Cケーブルはタッチパネルが検出したタッチ入力座標データをサーバ60へ入力する。また、サーバ60は、入力されるタッチ入力座標データをマウス入力データと同様に処理する。
【0215】
クライアント62〜65は、先述した実施形態のペン入力装置であり、無線LAN用PCカードが装着されている。また、クライアント62〜65には、電子ペン66〜69が付属されている。
【0216】
次に、サーバ60にある画面データがクライアント62〜65へ送信され、クライアント62〜65からサーバ60へはユーザの入力データが送信されるサーバ/クライアントソフトウェアの動作について説明する。
【0217】
このサーバ/クライアントソフトウェアとして、AT&T社が開発・提供しているVNC(Virtual Network Computing)を使用した場合について説明する。
【0218】
サーバ60に存在するVNCサーバプロセス(以降、VNCサーバと記載)は、その起動時に1つの画面バッファを生成し、クライアント62〜65に存在するVNCクライアントプロセス(以降、VNCクライアントと記載)は、この画面バッファにある画面データを、自装置のディスプレイ(LCD16)に表示する。
【0219】
VNCサーバは、画面バッファに同時に複数のクライアントがアタッチできる共有モードか、1つのクライアントのみがアタッチする個別モードのいずれかのモードで動作するように起動されるが、今、VNCサーバは共有モードで動作している。
【0220】
サーバ60はVNCサーバが生成した画面バッファにある画面データを大型ディスプレイ装置61にも表示するため、大型ディスプレイ装置61とクライアント62〜65のディスプレイの表示が全て同じとなる。
【0221】
VNCサーバからVNCクライアントへ送信される画面データ、および、VNCクライアントからVNCサーバへ送信されるユーザの入力データは、RFB(Remote Frame Buffer)プロトコルを使用して転送される。RFBプロトコルは、1画面のデータを小領域(矩形)に分割し、さらにこの小領域の画像データを圧縮して送信する機能を持っている。この小領域の最小ブロックはタイルと呼ばれ、16×16画素である。
【0222】
なお、サーバ60に存在するVNCサーバプロセスと、クライアント62〜65に存在するVNCクライアントプロセスとは、ソケットにより通信できるようになっている。
【0223】
VNCサーバは、VNCクライアントから受信したユーザの入力データを、キーイベントまたはポインタイベントとしてアプリケーションへ渡す。アプリケーションは、これらのイベントに従った処理を実行し、画面への描画処理を実行する。そして、VNCサーバはこの更新された画面データをRFBプロトコルを使用してクライアント62〜65へ送信し、クライアント62〜65は受信した画面データを自装置のディスプレイ(LCD16)に表示する。
【0224】
したがって、クライアント62〜65あるいは大型ディスプレイ装置61の表示面上で入力された手書き描画データは、大型ディスプレイ装置61およびクライアント62〜65の全てのディスプレイに表示される。
【0225】
本実施形態を会議に用いる場合、各画面上の資料等に添付した手書き描画線等は、他の画面上にも表示されることになるが、当該資料等に関するアプリケーションの実行プロセスにアクションを起こさせずに、当該描画線等の位置を管理することができるので、描画線等の保管が容易になるなど、会議での利便性が向上する。
【0226】
【発明の効果】
このように、本発明では、コンテンツの表示位置を表す表示データからコンテンツの表示位置を抽出し、これに基づいてオブジェクトの位置を管理(記録時:描画位置の記録、送信時:描画位置の送信、再表示時:再表示位置の決定、など)することにより、コンテンツに関するアプリケーションの実行プロセスにアクションを起こさせずに、オブジェクトの位置を管理することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態の例であるペン入力装置の外部構成を示す。
【図2】本発明の実施の形態の例であるペン入力装置の内部構成を示す。
【図3】本実施形態の操作を説明する図である。
【図4】本実施形態の操作を説明する図である。
【図5】本実施形態の操作を説明する図である。
【図6】本実施形態の操作を説明する図である。
【図7】本実施形態における位置の取り扱いを説明する図である。
【図8】本実施形態における抽出を説明する図である。
【図9】本実施形態における抽出を説明する図である。
【図10】本実施形態における抽出を説明する図である。
【図11】本実施形態における抽出を説明する図である。
【図12】本実施形態における抽出を説明する図である。
【図13】本実施形態における管理を説明する図である。
【図14】本実施形態における管理を説明する図である。
【図15】本実施形態における管理を説明する図である。
【図16】本実施形態における管理を説明する図である。
【図17】本実施形態における管理を説明する図である。
【図18】本実施形態における管理を説明する図である。
【図19】本実施形態における管理を説明する図である。
【図20】本実施形態における管理を説明する図である。
【図21】本実施形態における管理を説明する図である。
【図22】本実施形態における管理を説明する図である。
【図23】本実施形態における管理を説明する図である。
【図24】本実施形態における背景を白とする情報処理を説明する図である。
【図25】本実施形態におけるWebページに関する情報処理を説明する図である。
【図26】サーバ/クライアントシステムのシステム構成例を示す。
【符号の説明】
1 ペン入力装置
2 タッチペン
3 キーボード
4 マウス
5 PCカード
6 電源ケーブル
10 CPU
11 クロック
12 メインメモリ
13 ROM
14 RTC
15 LCD表示コントローラ
16 LCD
17 タッチパネルコントローラ
18 タッチパネル
19 HDコントローラ
20 ハードディスク
21 USBコントローラ▲1▼
22 USB・I/F▲1▼
23 USBコントローラ▲2▼
24 USB・I/F▲2▼
25 PCカードコントローラ
26 カードI/F
27 システムバス
28 バッテリ
29 DC−DCコンバータ
30 充電回路
31 ACアダプタ
40 フリーズボタン
41 矩形領域指定アイコン
42 切換ボタン
43 保存ボタン
44 読出ボタン
45 手書きボタン
46 線種ボタン
47 矩形ボタン
48 消ゴムボタン
50 フリーズ領域
51 重畳描画可能領域(透明スクリーン領域)
53 アプリケーションA
54 文書A
55 アプリケーションB
56 文書B
57 デスクトップ画面
58 アプリケーションAのウィンドウ
59 透明スクリーン
60 サーバ
61 大型ディスプレイ装置
62・63・64・65 クライアント
66・67・68・69 電子ペン

Claims (8)

  1. 情報処理装置であって、
    前記情報処理装置は、
    ディスプレイと、
    描画オブジェクトを処理対象のウンドウ(以下、「トップウンドウ」と言う。)内に重畳表示する重畳描画プロセスと、前記ディスプレイに表示されているトップウンドウについて前記ディスプレイにおける前記トップウンドウの表示位置と前記トップウンドウの大きさと前記トップウンドウにて実行されているアプリケーションのアプリケーション名と該アプリケーションにて実行されている文書ファイルのファイル名とを含むウンドウに係る情報をウンドウ属性情報として取得するウンドウマネージャと、前記トップウンドウのビットマップ画像を取得し該ビットマップ画像に基づいて前記トップウンドウ内に表示されている文書データの前記文書ファイルにおける位置を文書データの表示位置として取得し該取得した文書データの表示位置を文書データ表示位置情報として前記重畳描画プロセスに渡す認識プロセスと、を制御する制御手段と、
    前記描画オブジェクトを、トップウィンドウ生成時、トップウィンドウ移動時、又はトップウィンドウの大きさの変更時に、前記文書データ表示位置情報を含む前記ウンドウ属性情報(以下、「記憶時ウンドウ属性情報」とう。)と対応付けて記憶する記憶手段と、
    を備え、
    前記重畳描画プロセスは、描画オブジェクトの表示の指示を受け付けると、前記ウンドウマネージャ及び前記認識プロセスから、前記指示を受け付けた時のトップウンドウ(以下、「指示時ウンドウ」と言う。)のウンドウ属性情報(以下、「指示時ウンドウ属性情報」とう。)を取得し、
    前記指示時ウンドウ属性情報に基づいて、前記記憶手段から前記指示時ウンドウに重畳表示すべき描画オブジェクトと該描画オブジェクトに対応付けられた前記記憶時ウインドウ属性情報を読み出し、
    前記指示時ウンドウ属性情報と前記記憶時ウンドウ属性情報とに基づいて、前記読み出した描画オブジェクトを、前記記憶時ウンドウ属性情報を記憶した時のトップンドウ(以下、「記憶時ウンドウ」と言う。)における表示位置と対応する位置となる指示時ウンドウにおける位置に、重畳して表示すること
    を特徴とする情報処理装置。
  2. 前記認識プロセスにおいて取得される前記文書データの表示位置は、トップウンドウにおける文書のスクロール位置に対応し、
    前記文書データのスクロール位置は、前記トップウンドウのビットマップ画像から抽出したスクロールバーにおける1の端部からスクロールボックスまでの画素数と他の端部からスクロールボックスまでの画素数とに基づいて決定される
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記重畳描画プロセスは、
    記憶時ウンドウ属性情報に含まれるトップンドウの大きさと指示時ウンドウ属性情報に含まれるトップンドウの大きさ(以下、「指示時ウンドウの大きさ」とう。)とに基づいて記憶時ウンドウ属性情報を記憶した時と指示時ウンドウ属性情報を取得した時におけるトップンドウの大きさの変化の割合を取得し、
    該取得した変化の割合に基づいて前記記憶時ウンドウ属性情報に含まれる文書データ表示位置情報を変更し、
    前記描画オブジェクトを前記変更された記憶時ウンドウにおける表示位置と対応する位置関係となる指示時ウンドウにおける位置に重畳して表示すること
    を特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記記憶時ウンドウ属性情報は、さらに、トップウンドウ内における文書のページ番号と文書の表示倍率とを有し、
    前記認識プロセスはさらに、
    前記記憶手段を参照して、前記ビットマップ画像からページ番号と表示倍率が含まれる領域を抽出し、
    該抽出した領域からページ番号と表示倍率とを認識し、
    該認識したページ番号と表示倍率とを表示属性として、前記描画オブジェクトと対応付けて前記記憶手段に記憶する
    ことを特徴とする請求項1又は2に記載の情報処理装置。
  5. ディスプレイと、
    描画オブジェクトを処理対象のウンドウ(以下、「トップウンドウ」と言う。)内に重畳表示する重畳描画プロセスと、前記ディスプレイに表示されているトップウンドウについて前記ディスプレイにおける前記トップウンドウの表示位置と前記トップウンドウの大きさと前記トップウンドウにて実行されているアプリケーションのアプリケーション名と該アプリケーションにて実行されている文書ファイルのファイル名とを含むウンドウに係る情報をウンドウ属性情報として取得するウンドウマネージャと、前記トップウンドウのビットマップ画像を取得し該ビットマップ画像に基づいて前記トップウンドウ内に表示されている文書データの前記文書ファイルにおける位置を文書データの表示位置として取得し該取得した文書データの表示位置を文書データ表示位置情報として前記重畳描画プロセスに渡す認識プロセスと、を制御する制御手段と、
    前記描画オブジェクトを、トップウィンドウ生成時、トップウィンドウ移動時、又はトップウィンドウの大きさの変更時に、前記文書データ表示位置情報を含む前記ウンドウ属性情報(以下、「記憶時ウンドウ属性情報」とう。)と対応付けて記憶する記憶手段と、
    を備えた情報処理装置における情報処理方法であって、
    前記重畳描画プロセスは、描画オブジェクトの表示の指示を受け付けると、前記ウンドウマネージャ及び前記認識プロセスから、前記指示を受け付けた時のトップウンドウ(以下、「指示時ウンドウ」と言う。)のウンドウ属性情報(以下、「指示時ウンドウ属性情報」とう。)を取得し、
    前記指示時ウンドウ属性情報に基づいて、前記記憶手段から前記指示時ウンドウに重畳表示すべき描画オブジェクトと該描画オブジェクトに対応付けられた前記記憶時ウインドウ属性情報を読み出し、
    前記指示時ウンドウ属性情報と前記記憶時ウンドウ属性情報とに基づいて、前記読み出した描画オブジェクトを、前記記憶時ウンドウ属性情報を記憶した時のトップンドウ(以下、「記憶時ウンドウ」と言う。)における表示位置と対応する位置となる指示時ウンドウにおける位置に、重畳して表示すること
    を特徴とする情報処理方法。
  6. 前記認識プロセスにおいて取得される前記文書データの表示位置は、トップウンドウにおける文書のスクロール位置に対応し、
    前記文書データのスクロール位置は、前記トップウンドウのビットマップ画像から抽出したスクロールバーにおける1の端部からスクロールボックスまでの画素数と他の端部からスクロールボックスまでの画素数とに基づいて決定される
    ことを特徴とする請求項5に記載の情報処理方法。
  7. 前記重畳描画プロセスは、
    記憶時ウンドウ属性情報に含まれるトップンドウの大きさと指示時ウンドウ属性情報に含まれるトップンドウの大きさとに基づいて記憶時ウンドウ属性情報を記憶した時と指示時ウンドウ属性情報を取得した時におけるトップンドウの大きさの変化の割合を取得し、
    該取得した変化の割合に基づいて前記記憶時ウンドウ属性情報に含まれる文書データ表示位置情報を変更し、
    前記描画オブジェクトを前記変更された記憶時ウンドウにおける表示位置と対応する位置関係となる指示時ウンドウにおける位置に重畳して表示すること
    を特徴とする請求項5又は6に記載の情報処理方法。
  8. 前記記憶時ウンドウ属性情報は、さらに、トップウンドウ内における文書のページ番号と文書の表示倍率とを有し、
    前記認識プロセスはさらに、
    前記記憶手段を参照して、前記ビットマップ画像からページ番号と表示倍率が含まれる領域を抽出し、
    該抽出した領域からページ番号と表示倍率とを認識し、
    該認識したページ番号と表示倍率とを表示属性として、前記描画オブジェクトと対応付けて前記記憶手段に記憶する
    ことを特徴とする請求項5又は6に記載の情報処理方法。
JP2002163050A 2002-06-04 2002-06-04 情報処理装置及び情報処理方法 Expired - Fee Related JP4021249B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002163050A JP4021249B2 (ja) 2002-06-04 2002-06-04 情報処理装置及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002163050A JP4021249B2 (ja) 2002-06-04 2002-06-04 情報処理装置及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2004013318A JP2004013318A (ja) 2004-01-15
JP4021249B2 true JP4021249B2 (ja) 2007-12-12

Family

ID=30431628

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002163050A Expired - Fee Related JP4021249B2 (ja) 2002-06-04 2002-06-04 情報処理装置及び情報処理方法

Country Status (1)

Country Link
JP (1) JP4021249B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100792284B1 (ko) 2004-03-10 2008-01-07 삼성전자주식회사 이미지장치의 드라이버 프로그램에 대한 유저 인터페이스설정방법 및 트랜스패런트 기능을 적용한 이미지 처리시스템
JP4659674B2 (ja) * 2006-05-19 2011-03-30 株式会社リコー 文書位置補正方法およびその方法をコンピュータに実行させるプログラム
JP4873369B2 (ja) * 2007-02-05 2012-02-08 住友電気工業株式会社 画像表示/処理用端末、システム、プログラム、及び、記憶媒体
JP2008234202A (ja) * 2007-03-19 2008-10-02 Ricoh Co Ltd 情報処理装置、情報処理方法、プログラムおよび記憶媒体
JP5009719B2 (ja) * 2007-08-23 2012-08-22 株式会社リコー スクロール表示装置、情報処理装置、情報処理方法、プログラムおよび記憶媒体
JP4626775B2 (ja) * 2007-10-16 2011-02-09 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
JP5228590B2 (ja) * 2008-04-10 2013-07-03 株式会社リコー 座標決定方法及び情報処理装置
JP2010102666A (ja) * 2008-10-27 2010-05-06 Business Search Technologies Corp テキストまたは画像の範囲指定方法および処理方法
JP5201025B2 (ja) * 2009-03-12 2013-06-05 株式会社リコー 文書表示装置、文書表示方法およびそのプログラムならびに記憶媒体
JP5906713B2 (ja) * 2011-12-19 2016-04-20 株式会社リコー 表示装置、表示方法、プログラム
WO2013183222A1 (ja) * 2012-06-06 2013-12-12 ソニー株式会社 情報処理装置、情報処理方法、および情報処理プログラム
JP5757966B2 (ja) * 2013-01-31 2015-08-05 シャープ株式会社 入出力装置
JP6476732B2 (ja) * 2014-10-21 2019-03-06 コニカミノルタ株式会社 文書処理装置、その制御方法、およびプログラム
WO2019092920A1 (ja) 2017-11-09 2019-05-16 株式会社TransRecog 付加情報重畳プログラム、付加情報重畳方法、及び付加情報重畳装置
JP2022145191A (ja) 2021-03-19 2022-10-03 株式会社リコー 表示装置、プログラム、表示方法、表示システム

Also Published As

Publication number Publication date
JP2004013318A (ja) 2004-01-15

Similar Documents

Publication Publication Date Title
US10572779B2 (en) Electronic information board apparatus, information processing method, and computer program product
US9335860B2 (en) Information processing apparatus and information processing system
JP4021249B2 (ja) 情報処理装置及び情報処理方法
JP5240653B2 (ja) 電子ペン・システム、端末装置及びそのプログラム
US9898243B2 (en) Information processing apparatus, program, information processing system, and information processing method
WO2016121401A1 (en) Information processing apparatus and program
US10013156B2 (en) Information processing apparatus, information processing method, and computer-readable recording medium
US9177405B2 (en) Image processing apparatus, computer program product, and image processing system
US20180082663A1 (en) Information processing apparatus, image displaying method, and non-transitory computer readable medium
US10725653B2 (en) Image processing device, image processing system, and image processing method
US10565299B2 (en) Electronic apparatus and display control method
JP4087203B2 (ja) 画面データ管理装置、画面データ管理システム、画面データ管理方法、および画面データ管理プログラム
US20020154120A1 (en) Annotation and application control of general purpose computer documents using annotation peripheral
JP2016200860A (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
US7280693B2 (en) Document information input apparatus, document information input method, document information input program and recording medium
JP5408513B2 (ja) 電子ペン・システム及びそのプログラム
JP3169604U (ja) 端末装置及び電子ペンシステム
JP5408511B2 (ja) 電子ペンシステム、コンピュータ装置及びそのプログラム
US8171082B2 (en) Information processing system, information processing method and computer readable medium
TWI828088B (zh) 用於視訊會議或視訊教學的電子裝置以及顯示方法
JP5899819B2 (ja) 学習システム及びプログラム
JP2013105376A (ja) 学習システム、コンピュータ装置及びプログラム
WO2016121403A1 (en) Information processing apparatus, image processing system, and program
JP5366034B2 (ja) 電子ペン・システム、コンピュータ装置及びそのプログラム
JP2014006579A (ja) 電子ペンシステム及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070313

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070803

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070926

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101005

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111005

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121005

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131005

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees