JP2004013318A - Method, apparatus, and program for information processing - Google Patents

Method, apparatus, and program for information processing Download PDF

Info

Publication number
JP2004013318A
JP2004013318A JP2002163050A JP2002163050A JP2004013318A JP 2004013318 A JP2004013318 A JP 2004013318A JP 2002163050 A JP2002163050 A JP 2002163050A JP 2002163050 A JP2002163050 A JP 2002163050A JP 2004013318 A JP2004013318 A JP 2004013318A
Authority
JP
Japan
Prior art keywords
display
data
document
displayed
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002163050A
Other languages
Japanese (ja)
Other versions
JP4021249B2 (en
Inventor
Susumu Fujioka
藤岡 進
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/en
Publication of JP2004013318A publication Critical patent/JP2004013318A/en
Application granted granted Critical
Publication of JP4021249B2 publication Critical patent/JP4021249B2/en
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)

Abstract

<P>PROBLEM TO BE SOLVED: To manage the position of an object formed on a transparent screen (record drawing position at of recording, transmit the drawing position at transmission, and determine a re-display position at re-display, and so on) without causing an execution process of an application concerned with contents to take an action. <P>SOLUTION: An information processing method of displaying the transparent screen where the object is drawn on a display over a content displayed on the display includes an extraction step of extracting the position of a fixed point on the content based upon a fixed point on the display from information for displaying the display position of the content on the display and a management step of managing the position of the object according to the position extracted at the extraction step. <P>COPYRIGHT: (C)2004,JPO

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に記載の発明(情報処理方法)は、ディスプレイ上に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理方法において、前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ディスプレイ上の固定点に対する位置を抽出する抽出ステップと、前記抽出ステップにより抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理ステップと、を備える。
【0015】
請求項1に記載の発明によれば、コンテンツの表示位置の表示データからコンテンツの(ディスプレイ上の固定点に対する)表示位置を抽出し、これに基づいてオブジェクトの位置を管理することができる。
【0016】
請求項2に記載の発明(情報処理方法)は、ディスプレイ上のウィンドウ内に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理方法において、前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ウィンドウ上の固定点に対する位置を抽出する抽出ステップと、前記抽出ステップにより抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理ステップと、を備える。
【0017】
請求項2に記載の発明によれば、コンテンツの表示位置の表示データからコンテンツの(ウィンドウ上の固定点に対する)表示位置を抽出し、これに基づいてオブジェクトの位置を管理することができる。
【0018】
請求項3に記載の発明(情報処理方法)は、請求項1又は2に記載の発明に関して、前記抽出ステップは、さらに、前記コンテンツの表示倍率、ページ番号、又はURLを前記ディスプレイ上に表示させるためのデータから、前記コンテンツの表示倍率、ページ番号、又はURLを抽出し、前記管理ステップは、さらに、前記抽出ステップにより抽出された表示倍率、ページ番号、又はURLに基づいて、前記オブジェクトの表示倍率、ページ番号、又はURLを管理する。
【0019】
請求項3に記載の発明によれば、さらに、コンテンツの表示倍率、ページ番号、又はURLの表示データからコンテンツの表示倍率、ページ番号、又はURLを抽出し、これに基づいてオブジェクトの表示倍率、ページ番号、又はURLを管理することができる。
【0020】
請求項4に記載の発明(情報処理方法)は、請求項1乃至3のいずれか1項に記載の発明に関して、前記管理ステップは、さらに、前記コンテンツを前記ディスプレイ上に表示させるためのデータに基づいて、前記オブジェクトの位置を管理する。
【0021】
請求項4に記載の発明によれば、さらに、コンテンツをディスプレイ上に表示させるためのデータに基づいて、オブジェクトの位置を管理することができる。
【0022】
請求項5に記載の発明(情報処理方法)は、請求項1乃至4のいずれか1項に記載の発明に関して、前記管理ステップは、前記コンテンツのページごとに、前記オブジェクトの位置を管理する。
【0023】
請求項5に記載の発明によれば、オブジェクトの位置の管理が容易になる。
【0024】
請求項6に記載の発明(情報処理方法)は、請求項2に記載の発明に関して、前記情報処理方法は、前記オブジェクトを前記ディスプレイ上の前記ウィンドウ外に表示する場合、その背景を白で表示する。
【0025】
請求項6に記載の発明によれば、オブジェクトを見やすくすることができる。
【0026】
請求項7に記載の発明(情報処理装置)は、ディスプレイ上に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理装置において、前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ディスプレイ上の固定点に対する位置を抽出する抽出手段と、前記抽出手段により抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理手段と、を備える。
【0027】
請求項7に記載の発明によれば、コンテンツの表示位置の表示データからコンテンツの(ディスプレイ上の固定点に対する)表示位置を抽出し、これに基づいてオブジェクトの位置を管理することができる。
【0028】
請求項8に記載の発明(情報処理装置)は、ディスプレイ上のウィンドウ内に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理装置において、前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ウィンドウ上の固定点に対する位置を抽出する抽出手段と、前記抽出手段により抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理手段と、を備える。
【0029】
請求項8に記載の発明によれば、コンテンツの表示位置の表示データからコンテンツの(ウィンドウ上の固定点に対する)表示位置を抽出し、これに基づいてオブジェクトの位置を管理することができる。
【0030】
請求項9に記載の発明(情報処理装置)は、請求項6又は7に記載の発明に関して、前記情報処理装置は、そのクライアントからオブジェクトを受信すると、そのオブジェクトが描画された透明スクリーンをディスプレイ上に表示するサーバである。
【0031】
請求項9に記載の発明によれば、請求項6又は7に記載の発明に係る情報処理装置を、そのクライアントから受信したオブジェクトの位置を管理するサーバとすることができる。
【0032】
請求項10に記載の発明(情報処理プログラム)は、請求項1乃至6のいずれか1項に記載の情報処理方法をコンピュータに実行させる。
【0033】
請求項10に記載の発明によれば、コンテンツの表示位置の表示データからコンテンツの(ディスプレイ上の固定点又はウィンドウ上の固定点に対する)表示位置を抽出し、これに基づいてオブジェクトの位置を管理することができる。
【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 2004013318
により求まる。例えば、文書ページが縦方向の中央から表示されている場合、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 2004013318
により求まる。
【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 2004013318
【0130】
【数4】
Figure 2004013318
の関係式が成立する。
【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 2004013318
【0142】
【数6】
Figure 2004013318
の関係式が成立する。
【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 電子ペン[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an information processing method, an information processing device, and an information processing program.
[0002]
[Prior art]
Examples of applications for displaying contents (documents, Web pages, etc.) on a display such as a computer include "document creation software" such as Word (trademark) manufactured by Microsoft Corporation and Acrobat Reader (trademark) manufactured by Adobe Systems. Known are "document management software" and "Web browsers" such as Netscape Communications (trademark) manufactured by Netscape Communications.
[0003]
When such content is displayed on a display, a technology for attaching an annotation object (annotation text, annotation image, or the like) for annotating an object (text, image, or the like) on the content to the content has been developed. Some are known. For example, a transparent screen is displayed on a display so as to be superimposed on the content, and an operator draws an annotation object on the transparent screen by a handwriting operation, a cut-and-paste operation, or the like on the touch panel, and displays the annotation object on the content. A “transparent screen method” in which an attached annotation object is used is known.
[0004]
When recording or transmitting such an annotation object, how to handle information on the position of the annotation object becomes a problem. This is because, when redisplaying the recorded / transmitted annotation object on the display, it is important to determine the position on the display where the annotation object is redisplayed.
[0005]
For example, regarding content that is scroll-displayed on the display, the display position of the content at the time of redisplaying the annotation object may be different from that at the time of recording / transmission of the annotation object by the amount of scrolling due to scrolling. Needs to move the display position of the annotation object at the time of redisplay from the time of recording / transmission by the amount of scrolling.
[0006]
Furthermore, with respect to the content displayed in the window on the display, the display position of the content at the time of redisplaying the annotation object differs from that at the time of recording / transmission of the annotation object by the movement of the window due to movement of the window. In such a case, it is necessary to move the display position of the annotation object at the time of redisplay from the time of recording / transmission by the movement of the window.
[0007]
JP-A-2001-117865 and JP-A-2001-134415 describe an annotation attaching method of a transparent screen method. However, there is no description on how to handle the information on the position of the annotation object.
[0008]
JP-A-10-124494 discloses that when an annotation image (annotation object) is displayed on the display at the same position as a certain text (object) on the content, the annotation image is recorded in association with the text. It describes how to attach annotations. With this method, when redisplaying the annotation image, even if the display position of the text on the content is different from the recording position due to editing of the content, the annotation image is redisplayed at the same display position as the associated text. can do.
[0009]
Japanese Patent Laid-Open No. 2000-250903 discloses that when an annotation image (annotation object) is displayed on a display so as to designate a certain text (object) on content, the annotation image is associated with the text. It describes how to attach notes to be recorded. With this method, when redisplaying the annotation image, even if the display position of the text on the content is different from the recording position due to editing of the content, the annotation image is redisplayed so as to specify the associated text. can do.
[0010]
[Problems to be solved by the invention]
In the conventional method, an annotation image (annotation object) is recorded in association with a text (object) on the content.
[0011]
Therefore, in the conventional method, the action of the application execution process (application process) relating to the content is caused to take place, and if the text data of the text on the content is not accessed, the position of the annotation image can be recorded. There was a disadvantage that it could not be done.
[0012]
Further, in the conventional method, since an action is required to be performed in an execution process of an application related to the content, a developer who develops software and hardware for realizing the annotation attaching method requires a program specification of the application related to the content. There is a drawback that it is necessary to understand the work. In particular, as the number of types of target applications increases, this trouble increases.
[0013]
Therefore, the present invention manages the position of an annotation object or other object formed on a transparent screen without causing an action in the execution process of the application relating to the content (at the time of recording: recording and transmitting the drawing position). Time: transmission of the drawing position, re-display: determination of the re-display position, etc.).
[0014]
[Means for Solving the Problems]
The invention (information processing method) according to claim 1 is an information processing method in which a transparent screen on which an object is drawn is displayed on the display so as to be superimposed on the content displayed on the display. Extracting the position of the fixed point on the content with respect to the fixed point on the display from the data for displaying the object on the display, and extracting the position of the object based on the position extracted by the extracting step. And a management step of managing the position.
[0015]
According to the first aspect of the present invention, it is possible to extract the display position (relative to a fixed point on the display) of the content from the display data of the display position of the content, and manage the position of the object based on the extracted position.
[0016]
The invention (information processing method) according to claim 2, wherein in the information processing method, a transparent screen on which an object is drawn is displayed on the display so as to overlap the content displayed in a window on the display. From the data for displaying the display position on the display, from the extraction step of extracting the position of the fixed point on the content with respect to the fixed point on the window, based on the position extracted by the extraction step, And a management step of managing the position of the object.
[0017]
According to the second aspect of the invention, the display position of the content (relative to the fixed point on the window) can be extracted from the display data of the display position of the content, and the position of the object can be managed based on the extracted position.
[0018]
In the invention (information processing method) according to a third aspect, in the invention according to the first or second aspect, the extracting step further causes a display magnification, a page number, or a URL of the content to be displayed on the display. A display magnification, a page number, or a URL of the content from the data for extracting the object, based on the display magnification, the page number, or the URL extracted in the extracting step. Manage the magnification, page number, or URL.
[0019]
According to the third aspect of the present invention, the display magnification, the page number, or the URL of the content is extracted from the display data of the content, the page number, or the URL, and the display magnification of the object is extracted based on the extracted information. A page number or URL can be managed.
[0020]
According to a fourth aspect of the present invention, in the information processing method according to any one of the first to third aspects, the management step further includes the step of adding data for displaying the content on the display. The position of the object is managed based on the position.
[0021]
According to the fourth aspect of the present invention, it is possible to further manage the position of the object based on data for displaying the content on the display.
[0022]
In the invention (information processing method) according to a fifth aspect, in the invention according to any one of the first to fourth aspects, the managing step manages a position of the object for each page of the content.
[0023]
According to the invention described in claim 5, management of the position of the object is facilitated.
[0024]
The invention (information processing method) according to claim 6 is the information processing method according to claim 2, wherein, when the object is displayed outside the window on the display, a background of the object is displayed in white. I do.
[0025]
According to the invention described in claim 6, the object can be easily viewed.
[0026]
The invention (information processing apparatus) according to claim 7, wherein in the information processing apparatus, a transparent screen on which an object is drawn is displayed on the display so as to be superimposed on the content displayed on the display. Extracting means for extracting a position of a fixed point on the content with respect to the fixed point on the display from data for displaying the object on the display, and extracting the position of the object based on the position extracted by the extracting means. Management means for managing the position.
[0027]
According to the invention described in claim 7, the display position of the content (relative to the fixed point on the display) can be extracted from the display data of the display position of the content, and the position of the object can be managed based on the extracted position.
[0028]
The invention (information processing apparatus) according to claim 8, wherein in the information processing apparatus, a transparent screen on which an object is drawn is displayed on the display so as to be superimposed on the content displayed in a window on the display. From the data for displaying the display position on the display, extracting means for extracting the position of the fixed point on the content with respect to the fixed point on the window, based on the position extracted by the extracting means, Management means for managing the position of the object.
[0029]
According to the invention described in claim 8, the display position (relative to a fixed point on the window) of the content can be extracted from the display data of the display position of the content, and the position of the object can be managed based on the extracted position.
[0030]
According to a ninth aspect of the present invention, in the information processing apparatus according to the sixth or seventh aspect, upon receiving an object from the client, the information processing apparatus displays a transparent screen on which the object is drawn on a display. Is the server to be displayed.
[0031]
According to the ninth aspect, the information processing apparatus according to the sixth or seventh aspect can be a server that manages the position of the object received from the client.
[0032]
An invention (information processing program) according to a tenth aspect causes a computer to execute the information processing method according to any one of the first to sixth aspects.
[0033]
According to the tenth aspect, the display position of the content (relative to the fixed point on the display or the fixed point on the window) is extracted from the display data of the display position of the content, and the position of the object is managed based on the extracted position. can do.
[0034]
BEST MODE FOR CARRYING OUT THE INVENTION
An embodiment of the present invention will be described.
[0035]
(Example of Embodiment of the Present Invention)
(1) Configuration of this embodiment
FIG. 1 shows an external configuration of a pen input device according to an embodiment of the present invention. The pen input device 1 includes an LCD (Liquid Crystal Display) 16 and a touch panel 18 attached to the LCD 16 in an overlapping manner. The touch pen 2 is used for a touch input operation on the touch panel 18.
[0036]
FIG. 2 shows an internal configuration of a pen input device and a connection configuration of attached devices according to an embodiment of the present invention. The pen input device 1 is used with a keyboard 3, a mouse 4, a PC card 5, and a detachable power cable 6 as appropriate in addition to the touch pen 2.
[0037]
The pen input device 1 of this embodiment includes a CPU (Central Processing Unit) 10, a clock 11, a main memory 12, a ROM (Read Only Memory) 13, an RTC (Real Time Clock) 14, an LCD display controller 15, an LCD 16, a touch panel controller. 17, touch panel 18, HD (Hard Disk) controller 19, hard disk 20, USB (Universal Serial Bus) controller 11, USB I / F ▼ 22, USB controller 223, USB I / F (2) It is composed of 24, a PC card controller 25, a card I / F 26, a system bus 27, a battery 28, a DC-DC converter 29, a charging circuit 30, and the like.
[0038]
The CPU 10 executes and processes a control processing program stored in the ROM 13, an OS (Operating System) read from the hard disk 20 to the main memory 12, and various application programs. The clock 11 is composed of a crystal oscillator and a frequency divider, and generates a clock for controlling the operation timing of the CPU 10 and the system bus 27. The main memory 12 is composed of a DRAM (Dynamic Random Access Memory), and is used for a work area of the CPU 10 and the like. A program for controlling the entire system is written in the ROM 13 in advance. The RTC 14 is a date clock and is backed up by a dedicated battery (not shown).
[0039]
The LCD display controller 15 performs D / A (Digital / Analog) conversion of display data such as characters and graphic data, and performs control for displaying these data on the LCD 16. The touch panel controller 17 detects a portion of the touch pen 2 touched by the pen tip on the touch panel 18, outputs position information thereof, measures the duration of contact on the touch panel 18, and measures the measured time over a predetermined value. In this case, the contact release is monitored, and when the contact release is detected, pen-up notification data is output. The HD controller 19 controls writing data to the hard disk 20 and reading data from the hard disk 20.
[0040]
The USB controller {circle around (1)} 21 and the USB controller {circle around (2)} 23 execute and control data transfer conforming to the USB standard. The PC card controller 25 executes and controls data transfer with the PC card 5 compliant with the PCMCIA (Personal Computer Memory Card International Association) standard attached to the card I / F 26. The PC card 5 is a card conforming to the PCMCIA standard. For example, a wireless LAN card conforming to the IEEE 802.11 standard is used.
[0041]
The battery 28 is a rechargeable lithium ion battery, for example. The DC-DC converter 29 converts the power supplied from the power cable 6 or the battery 28 into a predetermined voltage and supplies the voltage to the inside of the pen input device 1. Switch to the power supply from 28. The charging circuit 30 charges the battery 28 when power is supplied from the power cable 6. The power cable 6 is integrated with the AC adapter 31, and the AC adapter 31 converts an AC power supply into a DC of a predetermined voltage by a built-in AC-DC converter.
[0042]
Here, “touch input coordinates” indicating a position where a touch input is performed on the touch panel 18 and “display coordinates” indicating a position displayed on the LCD 16 will be described.
[0043]
When the touch pen 2 touches the touch panel 18, the touch panel controller 17 detects this touch and causes the CPU 10 to generate an interrupt. The CPU 10 obtains coordinate values from the touch panel controller 17 by this interrupt. The touch input coordinates are expressed with the upper left corner of the display area of the LCD 16 as the origin, the right direction as the positive direction of the X axis, and the downward direction as the positive direction of the Y axis.
[0044]
The display coordinates of the display object displayed on the LCD 16 are expressed in pixel units with the pixel at the upper left corner of the display area of the LCD 16 as the origin, the right direction being the positive direction of the X axis, and the downward direction being the positive direction of the Y axis. Expressed by That is, (display coordinates) = (the number of pixels in the X-axis direction from the origin, the number of pixels in the Y-axis direction from the origin).
[0045]
For the sake of simplicity, it is assumed that the coordinate unit of the touch input coordinates is also equal to the pixel interval of the LCD 16. That is, it is assumed that the coordinate axis / coordinate unit of the touch input coordinate and the coordinate axis / coordinate unit of the display coordinate coincide.
[0046]
Note that calibration is performed to set the upper left corner of the display area of the LCD 16 as the origin of the touch input coordinates. The calibration is an operation for associating the display coordinates with the touch input coordinates, and is a technique that has been widely known in the related art.
[0047]
(2) Operation of this embodiment
In the present embodiment, the user can display a document on the LCD 16 using a predetermined application, and use the keyboard 3 and the mouse 4 to write characters and draw images on the document. This document file can be stored on the hard disk 20.
[0048]
In the present embodiment, the user can further display a document on the LCD 16 and display a transparent screen on the document so as to write a character or draw an image on the transparent screen. The transparent screen may be smaller or larger than the document. Examples of the above-described character / image drawing method include a method of capturing an image handwritten on the touch panel 18, a method of pasting an image displayed on the LCD 16, a method of capturing a character input to the keyboard 3, and the like. .
[0049]
(2.1) Pasting the displayed image
First, a case where an image (bitmap data) displayed on the LCD 16 is pasted on a transparent screen will be described. FIG. 3 shows a state in which a certain application A53 displays a document A54 and another application B55 displays a document B56 on a desktop screen 57. For example, application A is Acrobat Reader (trademark) manufactured by Adobe Systems, and application B is Netscape Communicator (trademark) manufactured by Netscape Communications. In FIG. 3, an area surrounded by a dotted line indicates a freeze area 50 in which display data can be frozen (frozen), and a window of each application is displayed in this area.
[0050]
Specifically, the bit of the photograph A in the display document B of the application B is set at an arbitrary position on a virtual transparent screen (hereinafter, simply referred to as a transparent screen) superimposed on the display document A of the application A. A method for copying map data will be described.
[0051]
First, when the user touches the “freeze” button 40 displayed on the screen with the touch pen 2, the display data in the freeze area 50 is frozen. That is, the window of the application A or the application B cannot be operated. Note that the "freeze" button 40 is displayed in reverse with the freeze of the display data.
[0052]
Secondly, when the rectangular area designation icon 41 displayed on the screen is touched, a rectangular area setting mode of the display data is set. In this mode, the point at which the touch pen 2 touches the touch panel 18 (pen down) is the upper left corner of the rectangle, and the point released from the touch panel 18 (pen up) is the lower right corner of the rectangle. Here, when the user designates an area (rectangular area) surrounding the picture A, the bitmap data of this area in the display screen buffer in the LCD display controller 15 is copied to the main memory 12.
[0053]
Third, when the user touches the "freeze" button 40, the freeze of the display data in the freeze area 50 is released. When the freeze of the display data is released, the "freeze" button 40 returns to the normal display.
[0054]
Fourthly, after the user closes the window of the application B, when the user presses the “switch” button 42, the transparent screen that is the same area as the freeze area 50 described above as the superimposable drawing area 51 is superimposed. Then, a superimposition drawing mode is set. At this time, as shown in FIG. 4, the display of the "freeze" button 40 and the rectangular area designation icon 41 is erased from the screen, and instead, the "save" button 43, the "read" button 44, and the "handwriting" button 45 are displayed on the screen. Display above.
[0055]
Fifth, when the user touches an arbitrary position in the superimposed drawing area 51, the bitmap data of the photo A copied to the main memory 12 is designated in the display screen buffer in the LCD display controller 15. The photo A is displayed at the position designated by the user. An example of the display screen at this time is shown in FIG.
[0056]
FIG. 5 shows the display data stored in the display screen buffer at this time, expressed in a hierarchical manner on a logical plane. As shown in FIG. 5, the display data is layered on a desktop screen 57 (having the size of the entire display screen of the LCD 16), a document A54, a window 58 of the application A53, and a transparent screen 59. The document A54 shows only a portion that can be displayed in the window 58 of the application A53. Further, the transparent screen 59 often has an area larger than the display screen area of the LCD 16 as described later.
[0057]
Before the bitmap data of the photograph A is copied to the display screen buffer in the LCD display controller 15, the bitmap data in the copied area in the display screen buffer is copied (evacuated) to the main memory 12. Then, when the transparent screen is removed, the saved bitmap data is copied to the original position in the display screen buffer, and the display screen is returned to the state before the transparent screen was superimposed.
[0058]
The management of the data on the transparent screen is performed by a superposition drawing process, and the execution of this process is performed by the CPU 10. In the superimposition drawing process, the position of the bitmap data of the rectangular area on the transparent screen and the position of the handwritten drawing data (superimposition data) described later are displayed in the top window (the window superimposed on the top) at that time. Manage based on the display position of. The management will be described later.
[0059]
(2.2) Importing handwritten images
Next, a case where an image (handwritten drawing data) handwritten on the touch panel 18 is captured on a transparent screen will be described. When the user presses the "switch" button 42 while the application A is displaying the document A on the LCD 16, the transparent screen is superimposed on the same area (transparent screen area 51) as shown in FIG. When the user presses the “handwriting” button 45, the “superimposition drawing mode” is set as shown in FIG. At this time, the "handwriting" button 45 is displayed in reverse, and a "line type" button 46 for selecting a line type, a "rectangle" button 47 for drawing a rectangle, and a "rectangle" button for deleting a drawing line. The "Eraser" button 48 is displayed.
[0060]
The superimposition drawing process determines whether or not each coordinate value obtained from the touch panel controller 17 is in the transparent screen area 51 in the superimposition handwriting drawing mode, and two consecutive coordinate values are in this area and the pen-down state. In the case of (period from pen down to pen up), a drawing command for connecting the coordinate values with a straight line and displaying on the LCD 16 is issued to the LCD display controller 15. The LCD display controller 15 performs drawing according to the drawing command, and a handwritten drawing line is displayed on the LCD 16.
[0061]
In the superimposition drawing process, a coordinate sequence from pen down to pen up obtained from the touch panel controller 17 is stored in the main memory 12 as stroke data. The position of the stroke data is stored based on the display position of the document at that time. The storage (management) will be described later.
[0062]
Note that instead of drawing by handwriting by touching the touch pen 2 with the touch panel 18, it is also possible to draw by hand by pressing the left button of the mouse 4. In this case, in the superimposition drawing process, pen down is detected by receiving the event of the left button ON of the mouse 4, and pen up is detected by receiving the event of the left button OFF of the mouse 4.
[0063]
(3) Handling of position in this embodiment
(3.1) Outline
A method for storing bitmap data and handwritten drawing data (superimposed data) of a rectangular area superimposed on a document according to the present embodiment will be described.
[0064]
In this embodiment, when the superimposition data is drawn on the transparent screen, the superimposition data is displayed as the application name of the top window, the display position of the top window, the file name of the document displayed in the top window, the page number of the document, The information is stored in association with the scroll position of the document, the display magnification of the document, and the like. This is because, when redisplaying the superimposed data, even if the display position of the document has changed, the superimposed data is re-displayed on the screen with the attachment position of the superimposed data to the document being the same as at the time of recording.
[0065]
Here, the application name, the display position of the window, and the size of the window are stored in the main memory 12 as window attributes by the window manager when the window is created, when the window is moved, or when the size of the window is changed. Refer to this information. The window manager displays a list of executable applications on a desktop screen using a pull-down menu, and also performs a process of starting the selected application. Further, when an icon for starting an application is displayed and registered, the processing for starting the application is also performed when the icon is selected.
[0066]
The window manager displays the file name of the document received from the application in the title bar attached to the window of the application. The window manager also stores the file name of the document in the main memory 12 as a window attribute. I do.
[0067]
(3.2) Significance
In the present embodiment, as described above, the superimposition data is stored in association with the scroll position of the document. The significance of managing the position of the image on the transparent screen based on the display position of the document as described above will be conceptually described.
[0068]
FIG. 7A shows a screen, a document on the screen, a transparent screen on the document, and an image on the transparent screen.
[0069]
Here, the position where the document is displayed on the screen (the display position of the document) is represented by the position of the “fixed point S on the document” with respect to the “fixed point D on the screen”. For example, as shown in FIG. 7A, the point S is represented by coordinates (Sx, Sy) with respect to the point D. Here, the points S and D are respectively set at the upper left corners of the document and the screen, but are not limited thereto. If the point S is a point whose position is fixed with respect to the document, both points taken inside the document and outside the document correspond to “fixed points on the document”. The same applies to point D.
[0070]
Similarly, the position where the image is displayed on the screen (the display position of the image) is represented by the position of the “fixed point I on the image” with respect to the “fixed point D on the screen”. For example, as shown in FIG. 7A, the point I is represented by coordinates (Ix, Iy) with respect to the point D.
[0071]
The position where the image is attached to the document (the position where the image is attached) is represented by the position of “fixed point I on image” with respect to “fixed point S on document”. For example, as shown in FIG. 7A, the coordinates of the point I with respect to the point S are represented by (X, Y) = (Ix-Sx, Iy-Sy). When the position of the transparent screen relative to the document is fixed (for example, the “upper left corner of the transparent screen” is always positioned above the “upper left corner of the document”), The position where the image is attached (the position where the image is attached) is rephrased as the position where the image is drawn on the transparent screen (the image drawing position).
[0072]
Now, when the display position of the document and the display position of the image are (Sx, Sy) and (Ix, Iy), respectively, as shown in FIG. 7A, the image is recorded, and as shown in FIG. In order to redisplay the image when the position is (Sx ', Sy'), it is assumed that the image redisplay position (Ix ', Iy') is determined.
[0073]
From the figure, it can be seen that the document at the time of recording (FIG. 7A) is displayed at the top on the screen, while the document at the time of redisplay (FIG. 7B) is displayed at the bottom on the screen. Such a change in the display position of the document occurs, for example, by scrolling the document or moving the window.
[0074]
Here, in the present embodiment, the attached position (Ix′−Sx ′, Iy′−Sy ′) of the image at the time of redisplay is set to the attached position (Ix−Sx, Iy−Sy) of the image at the time of recording. X, Y), so that “Ix′−Sx ′ = Ix−Sx = X” and “Iy′−Sy ′ = Iy−Sy = Y” hold. Therefore, the display position (Ix ′, Iy ′) of the image at the time of redisplay is determined as (Ix−Sx + Sx ′, Iy−Sy + Sy ′) or (X + Sx ′, Y + Sy ′).
[0075]
From this, it is conceivable to manage the position of the image on the transparent screen based on the display position of the document as in the following example.
[0076]
At the time of recording, the display position (Sx, Sy) of the document is obtained by a predetermined method (such as “position extraction” described later), and the display position (Sx, Sy) of the obtained document and the display position (Ix) of the image are obtained. , Iy). Alternatively, the attachment position (X, Y) of the image is derived from the display position (Sx, Sy) of the acquired document and the display position (Ix, Iy) of the image, and the attachment position (X, Y) of the derived image. Record
[0077]
Even at the time of redisplay, the display position (Sx ', Sy') of the document is obtained by a predetermined method (such as "position extraction" described later). Then, based on the recorded (Sx, Sy) and (Ix, Iy) and the obtained (Sx ′, Sy ′), the display position (Ix ′, Iy ′) of the image at the time of redisplay is determined. . Alternatively, the display position (Ix ′, Iy ′) of the image at the time of redisplay is determined based on the recorded (X, Y) and the obtained (Sx ′, Sy ′).
[0078]
As described above, the display position / attachment position of the image is recorded based on the display position (Sx, Sy) of the document, and the redisplay position of the image is determined based on the display position (Sx ′, Sy ′) of the document. Managing the position of the image on the transparent screen based on the display position of the document makes it possible to make the attachment position of the image at the time of redisplay the same as the attachment position of the image at the time of recording It is significant in that.
[0079]
When a document is displayed in a window, the above “screen” may be replaced with “window”. This means that the display position of the document / image is not the display position viewed from the fixed point on the screen, but the display position viewed from the fixed point on the window. Regarding both display positions, conversion from one to the other can be easily performed if the position of the fixed point on the window with respect to the fixed point on the screen (the display position of the window (as viewed from the fixed point on the screen)) is known. Can be calculated. In this embodiment, for this reason, as described above, the superimposition data is stored in association with the display position of the window.
[0080]
In this embodiment, as described above, the superimposition data is further stored in association with the display attributes of the document (the page number of the document, the display magnification of the document, and the like).
[0081]
Managing the position of the image on the transparent screen based on the display magnification of the document as described above is performed, for example, when the display magnification of the document at the time of redisplay is different from the display magnification of the document at the time of recording. However, this is significant in that it is possible to make the attachment position of the image at the time of redisplay the same as the attachment position of the image at the time of recording. For example, when the display magnification changes from 100% to 50%, 1/2 of the value of the image drawing position at the time of recording is set as the value of the image drawing position at the time of redisplay.
[0082]
Further, managing the position of the image on the transparent screen based on the page number of the document is significant, for example, in that the position of the image on the transparent screen can be managed for each page.
[0083]
In the present embodiment, the extracting unit “extracts” the display position and the like of the document from the display data such as the display position of the document, and the management unit “manages” the position and the like of the image based on this. The extraction and management will be described later in detail.
[0084]
(4) Extraction of document display position and the like in this embodiment
(4.1) Extraction of document display attributes
In this embodiment, a method for obtaining the page number of the document and the display magnification of the document without using the application process for displaying the document will be described. These are extracted from data for displaying the page number of the document and the display magnification of the document on the LCD 16 (referred to as “display data”), that is, data stored in a display screen buffer in the LCD display controller 15. Is done.
[0085]
The page number and display magnification of the document are displayed at different positions depending on the application. For example, an example in which Acrobat Systems (Adobe Reader) (trademark) is started on Windows (registered trademark), which is an OS manufactured by Microsoft Corporation, and a document is displayed in a window of Acrobat Reader (trademark), As shown in FIG.
[0086]
In this case, the page number and the display magnification of the document are displayed at a predetermined position in the lower left of the window. Since these display data are present as bitmap data in a display screen buffer in the LCD display controller 15, a number is identified from the bitmap data as follows (this is called a "recognition function"). .
[0087]
The recognition process (executed by the CPU 10) cuts out an area including the page number of the document from the bitmap data in the display screen buffer in the LCD display controller 15 and copies it to the main memory 12 (about a method of cutting out the area). Will be described later). Since the cut-out bitmap data is in RGB format for color display, it is converted into luminance data (Y) using a conversion formula “Y = 0.31R + 0.59G + 0.11B”. Value. This is an equation for converting an RGB signal into a luminance signal Y in an NTSC (National Television System Committee) television system.
[0088]
Then, character recognition is performed on the binarized bitmap data, and the character is output as text data. In the example of FIG. 8, "2/5" is output as the text data of the page number.
[0089]
In the recognition process, similar processing is performed for the display magnification displayed on the LCD 16, and in the example of FIG. 8, "100%" is output as text data of the display magnification.
[0090]
The recognition process passes the text data to the superimposition rendering process, and the superimposition rendering process determines from the text data that the current page number is “second page” and the display magnification is “100%”.
[0091]
The page number and the display position and display area of the display magnification in the window of the application displaying the document are stored in the hard disk 20 in advance as a system file in association with the application.
[0092]
The display position and display area of the page number and the display magnification are specified by enclosing the display data with a rectangle using the touch pen 2 in the system setting mode of the apparatus, for example. The coordinates of the two diagonal points of this rectangle are represented by relative coordinates from the coordinates of the lower left corner of the application window.
[0093]
FIG. 9 shows points A1 and A2 indicating the display area of the display magnification, points B1 and B2 indicating the display area of the page number, and point W at the lower left corner of the application window. The coordinate values of point A1, point A2, point B1, and point B2 represented by relative coordinates from point W are stored in hard disk 20 as a system file in association with the application.
[0094]
When the window manager generates the window, the coordinates of the point A1, point A2, point B1, and point B2 (relative coordinates from the point W) are used as a window attribute together with information such as the application name, the size of the window, and the display position. It is stored in the memory 12.
[0095]
The superimposition drawing process refers to the window attributes stored in the main memory 12 when the mode is switched to the superimposition drawing mode, and the LCD 16 of the points A1, A2, B1, and B2 indicating the area of the display magnification and the page number. The absolute coordinates for the entire display area are obtained.
[0096]
The window attribute includes the coordinates of the upper left corner of the window, which is the display position of the window, the horizontal size (the number of pixels in the X-axis direction), and the vertical size (the number of pixels in the Y-axis direction). Since it is included, the relative coordinates are added from the coordinates (0, the vertical size of the window) of the lower left corner (point W) of the window, and the points A1, A2, B1, and B2 are added. The absolute coordinates are obtained.
[0097]
In the superimposition drawing process, text data of the display magnification is obtained by passing the absolute coordinates of points A1 and A2 to the recognition process, and the text of the page number is passed by passing the absolute coordinates of points B1 and B2. Data can be obtained.
[0098]
(4.2) Extraction of display position of document
In the present embodiment, a method for obtaining a display position of a scrolled document without using an application process for displaying the document will be described. The display position of the scrolled document is the "vertical scroll bar" displayed along the right side of the document display window, the "horizontal scroll bar" displayed along the lower side of the document display window, and the scroll bar. Is extracted from data (“display data”) for displaying the “scroll box” displayed on the LCD 16.
[0099]
First, a method of specifying the display position in the vertical direction of the document will be described.
[0100]
The position of the scroll box (see FIG. 8) displayed in the vertical scroll bar is associated with the vertical display position of the document by the application displaying the document in that window. Therefore, the vertical display position of the document can be specified from the position of the scroll box.
[0101]
The position of the scroll box is specified by using data stored in a display screen buffer in the LCD display controller 15. A rectangular area including the entire vertical scroll bar is cut out from the bitmap data stored in the display screen buffer in the LCD display controller 15, and the position of the scroll box is specified from the data of the rectangular area.
[0102]
FIG. 10 shows a vertical scroll bar and a right end portion of a window including the scroll bar. The number of display pixels n between the upper side of the vertical scroll bar and the upper side of the window including the scroll bar, and the number m of display pixels between the lower side of the vertical scroll bar and the lower side of the window including the scroll bar are represented by Is constant irrespective of the size of the window, a rectangular area including the entire vertical scroll bar can be cut out from the information on the size of the window and the display position.
[0103]
Here, a method of specifying the values of the display pixel number n and the display pixel number m will be described.
[0104]
In the system setting mode of the apparatus, when one of the setting items “obtain vertical scroll bar position” is selected by the user, a list of application names registered in advance in the system file is displayed. To choose one.
[0105]
Next, the user specifies a rectangular area including the vertical scroll bar and the upper right and lower right corners of the window. When the user specifies the rectangular area, the rectangular area is stored in the display screen buffer in the LCD display controller 15 corresponding to the rectangular area. The copied bitmap data is copied to the main memory 12. FIG. 11 shows an example of designation of the rectangular area by the user.
[0106]
Then, using a pattern recognition process on the bitmap data, the number of display pixels n between the upper side of the vertical scroll bar and the upper side of the window and the number of display pixels between the lower side of the vertical scroll bar and the lower side of the window are determined. Examine m.
[0107]
The pattern recognition process specifies the rectangle of the vertical scroll bar using the outer frame of the window and the mark of the scroll button as reference information, and sets the number of display pixels n between the upper side of the vertical scroll bar and the upper side of the window, The number m of display pixels between the lower side of the bar and the lower side of the window is specified.
[0108]
In order to improve the recognition accuracy of the pattern recognition process, a hard copy of the display screen of the LCD 16 including the display data of the rectangular area shown in FIG. 11 was obtained, and this hard copy was obtained by reading with a scanner. Bitmap data may be used as pattern reference data.
[0109]
In the hard copy of the display screen of the LCD 16, the bitmap data stored in the display screen buffer in the LCD display controller 15 is copied to the PC card 5, and the bitmap data stored in the PC card 5 is copied using a personal computer. And printing on a printer.
[0110]
Thus, the display position of the vertical scroll bar in the window is specified. The obtained values of the display pixel number n and the display pixel number m are stored in the main memory 12 as window attributes.
[0111]
Next, a pattern recognition process is used to locate the scroll box within the vertical scroll bar. Since the pattern recognition process has already specified the vertical scroll bar, it recognizes the scroll box from this. Then, the number of display pixels k between the upper side of the vertical scroll bar and the upper side of the scroll box is checked to identify the position of the scroll box. The display position in the vertical direction of the document is specified by the number k of display pixels between the upper side of the vertical scroll bar indicating the position of the scroll box and the upper side of the scroll box.
[0112]
Note that the operation for specifying the values of the display pixel number n and the display pixel number m is performed with a default window size. When the window size is reduced in the vertical direction, the display position of the current document in the vertical direction is determined by changing the number of display pixels “k” between the upper side of the vertical scroll bar and the upper side of the scroll box to “k × reduction ratio”. (%) / 100 ”, and is specified by the replaced display pixel number k.
[0113]
The obtained value of the display pixel number k is stored in the main memory 12 as a window attribute.
[0114]
Since the number of display pixels k specifies the display position from the top of the document, next, the relative position from the top of the currently displayed document page (position ratio from the top of one page: expressed in%) To identify. Assuming that the number of display pixels in the vertical direction of the vertical scroll bar is L, the number of pages of the displayed document is T, and the currently displayed page number is P, the relative position in the vertical direction from the top of the document page to the top of the current display position. The position RelPos (v) [%] is
[0115]
(Equation 1)
Figure 2004013318
Is determined by For example, when the document page is displayed from the center in the vertical direction, RelPos (v) = 50 [%].
[0116]
Next, a method of specifying the display position in the horizontal direction of the document will be described.
[0117]
The horizontal display position of the document is specified by the display position of the scroll box in the horizontal scroll bar. The display position of the horizontal scroll bar and the position of the scroll box in the horizontal scroll bar are determined by using the data stored in the display screen buffer in the LCD display controller 15 by using the display position of the vertical scroll bar and the position in the vertical scroll bar. The position of the scroll box is specified in the same manner as in the above-described processing. FIG. 12 shows the number of display pixels j between the left side of the horizontal scroll bar and the left side of the scroll box for specifying the horizontal display position of the document.
[0118]
When the window size is reduced from the default size in the horizontal direction, the current horizontal display position of the document is determined by changing the number of display pixels “j” between the left side of the horizontal scroll bar and the left side of the scroll box to “ j × reduction ratio (%) / 100 ”, and is specified by the replaced display pixel number j.
[0119]
The obtained value of the display pixel number j is stored in the main memory 12 as a window attribute.
[0120]
The display position from the left end of the document page is specified using the display pixel number j. Assuming that the number of display pixels in the horizontal direction of the horizontal scroll bar is W, the horizontal relative position RelPos (h) [%] from the left end of the document page to the left end of the current display position is
[0121]
(Equation 2)
Figure 2004013318
Is determined by
[0122]
In this manner, the present embodiment can specify the display position of the scrolled document without using the application process displaying the document.
[0123]
(5) Management of image position and the like in the present embodiment
In the present embodiment, a method for managing the position of an image based on the relative positions RelPos (v) and RelPos (h) determined as described above will be described.
[0124]
First, the relationship between a document page and a display area in a window, and the relationship between a document page and a transparent screen will be described with reference to FIG. In FIG. 13, the upper region (shown by oblique lines) of the document page is displayed in the window of the display screen of the LCD 16. The transparent screen has an area larger than the display screen area of the LCD 16 so that an image can be attached to the outside of the document. In the figure, an area surrounded by a dotted line indicates a display screen area of the LCD 16.
[0125]
In the present embodiment, the position of the image on the transparent screen is represented by coordinates with the origin at the upper left corner of the document page. This is referred to as “absolute coordinates for a transparent screen” for one document page. This corresponds to the position of the fixed point on the image with respect to the fixed point on the document (the position where the image is attached) when associated with the contents described in “3.2 Significance”. The coordinate interval (minimum unit of coordinates) of the absolute coordinates for the transparent screen is set equal to the display pixel interval of the LCD 16.
[0126]
(5.1) When the displayed image is pasted
First, as an example of superimposing bitmap data of a rectangular area on a display document, a case where a photograph A is superimposed on a document A displayed by an application A as shown in FIG. 4 will be described.
[0127]
FIG. 14 shows the entire area of the displayed document page, the display area of the document, the display screen area of the LCD 16, and the area of the transparent screen for the display screen contents of FIG. In the document display area, data from the top of the document page is displayed. As shown, the display coordinates of the transparent screen absolute coordinate origin are (a, b).
[0128]
The position of the photograph A can be specified by a point T in the upper left corner (“fixed point on the image” in “3.2 Significance”). Assuming that the absolute coordinates of the point T for the transparent screen are (Xs, Ys) and the display coordinates are (Xd, Yd).
[0129]
[Equation 3]
Figure 2004013318
[0130]
(Equation 4)
Figure 2004013318
Is established.
[0131]
If the absolute coordinates (Xs, Ys) are recorded, even if the origin (a, b) of the absolute coordinates is changed by scrolling the document at the time of redisplay, the relational expressions (3) and (4) are used. The display coordinates of the photograph A can be determined.
[0132]
In this way, based on RelPos (v) and RelPos (h), it is possible to determine the redisplay position of the photo A. However, due to the accuracy of the values of RelPos (v) and RelPos (h), etc. In the redisplay position, there is a case where a shift occurs in pixel units.
[0133]
Therefore, in the present embodiment, in order to associate the image on the transparent screen with a rectangular document data area (an area where certain document data (display data related to a document) is displayed on the LCD 16), the position of the image on the transparent screen is set. Is also represented by coordinates with the origin at the upper left corner of the document data area. This will be referred to as “transparent screen relative coordinates” with respect to the neighboring document data area.
[0134]
Here, the positional relationship between the photograph A in FIG. 14 and its neighboring document data area is determined. FIG. 15 shows a document data area corresponding to photograph A. In order to associate the photograph A with the document data area adjacent thereto, the relative coordinates for the transparent screen of the point T with respect to the point U at the upper left corner of the document data area are obtained.
[0135]
Then, the above two kinds of coordinates (absolute coordinates for the transparent screen and relative coordinates for the transparent screen) at the point T and “bitmap data” of the document data area near the photograph A, “vertical and horizontal directions of the area” The “number of pixels” is stored in the main memory 12 as position information data of the photograph A.
[0136]
Thereafter, when the “Save” button 43 is touched, the superimposition drawing process converts the display data (bitmap data) of the photo A into “absolute coordinates for the transparent screen”, “relative coordinates for the transparent screen”, and the neighborhood of the photo A. The data is written to the hard disk 20 in association with the “bitmap data” of the document data area, “the number of pixels in the vertical direction and the number of pixels in the horizontal direction of the area”, and further, in association with the page number of the current document, and stored. At this time, if the display data is stored for each page, the position of the display data can be easily managed.
[0137]
FIG. 16 shows an operation flow in the above-described superimposition drawing mode in the superimposition drawing process. In the superimposition mode, the application name, the size and display position of the application window, and the file name of the document stored as the window attributes are referred to (S1). The display position and the display area of the display magnification are obtained (S2), and the page number and the text data of the display magnification are obtained from the display data of the screen by using the recognition process (S3). Is specified, and the display position of the document data is specified (S4). Next, when the bitmap data is superimposed, the absolute coordinates for the transparent screen at the point T at the upper left corner of the superimposed bitmap data area and the relative coordinates with respect to the neighboring document data area are obtained (S5). The coordinates of the type, the display data of the neighboring document data area, and the number of pixels in the vertical and horizontal directions of the area are stored as position information of the superimposed bitmap (S6). When the bitmap data is further superimposed, the processing of S5 and S6 is executed again, and when the save button is pressed, the superimposed bitmap data is displayed in two types of coordinates at the point T and in the neighboring document data area. The display data and the number of pixels in the vertical direction and the number of pixels in the horizontal direction of the area are stored in the hard disk 20 in association with the current display page (S7), and the process ends.
[0138]
(5.2) When handwritten drawing data is imported
Next, FIG. 17 shows a display example of the LCD 16 when a handwritten drawing is performed on a transparent screen while a document is displayed. In FIG. 17, in the transparent screen area 51 (an area in which handwriting can be drawn), the characters “repair” and “OK” and the figures “arrow”, “circle circle”, and “bracket” are handwritten as comments on the document. Have been.
[0139]
FIG. 18 shows the area of the entire displayed document page, the display area of the document, the display screen area of the LCD 16, and the area of the transparent screen for the display screen contents of FIG. In the document display area, data from the top of the document page is displayed. As shown in the figure, the display coordinates of the transparent screen absolute coordinate origin are (c, d).
[0140]
The position of the handwritten image can be specified by a fixed point on the image, as in the case of a photograph. Assuming that the absolute coordinates of the fixed point for the transparent screen are (Xs, Ys) and the display coordinates are (Xd, Yd)
[0141]
(Equation 5)
Figure 2004013318
[0142]
(Equation 6)
Figure 2004013318
Is established.
[0143]
If the absolute coordinates (Xs, Ys) are recorded, even if the origin of the absolute coordinates (c, d) is changed by scrolling the document at the time of redisplay, the relational expressions (5) and (6) are used. The display coordinates of the image can be determined.
[0144]
In the superimposition drawing process, each coordinate value (same as the display coordinates) obtained from the touch panel controller 17 by handwriting input is passed to the LCD display controller 15 as it is, but the relational expressions (5) and (6) are used. The coordinates are also converted into absolute coordinates, and the converted coordinate data is stored in the main memory 12.
[0145]
Further, in the present embodiment, the handwritten data converted into the transparent screen absolute coordinate values are grouped based on their positional relationship, and each group is treated as one object. FIG. 19 shows an example in which the handwritten data shown in FIG. 18 is converted into an object. The character “OK” and the figure “parenthesis” are objectized as “Object 1” indicated by a dotted line, and the character “Refix” is formed as an object as “Object 2” indicated by a dotted line.
[0146]
FIG. 19 also shows a display area (described later) of the document data associated with the handwritten drawing object. “Object 1” is associated with the “document data area for handwritten drawing object 1”, which is a nearby document data area, and “Object 2” is associated with “document data area for handwritten drawing object 2”, which is a nearby document data area. ing.
[0147]
The grouping (object conversion) of handwritten data is determined from the positional relationship of handwritten stroke data (coordinate sequence from pen down to pen up). That is, coordinate data in each stroke that minimizes the distance between the two strokes is found, and it is checked whether the distance between these coordinates is equal to or less than a predetermined value. If the distance is equal to or less than a predetermined value, the strokes are grouped.
[0148]
Now, as described above, based on RelPos (v) and RelPos (h), the display position of the handwritten drawing object can be determined. However, as in the case of a photograph, RelPos (v) and RelPos (h) are used. Due to the accuracy or the like, the redisplay position may be shifted in pixel units.
[0149]
In order to associate the image on the transparent screen with the document data area (rectangular area) as in the case of a photograph, the position of the image on the transparent screen is also represented by coordinates with the origin at the upper left corner of the document data area. . This is called “relative coordinates for a transparent screen” with respect to a neighboring document data area, as described in the description of a photograph.
[0150]
In the displayed document data, document data (bitmap data) included in a rectangular area of a predetermined size including a part or all of the handwritten drawing object is associated with the handwritten drawing object in the main memory 12. Remember. Further, together with the document data (bitmap data), "the number of pixels in the vertical direction and the number of pixels in the horizontal direction of the rectangular area" and "the relative coordinates for the transparent screen from the upper left corner of the rectangular area" are also stored. . Note that, for a handwritten drawing object that is not in the document display area, such as the object 3 in FIG. Is associated with the document data area next to.
[0151]
The relationship between the entire document page area, the document display area, the display screen area of the LCD 16, and the transparent screen area when the document on which the handwritten drawing data shown in FIGS. As shown in FIG.
[0152]
In FIG. 21, a part of the handwritten drawing data shown in FIG. 17 (handwritten drawing object 2 in FIG. 19) is displayed. In the example shown in FIG. 21, the display of handwritten drawing data existing above the document display area is not performed.
[0153]
Since the scrolling operation of the document is performed in a state in which the superimposed handwriting drawing mode is off, when the superimposed handwriting drawing mode is turned on, the superimposition drawing process calculates Expression (1) to obtain the current display position of the document page.
[0154]
Then, the document data area for the handwritten drawing object 2 is guessed from the previously saved document data area for the handwritten drawing object, that is, the document data area for the handwritten drawing object 2 is guessed. Is checked in the current display data. In the case of FIG. 21, it is determined that the current display data includes the document data area for the handwritten drawing object 2.
[0155]
Since the absolute coordinates for the transparent screen at the upper left corner of the document data area for the handwritten drawing object 2 and the number of pixels in the vertical direction of the rectangular area are already stored, the absolute coordinates for the transparent screen at the lower left corner (point S) of this rectangular area are already stored. It is possible to determine absolute coordinates.
[0156]
Then, the absolute coordinates for the transparent screen of the upper left point R of the document display area are determined from the number of pixels in the vertical direction between the upper left point R and the point S of the document display area. In FIG. 21, the coordinates are indicated by (0, β).
[0157]
Thereafter, when a handwritten image is input in the document display state of FIG. 21, the transparent screen absolute coordinates of the handwritten image are obtained based on the relative coordinates from the point R as the coordinate data. That is, c is subtracted from the X coordinate value (display coordinates) obtained from the touch panel controller 17 and d−β is subtracted from the Y coordinate value (display coordinates) according to the relational expressions (5) and (6). For example, FIG. 22 shows a case where “unnecessary” is newly drawn by hand on the table in the display document of FIG. 21, and the absolute coordinates for the transparent screen of this hand-drawn image are obtained as described above. Can be
[0158]
In the above example, it is assumed that the screen data before scrolling and the screen data after scrolling include document data whose display is overlapped, and that the overlapping area includes the data of the document data area for the handwritten drawing object. However, in the present embodiment, when the data of the document data area for the handwritten drawing object is not included in the overlapping area, or when there is no overlapping document data in the screen data before and after the scrolling, Only the coordinates relative to the neighboring document data area exist as the coordinates of the handwritten input data, and the absolute coordinates do not exist for one page (in this case, for example, when the coordinate value is defined by a 16-bit data type, OxFFFF Is set).
[0159]
Although the vertical scroll has been described above, the same applies to the horizontal scroll.
[0160]
When the handwritten drawing shown in FIG. 18 and FIG. 22 is performed and the “Save” button 43 at the upper right of the display screen of the LCD 16 is selected, the superimposed drawing process converts the handwritten input data into “absolute coordinates for transparent screen” “ The two types of coordinates of “relative coordinates for transparent screen” and “bitmap data” of the neighboring document data area “the number of vertical pixels and the number of horizontal pixels of the rectangular area” The data is written and stored in the hard disk 20 in association with the page number of the document. At this time, if the handwritten input data is stored for each page, the position of the handwritten input data can be easily managed.
[0161]
FIG. 23 shows an operation flow in the superimposed handwriting mode in the superimposed drawing process. In the superimposition drawing process, if there is a handwriting input, a straight line is drawn between the input coordinates (same as the display coordinates) (S1), and the relative coordinates with respect to the neighboring document data area and the absolute coordinates for the transparent screen are obtained from the input coordinates. Are stored together with the display data of the neighboring document data area and the number of pixels in the vertical and horizontal directions of the area (S2). When there is a handwriting input, the processes of S1 and S2 are executed again. When the save button is pressed, the relative coordinates of the handwritten drawing portion with respect to the neighboring data area and the absolute coordinates for the transparent screen, and the display data of the neighboring document data area are displayed. And the number of pixels in the vertical and horizontal directions of the area are stored in the hard disk 20 in association with the current display page (S3), and the processing is terminated.
[0162]
Thereafter, in order to display another page or close the displayed document, the “handwriting” button 45 is pressed to release the superimposed handwriting drawing mode, and then the “switch” button 42 is pressed. When the superimposition drawing mode is released, the superimposition drawing process removes the virtual transparent screen superimposed on the display screen and returns the display screen to the state before the superimposition of the transparent screen (the saved bitmap data is Return to the original position in the display screen buffer). Further, the window manager erases the handwritten drawing display and the various buttons displayed above the “switch” button 42, and performs redrawing to display the “freeze” button 40 and the rectangular area designation icon 41.
[0163]
(5.3) When the stored image is superimposed and displayed
Next, a description will be given of an operation of switching to the superimposition drawing mode when the document is being displayed and not in the superimposition drawing mode, and superimposing the stored bitmap data such as a photograph on the document data and redisplaying the same.
[0164]
When the “switch” button 42 displayed on the LCD 16 is touched to switch to the superimposed drawing mode, the superimposed drawing process is performed by the window attributes stored in the main memory 12 such as the application name, the size of the application window, and the application Refers to the display position of the window and the file name of the document.
[0165]
The page number of the document and the display magnification of the document are identified using the recognition process as described above. In addition, the superimposition drawing process uses the above-described method that uses the display position of the scroll box to display the document displayed in the window of the application that is displaying the document.・ Specify without inquiring the process.
[0166]
When the “read” button 44 at the upper right of the display screen of the LCD 16 is selected, the bitmap data managed in correspondence with the current page number in the stored bitmap data is moved to the display position of the document. Display them in correspondence.
[0167]
For example, if the “read” button 44 is selected when the area from the top of the second page of the document is displayed, the superimposition drawing process is performed based on the absolute coordinates for the transparent screen, which is the additional information of the bitmap data. The coordinates are converted into the display coordinates using the equations (3) and (4), and the bitmap data is displayed at this position. That is, in the case of the document shown in FIG. 4, the photograph A is displayed again in a superimposed manner.
[0168]
If another page is displayed from the middle of the page and there is no absolute coordinate for the transparent screen of the bitmap data to be superimposed on it, the current display specified from the display position of the scroll box Based on the display position information of the data in the page, it is checked whether or not the current display data includes a document data area stored in association with the bitmap data to be superimposed.
[0169]
If it is determined that the document data area is included in the display area, the bitmap data stored in association with the document data area is superimposed and displayed on the relative coordinate position with respect to the document data area. At this time, the bitmap data is displayed after the relative coordinates with respect to the document data area are converted into the display coordinates. Although the display coordinates in the present embodiment have the origin at the pixel at the upper left corner of the display area of the LCD as described in "1. Configuration of this embodiment", for example, the upper left corner of the display area of the window The pixel at the corner may be set as the origin.
[0170]
(5.4) When the saved handwritten drawing data is superimposed and displayed
Next, a description will be given of an operation of switching to the superimposed handwritten drawing mode when the document is being displayed and not in the superimposed handwritten drawing mode, and superimposing and displaying the saved handwritten drawing data with the document data.
[0171]
When the “switch” button 42 displayed on the LCD 16 is touched and the mode is switched to the superimposed drawing mode in the non-superimposed drawing mode, the superimposed drawing process is performed based on the window attributes stored in the main memory 12. Refer to size, application window display position, and document file name.
[0172]
The page number of the document and the display magnification of the document are identified using the recognition process as described above. In addition, the superimposition drawing process uses the above-described method that uses the display position of the scroll box to display the document displayed in the window of the application that is displaying the document.・ Specify without inquiring the process.
[0173]
Then, the “handwriting” button 45 is touched, the mode is switched to the superimposed handwriting drawing mode, and the “read” button 44 at the upper right of the display screen of the LCD 16 is selected. The correspondingly managed handwritten drawing data is displayed corresponding to the display position of the document.
[0174]
For example, if the “read” button 44 is selected while the area from the top of the second page of the document is displayed, the superimposition drawing process causes the absolute coordinates for the transparent screen to exist in the handwritten input data. Then, the absolute coordinates for the transparent screen are converted into the display coordinates by using the relational expressions (5) and (6), and the handwritten drawing line is displayed at this position.
[0175]
If another page is displayed from the middle of the page, and there is no transparent screen absolute coordinate of the handwritten data to be superimposed on it, the current display data specified from the display position of the scroll box Of the document data area stored in association with the handwritten drawing object in the current display data based on the display position information in the page.
[0176]
When it is determined that the document data area is included in the display area, the handwritten input data stored in association with the document data area is converted from display coordinates relative to the document data area into display coordinates. Then, a handwritten drawing line is displayed at this position. Although the display coordinates in the present embodiment have the origin at the pixel at the upper left corner of the LCD display area as described in “1. Configuration of this embodiment”, for example, the upper left corner of the window display area The pixel at the corner may be set as the origin.
[0177]
(5.5) When the display magnification of a document is changed while bitmap data is superimposed and displayed
Next, a case where the display magnification of the document is changed when the document page and the corresponding superimposed bitmap data are displayed will be described.
[0178]
When the display magnification of the document is changed in a state where the superimposition rendering mode is released, and the “switch” button 42 is pressed to switch to the superimposition rendering mode again, the superimposition rendering process executes the above-described series of check processes and executes the document check. Identify the display magnification.
[0179]
First, a case where the document data is displayed from the top of the page will be described. When the “read” button 44 is pressed, the top of the page (upper left corner of the page) and the transparent screen absolute coordinate origin coincide with each other. Is performed with the same magnification as the document, and displayed on the LCD 16. Note that, for example, data interpolation processing is used as enlargement processing of superimposed bitmap data, and data thinning processing is used as reduction processing, for example.
[0180]
If the bitmap data is superimposed when the document data is already displayed enlarged or reduced, the size of the bitmap area (rectangular area) is appropriately adjusted by the user after the superposition of the bitmap data. Change using the electronic pen 2. In the operation at the time of changing the area, first, when the user touches the superimposed bitmap area with the electronic pen 2, the edge of the area is highlighted. Then, when the user touches the lower right corner (diagonal point) of this rectangle with the electronic pen 2 and traces it on the touch panel 18 as it is, the lower right corner of the rectangle, which is the edge of the area, becomes the contact position of the electronic pen 2. Change the size of the rectangle and display it. Then, when the user separates the electronic pen 2 from the touch panel 18 (pen-up), the bitmap data is enlarged or reduced so that the pen-up point becomes a new diagonal point of the bitmap area to be superimposed. To display.
[0181]
If the document data is not displayed from the beginning of the page, the display position information before the change in the display magnification cannot be used, so the superimposed bitmap saved in association with the display data before the change in the display magnification The data cannot be displayed in association with the display data after the display magnification has been changed.
[0182]
Accordingly, the absolute coordinates for the transparent screen at the upper left corner (point T in FIG. 15) of the bit map area (superimposed bit map area) displayed in a superimposed manner and the relative coordinates with respect to the document data area in the vicinity thereof, The bitmap data of the neighboring document data area and the number of pixels in the vertical and horizontal directions of the area are stored in the main memory 12 together with the data of the display magnification of the document as position information data of the superimposed bitmap.
[0183]
Then, when the “Save” button 43 is touched, the superimposition drawing process converts the superimposition bitmap data into the absolute coordinates for the transparent screen at the upper left corner of the superimposition bitmap area previously stored in the main memory 12 and the document data in the vicinity thereof. The relative coordinates with respect to the area, the bitmap data of the document data area adjacent to the superimposed bitmap area, the number of pixels in the vertical and horizontal directions of the area, the display magnification of the document, and the page number of the current document. The data is written and stored in the hard disk 20 in association with each other.
[0184]
After that, when displaying the stored superimposed bitmap data, the bitmap data corresponding to the magnification is displayed from the display position corresponding to the display magnification of the document at that time.
[0185]
(5.6) When the display magnification of the document is changed while the handwritten drawing data is superimposed and displayed
Next, the case where the display magnification of the document is changed when the document page and the corresponding handwritten drawing data are displayed will be described.
[0186]
When the display magnification of the document is changed in a state where the superimposed handwriting mode and the superimposed drawing mode are released, and the “switch” button 42 is pressed to switch to the superimposed drawing mode again, the superimposed drawing process performs the above-described series of check processing. Execute to identify the display magnification of the document. Then, when the “handwriting” button 45 is pressed, a superimposed handwriting drawing mode is set.
[0187]
First, a case where the document data is displayed from the top of the page will be described. When the “read” button 44 is pressed, the top of the page (the upper left corner of the page) and the transparent screen absolute coordinate origin coincide with each other. At the center, enlargement or reduction processing at the same magnification as that of the document is executed and displayed on the LCD 16. Note that, for example, interpolation processing of coordinate data is used as enlargement processing of handwritten drawing data, and thinning processing of coordinate data is used as reduction processing, for example.
[0188]
If the handwriting input is performed while the document data is already displayed after being enlarged or reduced, the superimposed drawing process uses the coordinate values (same as the display coordinates) obtained from the touch panel controller 17 by the handwriting input. The data is transferred to the LCD display controller 15 as it is, and is also converted into absolute coordinates for a transparent screen, and the converted coordinate data is stored in the main memory 12.
[0189]
If the document data is not displayed from the top of the page, the information before the change in the display magnification cannot be used, so the handwritten drawing data saved in association with the display data before the change in the display magnification is used. It cannot be displayed in association with the display data after the display magnification has been changed.
[0190]
Therefore, the method of specifying the display position of the handwritten data using the handwritten drawing object and the document data in the area associated with the object, which has been described with reference to FIGS. Run each time.
[0191]
When the handwritten input data is converted and stored as relative coordinates with respect to a nearby document data area or as absolute coordinates for a transparent screen, the data of the display magnification of the document is also stored. Then, when the stored handwritten input data is redisplayed thereafter, the data corresponding to the display magnification of the document at that time is displayed.
[0192]
(6) Other information processing in this embodiment
(6.1) Information processing with white background
A description will be given of a case where, when handwritten drawing is performed outside the display window of an application displaying a document, the background of the handwritten drawing data is white in order to make the handwritten drawing data easy to see.
[0193]
When in the superimposed handwriting drawing mode, the superimposed drawing process obtains information on the size and display position of the window of the application displaying the document by referring to the window attributes stored in the main memory 12. Therefore, it is determined whether or not each piece of coordinate data (same as the display coordinates) obtained by handwriting input on the touch panel 18 and obtained from the touch panel controller 17 is an area inside the document display window.
[0194]
When the coordinate data is outside the document display window and the pen-up notification data is received from the touch panel controller 17, each coordinate data outside the document display window is checked, and all of them are included. A drawing command for painting a rectangular area of a predetermined size in white is sent to the LCD display controller 15, and then a drawing command for drawing by connecting the coordinate data in the rectangular area with a straight line is sent to the LCD display controller 15. .
[0195]
In this manner, when the handwritten drawing is performed outside the document display window, the background portion is displayed in white. This display example is shown in FIG. In FIG. 24, the background of an area outside the document display window where handwriting can be performed is displayed in gray.
[0196]
Note that coordinate data determined to be outside the document display window at the time of checking coordinate data obtained from the touch panel controller 17 is passed to the LCD display controller 15 in a straight line drawing command between coordinates and is also put in a queue. deep. This queue is an array defined in the program. Then, a rectangular area whose background is to be painted white is determined from the coordinate data in the queue.
[0197]
As described above, when the handwritten image is drawn on the transparent screen outside the window of the application displaying the document, the drawing line is easy to see and the convenience is improved by setting the background to white. . Note that, here, “white” is used when the image is outside the window, but “white” may be used when the image is outside the document.
[0198]
(6.2) Information processing related to Web pages
Information processing when a Web browser is displaying a Web page will be described. FIG. 25 shows a display example of the Web browser.
[0199]
When the superimposition rendering mode is set, the superimposition rendering process refers to an application name that is displaying a document, which is one of the window attributes stored in the main memory 12, and determines whether or not the application is a Web browser.
[0200]
If it is determined that the web page is a web browser, a URL that is a display attribute of the web page is identified from the display data of the URL. This identification uses a method of identifying by a recognition function in the same manner as the above-described method of identifying the display magnification and the page number from the display data in the Acrobat Reader (trademark) window.
[0201]
In the recognition process, a region including a URL is cut out from the bitmap data in the display screen buffer in the LCD display controller 15 to perform character recognition, and the recognized character string (text data) is passed to the superimposition drawing process.
[0202]
Since a Web page is identified by a URL instead of a page number, bitmap data such as a photo that is drawn by being superimposed on the Web page, and handwriting that is drawn by being superimposed on the Web page in the superimposed handwriting drawing mode The drawing data is managed in association with a URL obtained as text data.
[0203]
The information processing in the superimposed drawing mode or the superimposed handwritten drawing mode when a Web page is displayed is an example of Acrobat Reader (trademark) except that a URL is used instead of a page number as page identification information. Can be the same as the above-described information processing.
[0204]
(6.3) Information processing when multiple windows exist
If there are multiple windows displaying the document, bitmap data such as a photo superimposed in the superimposed drawing mode and handwritten drawing data input in the superimposed handwriting drawing mode are stored in the current focus window (active Manages the document pages displayed in the window that is displayed. Also, when redisplaying bitmap data or handwritten drawing data stored as superimposition data, the data corresponding to the document page displayed in the current focus window is redisplayed.
[0205]
(Other Examples of Embodiments of the Present Invention)
(A) Electronic blackboard
In the above-described embodiment, the LCD is used as the display device. Instead, a large-screen display such as a PDP (Plasma Display Panel) is used, and a coordinate input unit such as a touch panel is added to the display surface of the large-screen display to display the image. A so-called “electronic blackboard” capable of drawing by hand on a surface can be used.
[0206]
In this case, when a handwritten drawing line or the like is displayed on a document or the like on the electronic blackboard, the position of the handwritten drawing line or the like can be managed without causing an action in an execution process of an application related to the document. And convenience in meetings and education.
[0207]
(B) Data conference system
A case will be described in which a PC card for a LAN (Ethernet (registered trademark)) is inserted into the pen input device of the above-described embodiment, and a data conference is performed with a pen input device at a remote place via a network. Note that the conversation is performed using a voice communication device such as a telephone.
[0208]
The specification for sharing the display screen of one terminal connected to a network formed for a data conference with all other terminals is described in ITU-T Recommendation T.40. Standardized as 120 series. Therefore, it is possible to connect a plurality of the above-described pen input devices to the data conference network, and to cause each pen input device to execute the screen sharing function.
[0209]
In this case, the handwritten drawing line, etc., which is superimposed and displayed on the material, etc. on each screen by each person, is also displayed on the screens of all the others, but an action is taken in the execution process of the application related to the material, etc. Since the positions of the drawing lines and the like can be managed without doing so, the convenience of the meeting is improved, such as easy storage of the drawing lines and the like.
[0210]
Also, at the educational site, if the screen sharing function is executed between the teacher's pen input device and the student's pen input device, it will be useful for teaching while attaching notes etc. to textbooks etc. on the screen, The convenience in education is improved.
[0211]
(C) Server / client type conference system
Here, as an example of an embodiment of the present invention, an electronic conference system in which a plurality of clients hold a conference while browsing and editing a conference material document stored in a server will be described as an example.
[0212]
First, FIG. 26 shows a system configuration example of the server / client system. The present system includes a server 60, a large display device 61 connected thereto, and clients 62 to 65 used by each conference participant. These devices are connected to a wireless LAN (for example, IEEE (Institute of Electrical and Electronics Engineers). ) Connected according to 802.11b).
[0213]
The server 60 is, for example, a computer having a PC-AT (The Personal Computer for Advanced Technologies) architecture (published by IBM Corporation in 1984). The server 60 is connected to a PCI (Peripheral Component Interconnect) bus via a PCI adapter board. A wireless LAN PC card is installed. In FIG. 26, the illustration of the keyboard connected to the server 60 is omitted.
[0214]
The large display device 61 has, for example, a touch panel attached to a display surface of a PDP, is connected to the server 60 by a VGA cable and an RS-232C cable, functions as a display device of the server 60, and serves as a touch input device of the server 60. Function. The VGA cable outputs a screen display signal from the server 60 to the PDP, and the RS-232C cable inputs touch input coordinate data detected by the touch panel to the server 60. The server 60 processes the input touch input coordinate data in the same manner as the mouse input data.
[0215]
Each of the clients 62 to 65 is the pen input device according to the above-described embodiment, and has a wireless LAN PC card mounted thereon. In addition, electronic pens 66 to 69 are attached to the clients 62 to 65.
[0216]
Next, the operation of the server / client software in which the screen data in the server 60 is transmitted to the clients 62 to 65 and the input data of the user is transmitted from the clients 62 to 65 to the server 60 will be described.
[0219]
A description will be given of a case where VNC (Virtual Network Computing) developed and provided by AT & T is used as the server / client software.
[0218]
A VNC server process (hereinafter, referred to as a VNC server) existing in the server 60 generates one screen buffer at the time of startup, and a VNC client process (hereinafter, referred to as a VNC client) existing in each of the clients 62 to 65 generates a screen buffer. The screen data in the screen buffer is displayed on the display (LCD 16) of the own device.
[0219]
The VNC server is activated to operate in either a shared mode in which a plurality of clients can attach to the screen buffer at the same time or in an individual mode in which only one client attaches. Now, the VNC server operates in the shared mode. It is working.
[0220]
Since the server 60 also displays the screen data generated by the VNC server in the screen buffer on the large display device 61, the displays on the large display device 61 and the displays of the clients 62 to 65 are all the same.
[0221]
The screen data transmitted from the VNC server to the VNC client and the user input data transmitted from the VNC client to the VNC server are transferred using an RFB (Remote Frame Buffer) protocol. The RFB protocol has a function of dividing data of one screen into small areas (rectangles) and further compressing and transmitting image data of the small areas. The smallest block of this small area is called a tile and is 16 × 16 pixels.
[0222]
Note that the VNC server process existing in the server 60 and the VNC client process existing in the clients 62 to 65 can communicate with each other by a socket.
[0223]
The VNC server passes the user input data received from the VNC client to the application as a key event or a pointer event. The application executes processing according to these events and executes drawing processing on the screen. Then, the VNC server transmits the updated screen data to the clients 62 to 65 using the RFB protocol, and the clients 62 to 65 display the received screen data on their own display (LCD 16).
[0224]
Therefore, the handwritten drawing data input on the display surface of the clients 62 to 65 or the large display device 61 is displayed on all the displays of the large display device 61 and the clients 62 to 65.
[0225]
When the present embodiment is used in a meeting, handwritten drawing lines and the like attached to materials on each screen will be displayed on other screens. Since the positions of the drawing lines and the like can be managed without doing so, the convenience of the meeting is improved, such as easy storage of the drawing lines and the like.
[0226]
【The invention's effect】
As described above, in the present invention, the display position of the content is extracted from the display data representing the display position of the content, and the position of the object is managed based on the extracted position (at the time of recording: recording of the drawing position, at the time of transmission: transmission of the drawing position) , At the time of redisplay: determination of the redisplay position, etc.), the position of the object can be managed without causing an action in the execution process of the application relating to the content.
[Brief description of the drawings]
FIG. 1 shows an external configuration of a pen input device according to an embodiment of the present invention.
FIG. 2 shows an internal configuration of a pen input device according to an embodiment of the present invention.
FIG. 3 is a diagram illustrating an operation of the embodiment.
FIG. 4 is a diagram illustrating an operation of the present embodiment.
FIG. 5 is a diagram illustrating an operation of the embodiment.
FIG. 6 is a diagram illustrating the operation of the present embodiment.
FIG. 7 is a diagram illustrating handling of a position according to the embodiment.
FIG. 8 is a diagram illustrating extraction in the present embodiment.
FIG. 9 is a diagram illustrating extraction in the present embodiment.
FIG. 10 is a diagram illustrating extraction in the present embodiment.
FIG. 11 is a diagram illustrating extraction in the present embodiment.
FIG. 12 is a diagram illustrating extraction in the present embodiment.
FIG. 13 is a diagram illustrating management in the present embodiment.
FIG. 14 is a diagram illustrating management in the present embodiment.
FIG. 15 is a diagram illustrating management in the present embodiment.
FIG. 16 is a diagram illustrating management in the present embodiment.
FIG. 17 is a diagram illustrating management in the present embodiment.
FIG. 18 is a diagram illustrating management in the present embodiment.
FIG. 19 is a diagram illustrating management in the present embodiment.
FIG. 20 is a diagram illustrating management in the present embodiment.
FIG. 21 is a diagram illustrating management in the present embodiment.
FIG. 22 is a diagram illustrating management in the present embodiment.
FIG. 23 is a diagram illustrating management in the present embodiment.
FIG. 24 is a diagram illustrating information processing for setting the background to white in the present embodiment.
FIG. 25 is a diagram illustrating information processing on a Web page according to the present embodiment.
FIG. 26 shows a system configuration example of a server / client system.
[Explanation of symbols]
1 Pen input device
2 touch pen
3 keyboard
4 mouse
5 PC card
6 Power cable
10 CPU
11 clocks
12 Main memory
13 ROM
14 RTC
15 LCD display controller
16 LCD
17 Touch panel controller
18 Touch panel
19 HD controller
20 Hard Disk
21 USB controller (1)
22 USB I / F (1)
23 USB controller (2)
24 USB I / F (2)
25 PC Card Controller
26 Card I / F
27 System bus
28 Battery
29 DC-DC converter
30 charging circuit
31 AC Adapter
40 Freeze button
41 Rectangular area designation icon
42 Switch button
43 Save button
44 Read button
45 Handwriting button
46 Line type button
47 rectangle button
48 Eraser button
50 Freeze area
51 Area where overlay drawing is possible (transparent screen area)
53 Application A
54 Document A
55 Application B
56 Document B
57 Desktop Screen
58 Application A Window
59 Transparent screen
60 servers
61 Large Display Device
62, 63, 64, 65 clients
66 ・ 67 ・ 68 ・ 69 Electronic pen

Claims (10)

ディスプレイ上に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理方法において、
前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ディスプレイ上の固定点に対する位置を抽出する抽出ステップと、
前記抽出ステップにより抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理ステップと、
を備えることを特徴とする情報処理方法。
An information processing method for displaying a transparent screen on which an object is drawn on the display by superimposing the content on a display displayed on a display,
An extraction step of extracting a position of a fixed point on the content with respect to the fixed point on the display, from data for displaying the display position of the content on the display,
A management step of managing the position of the object based on the position extracted by the extraction step;
An information processing method comprising:
ディスプレイ上のウィンドウ内に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理方法において、
前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ウィンドウ上の固定点に対する位置を抽出する抽出ステップと、
前記抽出ステップにより抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理ステップと、
を備えることを特徴とする情報処理方法。
An information processing method for displaying a transparent screen on which an object is drawn on the display by superimposing the content on a content displayed in a window on a display,
An extraction step of extracting a position of a fixed point on the content with respect to a fixed point on the window from data for displaying the display position of the content on the display,
A management step of managing the position of the object based on the position extracted by the extraction step;
An information processing method comprising:
前記抽出ステップは、さらに、前記コンテンツの表示倍率、ページ番号、又はURLを前記ディスプレイ上に表示させるためのデータから、前記コンテンツの表示倍率、ページ番号、又はURLを抽出し、
前記管理ステップは、さらに、前記抽出ステップにより抽出された表示倍率、ページ番号、又はURLに基づいて、前記オブジェクトの表示倍率、ページ番号、又はURLを管理することを特徴とする請求項1又は2に記載の情報処理方法。
The extracting step further extracts a display magnification, a page number, or a URL of the content from data for displaying a display magnification, a page number, or a URL of the content on the display,
The method according to claim 1, wherein the managing step further manages a display magnification, a page number, or a URL of the object based on the display magnification, the page number, or the URL extracted in the extraction step. An information processing method according to claim 1.
前記管理ステップは、さらに、前記コンテンツを前記ディスプレイ上に表示させるためのデータに基づいて、前記オブジェクトの位置を管理することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理方法。4. The information processing apparatus according to claim 1, wherein the managing step further manages a position of the object based on data for displaying the content on the display. 5. Method. 前記管理ステップは、前記コンテンツのページごとに、前記オブジェクトの位置を管理することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理方法。5. The information processing method according to claim 1, wherein the managing step manages a position of the object for each page of the content. 6. 前記情報処理方法は、前記オブジェクトを前記ディスプレイ上の前記ウィンドウ外に表示する場合、その背景を白で表示することを特徴とする請求項2に記載の情報処理方法。3. The information processing method according to claim 2, wherein when the object is displayed outside the window on the display, a background of the object is displayed in white. ディスプレイ上に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理装置において、
前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ディスプレイ上の固定点に対する位置を抽出する抽出手段と、
前記抽出手段により抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理手段と、
を備えることを特徴とする情報処理装置。
In an information processing apparatus that displays a transparent screen on which an object is drawn on the display by superimposing the content on a display displayed on the display,
Extracting means for extracting a position of a fixed point on the content with respect to the fixed point on the display, from data for displaying the display position of the content on the display,
Management means for managing the position of the object based on the position extracted by the extraction means;
An information processing apparatus comprising:
ディスプレイ上のウィンドウ内に表示されたコンテンツ上に重ねて、オブジェクトが描画された透明スクリーンを前記ディスプレイ上に表示する情報処理装置において、
前記コンテンツの表示位置を前記ディスプレイ上に表示させるためのデータから、前記コンテンツ上の固定点の前記ウィンドウ上の固定点に対する位置を抽出する抽出手段と、
前記抽出手段により抽出された前記位置に基づいて、前記オブジェクトの位置を管理する管理手段と、
を備えることを特徴とする情報処理装置。
In an information processing apparatus for displaying a transparent screen on which an object is drawn on the display by superimposing the content on a content displayed in a window on a display,
Extracting means for extracting a position of a fixed point on the content with respect to a fixed point on the window from data for displaying the display position of the content on the display;
Management means for managing the position of the object based on the position extracted by the extraction means;
An information processing apparatus comprising:
前記情報処理装置は、そのクライアントからオブジェクトを受信すると、そのオブジェクトが描画された透明スクリーンをディスプレイ上に表示するサーバであることを特徴とする請求項6又は7に記載の情報処理装置。8. The information processing apparatus according to claim 6, wherein the information processing apparatus is a server that, upon receiving an object from the client, displays a transparent screen on which the object is drawn on a display. 請求項1乃至6のいずれか1項に記載の情報処理方法をコンピュータに実行させることを特徴とする情報処理プログラム。An information processing program for causing a computer to execute the information processing method according to claim 1.
JP2002163050A 2002-06-04 2002-06-04 Information processing apparatus and information processing method Expired - Fee Related JP4021249B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002163050A JP4021249B2 (en) 2002-06-04 2002-06-04 Information processing apparatus and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002163050A JP4021249B2 (en) 2002-06-04 2002-06-04 Information processing apparatus and information processing method

Publications (2)

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

Family

ID=30431628

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002163050A Expired - Fee Related JP4021249B2 (en) 2002-06-04 2002-06-04 Information processing apparatus and information processing method

Country Status (1)

Country Link
JP (1) JP4021249B2 (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310728A (en) * 2006-05-19 2007-11-29 Ricoh Co Ltd Document position correction method and program for making computer execute the method
KR100792284B1 (en) 2004-03-10 2008-01-07 삼성전자주식회사 Method for setting driver program of image processing device and image processing system with transparent function
JP2008193402A (en) * 2007-02-05 2008-08-21 Sumitomo Electric Ind Ltd Terminal, system, and program for displaying/processing image, and storage medium
JP2008234202A (en) * 2007-03-19 2008-10-02 Ricoh Co Ltd Information processor, information processing method, program and storage medium
JP2009053769A (en) * 2007-08-23 2009-03-12 Ricoh Co Ltd Computer, overwrite information processor, overwrite information processing method, program, and storage medium
JP2009098883A (en) * 2007-10-16 2009-05-07 Fuji Xerox Co Ltd Information processor and information processing program
JP2009252175A (en) * 2008-04-10 2009-10-29 Ricoh Co Ltd Horizontal coordinate determining method in display document and information processing apparatus
JP2010102666A (en) * 2008-10-27 2010-05-06 Business Search Technologies Corp Method for specifying range in text or image, and processing method therefor
JP2010211727A (en) * 2009-03-12 2010-09-24 Ricoh Co Ltd Document display device, document display method, program therefor and storage medium
JP2013127702A (en) * 2011-12-19 2013-06-27 Ricoh Co Ltd Display device, display method, and program
WO2013183222A1 (en) * 2012-06-06 2013-12-12 ソニー株式会社 Information processing device, information processing method, and information processing program
JP2014149634A (en) * 2013-01-31 2014-08-21 Sharp Corp Input/output device
JP2016081426A (en) * 2014-10-21 2016-05-16 コニカミノルタ株式会社 Document processing device, control method of the same and program thereof
WO2019092920A1 (en) * 2017-11-09 2019-05-16 株式会社TransRecog Extra information superposition program, extra information superposition method, and extra information superposition device
US11907466B2 (en) 2021-03-19 2024-02-20 Ricoh Company, Ltd. Apparatus and method which displays additional information along with a display component in response to the display component being selected

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100792284B1 (en) 2004-03-10 2008-01-07 삼성전자주식회사 Method for setting driver program of image processing device and image processing system with transparent function
JP4659674B2 (en) * 2006-05-19 2011-03-30 株式会社リコー Document position correction method and program causing computer to execute the method
JP2007310728A (en) * 2006-05-19 2007-11-29 Ricoh Co Ltd Document position correction method and program for making computer execute the method
JP2008193402A (en) * 2007-02-05 2008-08-21 Sumitomo Electric Ind Ltd Terminal, system, and program for displaying/processing image, and storage medium
JP2008234202A (en) * 2007-03-19 2008-10-02 Ricoh Co Ltd Information processor, information processing method, program and storage medium
JP2009053769A (en) * 2007-08-23 2009-03-12 Ricoh Co Ltd Computer, overwrite information processor, overwrite information processing method, program, and storage medium
JP2009098883A (en) * 2007-10-16 2009-05-07 Fuji Xerox Co Ltd Information processor and information processing program
JP4626775B2 (en) * 2007-10-16 2011-02-09 富士ゼロックス株式会社 Information processing apparatus and information processing program
US8434009B2 (en) 2007-10-16 2013-04-30 Fuji Xerox Co., Ltd. Information processing apparatus and computer readable medium
JP2009252175A (en) * 2008-04-10 2009-10-29 Ricoh Co Ltd Horizontal coordinate determining method in display document and information processing apparatus
JP2010102666A (en) * 2008-10-27 2010-05-06 Business Search Technologies Corp Method for specifying range in text or image, and processing method therefor
JP2010211727A (en) * 2009-03-12 2010-09-24 Ricoh Co Ltd Document display device, document display method, program therefor and storage medium
JP2013127702A (en) * 2011-12-19 2013-06-27 Ricoh Co Ltd Display device, display method, and program
WO2013183222A1 (en) * 2012-06-06 2013-12-12 ソニー株式会社 Information processing device, information processing method, and information processing program
JP2014149634A (en) * 2013-01-31 2014-08-21 Sharp Corp Input/output device
US9176607B2 (en) 2013-01-31 2015-11-03 Sharp Kabushiki Kaisha Input/output apparatus for displaying superposed images including a handwritten image
JP2016081426A (en) * 2014-10-21 2016-05-16 コニカミノルタ株式会社 Document processing device, control method of the same and program thereof
WO2019092920A1 (en) * 2017-11-09 2019-05-16 株式会社TransRecog Extra information superposition program, extra information superposition method, and extra information superposition device
CN111201534A (en) * 2017-11-09 2020-05-26 株式会社越知 Additional information superimposing program, additional information superimposing method, and additional information superimposing apparatus
US11119639B2 (en) 2017-11-09 2021-09-14 Transrecog Co., Ltd. Non-transitory computer-readable medium storing an extra information superposition program, extra information superposition method, and extra information superposition method, and extra information superposition device
US11907466B2 (en) 2021-03-19 2024-02-20 Ricoh Company, Ltd. Apparatus and method which displays additional information along with a display component in response to the display component being selected

Also Published As

Publication number Publication date
JP4021249B2 (en) 2007-12-12

Similar Documents

Publication Publication Date Title
US9805486B2 (en) Image-drawing processing system, server, user terminal, image-drawing processing method, program, and storage medium
US20170293826A1 (en) Electronic information board apparatus, information processing method, and computer program product
JP4021249B2 (en) Information processing apparatus and information processing method
US9898243B2 (en) Information processing apparatus, program, information processing system, and information processing method
WO2016121401A1 (en) Information processing apparatus and program
US9177405B2 (en) Image processing apparatus, computer program product, and image processing system
US10013156B2 (en) Information processing apparatus, information processing method, and computer-readable recording medium
EP3306458A1 (en) Information processing device, image display method, and program
JP2009276479A (en) Electronic pen system, terminal device, and program thereof
US10725653B2 (en) Image processing device, image processing system, and image processing method
US10565299B2 (en) Electronic apparatus and display control method
US20200341631A1 (en) Electronic whiteboard, method for image processing in electronic whiteboard, and recording medium containing computer program of electronic whiteboard
JPWO2017138223A1 (en) Image processing apparatus, image processing system, and image processing method
JP4087203B2 (en) Screen data management apparatus, screen data management system, screen data management method, and screen data management program
US20020154120A1 (en) Annotation and application control of general purpose computer documents using annotation peripheral
EP3989051A1 (en) Input device, input method, medium, and program
JP2016200860A (en) Information processing apparatus, control method thereof, and program
US7280693B2 (en) Document information input apparatus, document information input method, document information input program and recording medium
CN113495708A (en) Output device, output system, format information changing method, recording medium, and controller
US8171082B2 (en) Information processing system, information processing method and computer readable medium
JP2012155739A (en) Electronic pen system, terminal device and program therefor
TWI828088B (en) Electronic device and display method for video conference or video teaching
WO2016121403A1 (en) Information processing apparatus, image processing system, and program
JP7306190B2 (en) Display device, display method, program
JP2022139957A (en) Display device, program, conversion method, and display system

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