(57)【特許請求の範囲】
【請求項１】
表示装置を備える情報処理装置のオペレーティングシステム上で実行されるアプリケーションによりウインドウに表示される文書の位置座標を取得する座標決定方法であって
前記情報処理装置が、前記表示装置における前記ウインドウ左上の基準座標を取得する第１のステップと、
前記情報処理装置が、スクロールバー情報に基づいて、前記基準座標における前記文書の表示位置を取得する第２のステップと、
前記情報処理装置が、前記文書におけるページ領域とページ余白との間のページ境界の前記文書の端部からの位置である余白位置を取得する第３のステップと、
前記情報処理装置が、前記第２のステップで取得した前記文書の表示位置と、前記第３のステップで取得した前記余白位置に基づいて、前記ページ境界を基準とした文書の表示位置座標を取得する第４のステップと、
を含むことを特徴とする座標決定方法。
【請求項２】
前記第３のステップにおいて、前記情報処理装置は、
前記アプリケーションにより実現されるスクロール機能を実行して前記ページ領域の端部をウインドウに表示し、前記ページ領域の外側部分であるページ余白のウインドウ内での寸法を検出することにより前記ページ余白を取得することを特徴とする請求項１記載の座標決定方法
【請求項３】
前記スクロール機能の実行に際して、前記ページ領域における上端所定数ライン分の水平画像を取得し、前記水平画像を用いて前記ページ余白の寸法を検出することを特徴とする請求項２記載の座標決定方法。
【請求項４】
前記水平スクロール機能の実行に際して、前記ページ領域における下端所定数ライン分の水平画像を取得し、前記水平画像を用いて、前記ページ余白の寸法を検出することを特徴とする請求項２記載の座標決定方法。
【請求項５】
前記ページ境界を検出するに際して、前記ページ領域における側端所定数ライン分の垂直画像を取得し、該垂直画像の画素データに基づいてページ境界を検出することを特徴とする請求項１乃至４のいずれか一項記載の座標決定方法。
【請求項６】
請求項１乃至５のいずれか一項記載の座標決定方法を実行することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は表示文書における水平座標決定方法及び情報処理装置に係り、特にパーソナルコンピュータ（ＰＣ）等の情報処理装置のオペレーティングシステム上で実行されるアプリケーションによりウインドウに表示される文書中の任意位置の水平座標を決定する表示文書における水平座標決定方法及びこの処理方法を実行する情報処理装置に関する。
【背景技術】
【０００２】
一般に、パーソナルコンピュータ等の情報処理装置を使用して次のような処理が行われる。図１０は情報処理装置を使用した処理を示す模式図である。図１０（ａ）に示す例は、例えばＰＣ１１００で、ワードプロセッサソフト等、一般的な文書作成アプリケーションで作成された文書１１５０をディスプレイ１１１０上に表示し、その表示された文書１１５０上に前記文書のデータを修正することなく、新たにこの文書に重ねて修正内容１１６０を描画して、この修正内容１１６０を文書１１５０における位置と関連付け保存して、文書１１５０の修正時に描画時の位置に修正内容１１６０を重ねて表示してこれを参照することにより文書修正を行う場合である。
また、図１０（ｂ）に示す例は、ノートＰＣ（タブレットＰＣ）１２１０とプロジェクタ１２２０とを用い、スクリーン１２３０に文書１２４０を表示し、発言者の音声、文書１２４０上へのメモ描画１２５０を文書における位置と関連付け、時系列に保存し、会議不参加者に配布して、再確認等の目的により任意のＰＣ１２６０上で、ノートＰＣ１２１０に表示し保存した音声、メモ付きの文書をそのまま表示再生するものである。
更に、図１０（ｃ）に示す例は、複数のＰＣ１３１０、１３２０、１３３０をネットワーク１３４０で接続し、すべてのＰＣ１３１０、１３２０、１３３０の表示状態を同一にすることにより文書を画面共有して、会議を行うものである。
このような態様で情報処理装置を使用する場合、前記文書に加えられた修正内容の文書での位置、即ちページ数や位置が保持されていないと、後から文書と修正内容を表示したときに加えられた修正内容が文書の異なるページや位置に表示されてしまい、修正内容を正しく参照することができない。
【０００３】
そこで、文書における修正個所の表示個所を保持するため、文書におけるページや位置を特定して保持しておく必要がある。特許文献１には、スクロールバーにインデックスを付け、インデックスを選択することによりページを識別するものが記載されている。即ち、この例は、表示中のウインドウの垂直スクロールバーに対する垂直スクロールツマミの位置及び水平スクロールバーに対する水平スクロールツマミの位置を認識して、当該認識された位置に、すでに垂直目印又は水平目印が設定されていないと判別された場合には、現在の垂直スクロールツマミ又は水平スクロールツマミの位置に垂直目印又は水平目印を設定して表示するものである。
更に、特許文献２には、スクロール領域長に基づいてタグを付け、タグを選択することによりページを識別するものが記載されている。即ち、この例は、コンピュータの表示領域に閲覧領域と操作領域とを設け、電子情報は閲覧領域に表示可能な情報量をページ単位として、閲覧領域に表示する。電子情報は、複数の記事の集合からなり、各記事はコンピュータの入力装置を用いて閲覧領域に拡大して詳細に閲覧することが可能であり、電子情報には、ページの順序を明示するタグを付加し、閲覧操作の入力装置のひとつとして操作領域に描画し、タグは各電子情報に付随しており、閲覧領域の表示状態に応じて外観が変化するものである。
更に、特許文献３には、アプリケーションが提供する機能によりページを認識するものが記載されている。即ち、この例は、タッチパネル付きディスプレイ装置において、ディスプレイ画面に表示される表示文書上に重ねて表示させる上書きデータと、前記上書きデータを表示させる位置を前記表示文書上の相対的な位置として示す文書座標とを対応付けて格納する上書きデータ格納手段と、前記表示文書の表示倍率、およびディスプレイ画面上の画面座標を検出する文書情報検出手段と、前記表示文書の表示倍率および前記表示文書の画面座標を利用して上書きデータ格納手段に格納されている上書きデータの文書座標を画面座標に変換する座標変換手段とを備えるものである。
【特許文献１】特開２０００−１７２４０１公報
【特許文献２】特開２００１−３４３８３公報
【特許文献３】特開２００４−９４６７９公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、文書における水平方向の位置を表すには以下の方法が採用されることがある。図１１は従来の表示文書における水平座標決定方法を示す模式図である。図１１（ａ）に示す例において、表示領域１５１０内には、左右のウインドウ境界１５３０Ｌ、１５３０Ｒの間に文書表示ウインドウ１５２０が表示されている。また、この文書表示ウインドウ１５２０内には、文書を表示するページ幅Ａのページ表示領域１５４０が表示されおり、ページ表示領域１５４０の両側にはページ境界１５５０Ｌ、１５５０Ｒを挟んで何も文字等が表示されないページ余白１５６０Ｌ、１５６０Ｒが表示されている。また、文書表示ウインドウ１５２０の下部には水平スクロール領域１５７０が、右端部には垂直スクロール領域１５８０が表示されている。ここで、ページ表示領域１５４０上の任意の点１５０１の水平方向の位置を示す値として値ＣＸ０及び値ＬＸ０を採用することができる。
ここで、値ＣＸ０は、オペレーティングシステムが提供するＡＰＩ（アプリケーションプログラミングインターフェース）により検出される文書表示ウインドウ１５２０の表示幅の中央１５２１からの距離を示す。また、値ＬＸ０は、同様にオペレーティングシステムが提供するＡＰＩにより取得される文書表示ウインドウ１５２０の左側のウインドウ境界１５３０Ｌからの距離を示す。
【０００５】
また、図１１（ｂ）に示すように、文書表示ウインドウ１５２０を縮小表示した状態では、点１５０１を示す値として、文書表示ウインドウ１５２０の中央１５２１を基準とする値ＣＸ１は、上記例での値ＬＸ０と等しい。これに対して、文書表示ウインドウ１５２０ウインドウ境界１５３０Ｌを基準とする値ＬＸ１は前記図１１（ａ）に示したときより小さくなる（ＬＸ１＜ＬＸ０）。なお、文書表示ウインドウ１５２０を拡大表示したとき、文書表示ウインドウ１５２０のウインドウ境界１５３０Ｌを基準とする値は大きくなる。
更に、図１１（ｃ）に示すように、ページ幅Ａのページ表示領域１５３０の後に、このページ幅Ａより大きなページ幅Ｂのページ表示領域１５９０が含まれる場合には、点１５０１の水平座標を示す値は、ページ表示領域１５９０の中央１５９１を基準とすると、その値ＣＸ２は、前記値ＣＸ０より距離は大きくなる（ＣＸ２＞ＣＸ０）。
このように、上述の方法では、文書上の点１５０１の水平座標を文書表示ウインドウ１５２０のウインドウ境界１５３０Ｌを基準とすると同一ではなくなり、文書表示ウインドウ１５２０の表示サイズを変更すると同一ではなくなる。また、ページ表示領域１５４０、ページ表示領域１５９０の中央１５２１、１５９１を基準とすると異なるページサイズが混在する場合同一ではなくなる。
そこで、本発明は文書表示ウインドウが変更された場合であっても、異なるサイズのページ表示領域が混在する文書であっても任意の点の水平方向座標を一意に特定することができる表示文書における水平座標決定方法及び情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するため、請求項１の本発明は、表示装置を備える情報処理装置のオペレーティングシステム上で実行されるアプリケーションによりウインドウに表示される文書の位置座標を取得する座標決定方法であって前記情報処理装置が、前記表示装置における前記ウインドウ左上の基準座標を取得する第１のステップと、前記情報処理装置が、スクロールバー情報に基づいて、前記基準座標における前記文書の表示位置を取得する第２のステップと、前記情報処理装置が、前記文書におけるページ領域とページ余白との間のページ境界の前記文書の端部からの位置である余白位置を取得する第３のステップと、前記情報処理装置が、前記第２のステップで取得した前記文書の表示位置と、前記第３のステップで取得した前記余白位置に基づいて、前記ページ境界を基準とした文書の表示位置座標を取得する第４のステップと、を含むこと特徴とする。
請求項２の本発明は、前記第３のステップにおいて、前記情報処理装置は、前記アプリケーションにより実現されるスクロール機能を実行して前記ページ領域の端部をウインドウに表示し、前記ページ領域の外側部分であるページ余白のウインドウ内での寸法を検出することにより前記ページ余白を取得することを特徴とする。
請求項３の本発明は、前記スクロール機能の実行に際して、前記ページ領域における上端所定数ライン分の水平画像を取得し、前記水平画像を用いて前記ページ余白の寸法を検出することを特徴とする。
【０００７】
請求項４の本発明は、前記水平スクロール機能の実行に際して、前記ページ領域における下端所定数ライン分の水平画像を取得し、前記水平画像を用いて、前記ページ余白の寸法を検出することを特徴とする。
請求項５の本発明は、前記ページ境界を検出するに際して、前記ページ領域における側端所定数ライン分の垂直画像を取得し、該垂直画像の画素データに基づいてページ境界を検出することを特徴とする。
請求項６の発明は、前記座標決定方法を実行することを特徴とする情報処理装置である。
【発明の効果】
【０００８】
本発明によれば、文書表示ウインドウが変更された場合であっても、異なるサイズのページ表示領域が混在する文書であっても任意の点の水平方向座標を一意に特定することができ、任意のアプリケーションが表示する文書の水平方向位置が特定でき、上書き処理等を行うに際して上書き位置のずれなどが防止できる。
【発明を実施するための最良の形態】
【０００９】
以下本発明を実施するための最良の形態を図面に基づいて説明する。まず本例で実施される文書表示ウインドウのスクロールバーに基づく情報の取得について説明する。図１はスクロールバーから情報を取得する方法を説明するための図であり、（ａ）はスクロールバーの表示状態を示す模式図、（ｂ）は文書全体を示す模式図である。
この例では、情報処理装置は、汎用ＯＳ（オペレーティングシステム、例えばＷｉｎｄｏｗｓ（登録商標）、ＭＡＣ  ＯＳ（登録商標）、Ｌｉｎｕｘ（登録商標）等）上で動作する任意のアプリケーションプログラムが動作しており、ディスプレイ１１０の表示領域１６０に表示された文書表示ウインドウ１２０に文書１３０が表示されている。この例では、文書表示ウインドウ１２０は、表示領域１６０の全面に表示されているが、文書表示ウインドウ１２０は表示領域１６０の一部に部分的に表示されているものでもよい。また、この例では文書１３０は、図１（ｂ）に示すように、例えば３ページ（第１ページＰ１、第２ページＰ２、第３ページＰ３）であり、ディスプレイ１１０には、Ｐ２の中央部が表示されている。また、この例では、図１（ａ）に示すように、文書１３０は文書表示ウインドウ１２０より大きく表示されているため、文書表示ウインドウ１２０の左右からはみ出ている。
【００１０】
文書表示ウインドウ１２０の下端部には、文書１３０を水平スクロールする水平スクロールバー１４０が、また、文書表示ウインドウ１２０の右端部には、文書１３０を上下にスクロールする垂直スクロールバー１５０が表示されている。
水平スクロールバー１４０、垂直スクロールバー１５０は文書表示ウインドウ１２０の付属、あるいは独立したウインドウとして作成されており、ＯＳが提供するＡＰＩ（アプリケーションプログラミングインターフェース）によりウインドウ識別情報が取得でき、ウインドウ識別情報を介してスクロール情報を取得可能となっている。
水平スクロールバー情報としては、表示幅（ＨＬ）、ページ左端から文書表示領域左端までの表示左端位置（ＨＰ）、ページ表示幅（ＨＷ）が取得される。
垂直スクロールバー情報として先頭ページ上端から最終ページ下端までの全ページ高（ＶＬ）、先頭ページ上端から文書表示領域上端までの表示上端位置（ＶＰ）、ページ表示高（ＶＷ）が取得される。
【００１１】
次に、本例の処理で実行される文書における任意の点、例えばマウスカーソルの位置の座標（マウス座標）の決定について説明する。図２はマウス座標決定を説明するための図であり、（ａ）は文書の表示状態を示す模式図、（ｂ）は文書全体を示す模式図である。この例では、文書１３０は、３ページ（第１ページＰ１、第２ページＰ２、第３ページＰ３）で構成され、第２ページＰ２の幅寸法は他のページＰ１、Ｐ３より大きいものとしている。
まず、ＯＳが提供するＡＰＩにより文書表示領域左上端座標（ＷＸ，ＷＹ）、文書表示領域幅（ＷＷ）、文書表示領域高（ＷＨ）を取得する。また、前記垂直スクロールバー情報から表示上端位置（ＶＰ）を取得する。更に、水平スクロールバー情報から表示左端位置（ＨＰ）を取得する。そして、必要に応じて、ページ余白（ＬＭ）を検出し、文書位置をページ境界（ページ余白とページ領域との境界）からの距離（ＤＸ）、先頭ページ上端からの距離（ＤＹ）として管理する。
これにより、画面座標（マウス座標）（Ｘ，Ｙ）と文書座標（ＤＸ，ＤＹ）の関係は以下となる。なお、ページ間領域は前ページ文書座標に基づいて表示する。
ＤＸ＝Ｘ＋ＨＰ−ＷＸ−ＬＭ
ＤＹ＝Ｙ＋ＶＰ−ＷＹ
Ｘ＝ＤＸ−ＨＰ＋ＷＸ＋ＬＭ
Ｙ＝ＤＹ−ＶＰ＋ＷＹ
【００１２】
次に本例の処理で実行されるページ余白の検出について説明する。
図３はページ余白の検出を説明するための模式図である。この例では、当初ディスプレイ１１０の文書表示ウインドウ１２０には、図３（ａ）に示すように、文書１３０が拡大されて表示されている。まず、ＯＳが提供するＡＰＩにより水平スクロールバー情報を取得して、表示左端位置（ＨＰ）を取得する。次いで、図３（ｂ）に示すように、文書上下端１ライン２１０、２２０を除く文書表示領域２３０の画像を取得し、文書表示領域上へ重ねて表示する。これによりスクロール操作をした場合、前記文書表示領域２３０は移動することなく、スクロール操作により上下端１ライン２１０、２２０だけが表示更新され、移動することになる。そして、図３（ｃ）に示すように、ＯＳが提供するＡＰＩにより水平スクロールバー１４０を操作、ページ左端を表示する。そして、文書表示領域上端の上端１ライン２１０、下端１ライン２２０の水平画像を取得する。そして、下端１ライン２２０の先頭１画素（１ピクセルデータ）２２１をページ余白画素としてページ余白画素以外が検出されるまでをページ余白（ＬＭ）とする。
次いで、図３（ｃ）に示すように、各ページのうちページ余白（ＬＭ）の値がもっとも大きいページ境界１ライン領域をＯＳが提供するＡＰＩを介してアプリケーションへ表示更新させ、ページ境界１ライン画像２４０を取得する。このページ境界１ライン画像２４０に基づいてページ余白画素２４１を検出し、これが検出されなくなった点をページ区切り長（ＴＰ）とする。この例では、第１ページＰ１と、第２ページＰ２とのページ区切り長を検出している。図３（ｄ）に下端ページ余白（ＬＭ）の値が大きい場合を示す。また、図３（ｅ）にページ余白値が同一である場合を示す。
【００１３】
次いで任意点の座標（マウス座標）の取得について説明する。図４は任意の点の座標の取得を説明するための模式図である。この例では画面（マウス）座標を文書座標に、文書座標を画面座標に算出する方法について説明する。
まず、図４（ａ）に示すように、ＯＳが提供するＡＰＩにより画面幅（ＳＷ）、画面高（ＳＨ）、文書表示領域左上端座標（ＷＸ，ＷＹ）、文書表示領域幅（ＷＷ）、文書表示領域高（ＷＨ）、表示左端位置（ＨＰ）、表示上端位置（ＶＰ）を取得する。
また、水平スクロールバーを操作してページ左端を表示、上端ページ余白（ＬＭＴ）、下端ページ余白（ＬＭＢ）、ページ区切り長（ＴＰ）を検出する。
次ページ境界は、ＴＬ＝ＷＹ＋ＴＰとして示される。
マウス座標（Ｘ，Ｙ）、（Ｙ＜ＴＬ）であるマウス座標（Ｘ０，Ｙ０）を文書座標（ＤＸ０，ＤＹ０）へ変換すると以下のようになる。
ＤＸ０＝Ｘ０＋ＨＰ−ＷＸ−ＬＭＴ
ＤＹ０＝Ｙ０＋ＶＰ−ＷＹ
マウス座標（Ｘ，Ｙ）、（Ｙ≧ＴＬ）であるマウス座標（Ｘ１，Ｙ１）を文書座標（ＤＸ１，ＤＹ１）へ変換すると以下のようになる。
ＤＸ１＝Ｘ１＋ＨＰ−ＷＸ−ＬＭＢ
ＤＹ１＝Ｙ１＋ＶＰ−ＷＹ
【００１４】
図４（ｂ）に示すように、文書表示領域左上端座標（ＷＸ，ＷＹ）を取得して、表示文書のページ余白（ＬＭＴ，ＬＭＢ）、ページ区切り長（ＴＰ）を検出、ページ上端位置（ＶＰ）、ページ左端位置（ＨＰ）を取得、表示ページ領域を以下のように算出する。
表示上端文書座標（ＤＹＴ）＝ＶＰ
次ページ境界文書座標（ＤＹＰ）＝ＶＰ＋ＴＰ
表示下端文書座標（ＤＹＢ）＝ＶＰ＋ＷＹ
文書座標（ＤＸ０，ＤＹ０）（ＤＹＴ≦ＤＹ０＜ＤＹＰ）である文書座標を画面座標（Ｘ０，Ｙ０）へ変換すると以下のようになる。
Ｘ０＝ＤＸ０−ＨＰ＋ＷＸ＋ＬＭＴ
Ｙ０＝ＤＹ０−ＶＰ＋ＷＹ
文書座標（ＤＸ１，ＤＹ１）（ＤＹＰ≦ＤＹ１＜ＤＹＢ）である文書座標を画面座標（Ｘ１，Ｙ１）へ変換すると以下のようになる。
Ｘ１＝ＤＸ１−ＨＰ＋ＷＸ＋ＬＭＢ
Ｙ１＝ＤＹ１−ＶＰ＋ＷＹ
【００１５】
次に、本例で検知した文書の位置情報を適用する例について説明する。この例は、パーソナルコンピュータ４００において、ワードプロセッサで作成表示された文書３１０の文字列３２０に、上書き処理用アプリケーションソフトでマーク３３０、３４０を上書き記入し、このマーク３３０、３４０をマーク３３０、３４０の文書上での位置と関連付け保存し、異なるパーソナルコンピュータ５００で文書３１０を表示した時にマーク３３０、３４０を上書き位置へ表示できるようにするものである。図５は上書き処理を説明するための模式図である。
この上書き処理を実行するため、上書き処理を行うパーソナルコンピュータ４００には、ワードプロセッサソフトを備える他、上書き制御部４１０と、上書きデータ格納部（上書きデータファイル）４２０とを備えている。前記上書き制御部４１０は、ディスプレイ４４０上に上書き制御バー４３０を表示し、操作者はこの上書き制御バー４３０を指定することにより上書き処理を行う。この上書き処理はＯＳを実行しているコンピュータで格納された上書き処理用のプログラムを実行させることにより実現する。また、上書きデータ格納部４２０は上書きしたマークのデータと、マークの文書上での位置データを格納する。
【００１６】
まず、上書き制御部４１０が、ＯＳにより提供されるプログラム起動手段により起動される。すると、他のアプリケーションプログラム（例えばワードプロセッサ）が表示する文書３１０上へ透明ウインドウ（背景が透けて見える）を表示する。また、上書き制御バー４３０を表示、上書き制御を開始する。
ここで、上書き制御バー４３０により以下の機能が実現されている。「手書」ボタン押下により手書き文字描画モードへ移行、透明ウインドウ上へマウスドラッグ座標間を予め設定されている色、太さにて線描画することにより手書き文字（図形）を描画する。「図形」ボタン押下により図形描画モードへ移行、円、楕円、四角形等を透明ウインドウ上へ描画する。「消去」ボタン押下により消去モードへ移行、図形、手書き文字を消去する。
「移動」ボタン押下により文書スクロールモードへ移行、文書をスクロール表示する。
「終了」ボタン押下により上書き制御を終了する。
このような操作により実行された上書き処理により生成された上書きデータは文書位置と関連付けられ上書きデータファイル４２０へ保存される。
【００１７】
他のパーソナルコンピュータ５００で、この上書きされた文書をディスプレイ５４０上に表示するには、他のパーソナルコンピュータ５００に前記パーソナルコンピュータ４００と同様にワードプロセッサソフトと、前記上書き処理用のアプリケーションソフトを格納しておく。そして、文書データをパーソナルコンピュータ５００に読み取ると共に、前記上書きデータをパーソナルコンピュータ５００に設定した上書きデータファイル５２０に格納しておく。そして、パーソナルコンピュータ５００においてワードプロセッサソフトを実行して、文書を表示させると共に、前記上書き処理用アプリケーションソフトを実行し、ディスプレイ５４０上に上書きデータを文書と共に表示する。このとき、上書き処理用アプリケーションソフトは上書きデータとしてデータファイル５２０から表示文書のマークデータと、文書位置データとを自動検出し、図５（ｂ）に示すように、文書３１０上の所定位置にマーク３３０、３４０を表示する。
【００１８】
次に文書位置検知制御の手順について説明する。図６は実施の形態例に係る文書位置検知制御の全体の手順を示すフローチャートである。まず、上書き処理の指示があると、文書位置検知制御プログラムはＯＳが提供するプログラム起動手段により実行を開始する。これにより、制御テーブル６１０が全モジュールにより参照可能な領域に置かれる。制御テーブル６１０には、文書表示左上端座標、文書表示領域幅、文書表示領域高、水平スクロールバー識別、垂直スクロールバー識別、上端ページ余白（ＬＭＴ）、下端ページ余白（ＬＭＢ）、ページ区切り長（ＴＰ）の各領域が設定される。また、上書きデータファイル６２０がパーソナルコンピュータのデータ格納領域に設定される。処理は、以下のステップＳＡ１〜ステップＳＡ１８に従って実行される。
まず、ステップＳＡ１では、ＯＳが提供するＡＰＩにより文書表示アプリケーションの文書表示領域を検出し、文書表示領域左上端座標（ＷＸ，ＷＹ）、文書表示領域幅（ＷＷ）、文書表示領域高（ＷＨ）を取得する。次に、ステップＳＡ２では、ＯＳが提供するＡＰＩにより水平スクロールバーを検索し、水平スクロールバー識別情報を取得する。ステップＳＡ３では、ＯＳが提供するＡＰＩにより垂直スクロールバーを検索し、垂直スクロールバー識別情報を取得する。ステップＳＡ４では、最前面へ全画面透明ウインドウを表示する。ステップＳＡ５では、文書位置検知応用制御バーを表示する。そして、ステップＳＡ６では、制御モードを「描画」に設定する。
【００１９】
ステップＳＡ７では、マウスデータを入力、マウス座標に設定されている機能を実行する。ステップＳＡ８では、制御モードが「表示移動」に設定され、マウス座標が文書表示移動制御領域にある場合、文書の表示移動処理（スクロール）を実行する。ステップＳＡ９では、ページ余白、ページ区切り長を検出する。ステップＳＡ１０では、上書きデータファイルの上書きデータを取得する。ステップＳＡ１１では、上書きデータ文書座標を画面座標へ変換する。ステップＳＡ１２では、画面内座標が存在する場合、上書きデータの情報により上書き表示する。ステップＳＡ１３では、制御モードが「描画処理」に設定され、マウス座標が描画領域にある場合、上書き描画（手書き文字、図形描画等）処理を実行する。ステップＳＡ１４では、上書き描画時のマウス座標を文書座標へ変換する。ステップＳＡ１５では、文書座標へ変換した上書きデータを上書きデータファイルへ保存する。ステップＳＡ１６では、マウス座標が制御バー領域にある場合、モードを取得設定する。
ステップＳＡ１７では、終了時制御バーを消去する。ステップＳＡ１８では、透明ウインドウを消去する。
【００２０】
以下、上記処理の詳細について説明する。まず前記ステップＳＡ９のページ余白検出制御について詳細に説明する。図７はページ余白検出処理の手順を示すフローチャートである。この処理は、以下のステップＳＢ１〜ステップＳＢ１６に従って実行される。
まず、ステップＳＢ１では、文書領域上下端水平１ラインを除く文書表示領域画像を取得する。ステップＳＢ２では、文書表示領域上へ取得文書表示領域画像を重ねて表示する。ステップＳＢ３では、水平スクロールバー識別を介して現在の表示左端位置を取得する。ステップＳＢ４では、水平スクロールバー識別を介して水平スクロールバーを操作し、ページ左端を表示する。この時上下端１ラインのみ表示更新される。ステップＳＢ５では、文書表示領域上端１ライン水平画像を取得する。ステップＳＢ６では、文書表示領域上端１ライン水平画像の画素を検索、上端ページ余白を検出する。ステップＳＢ７では、文書表示領域下端１ライン水平画像を取得する。ステップＳＢ８では、文書表示領域下端１ライン水平画像の画素を検索、下端ページ余白を検出する。ステップＳＢ９では、上端ページ余白の方が大きい場合、文書表示領域左端から上端ページ余白（ＬＭＴ）距離にある垂直１ライン文書領域をＯＳが提供するＡＰＩにより文書表示アプリケーションへ要求、表示更新させる。ステップＳＢ１０では、上端余白値ページ境界ライン画像を取得する。ステップＳＢ１１では、下端ページ余白の方が大きい場合、文書表示領域左端から下端ページ余白（ＬＭＢ）距離にある垂直１ライン文書領域をＯＳが提供するＡＰＩにより文書表示アプリケーションへ要求、表示更新させる。ステップＳＢ１２では、上端余白値ページ境界ライン画像を取得する。ステップＳＢ１３では、ページ境界ライン画像の画素を検索、ページ区切り長を検出する。ステップＳＢ１４では、ページ区切りが存在しない場合、ページ区切り長を文書表示領域高とする。ステップＳＢ１５では、表示位置をステップＳＢ３で取得した位置へ水平スクロールバーを操作して戻す。ステップＳＢ１６では、文書表示領域画像を消去する。
【００２１】
次に前記ステップＳＡ１１の文書座標算出の制御について詳細に説明する。図８は画面座標（マウス座標）から文書座標への変換制御を示すフローチャートである。本処理は、画面座標（Ｘ、Ｙ）を入力値とし文書座標（ＤＸ、ＤＹ）を要求元へ返す。この処理は以下のステップＳＣ１〜ステップＳＣ６に従って実行される。
ステップＳＣ１では、垂直スクロールバー識別を介してＡＰＩによりページ上端位置（ＶＰ）を取得する。ステップＳＣ２では、水平スクロールバー識別を介してＡＰＩによりページ左端位置（ＨＰ）を取得する。ステップＳＣ３では、次ページ境界（文書表示領域Ｙ座標＋ページ区切り長）を算出する。ステップＳＣ４では、画面Ｙ座標が次ページ境界より小さい場合、上端ページ余白（ＬＭＴ）により文書ＤＸ座標を算出する（ＤＸ＝Ｘ＋ＨＰ−ＷＸ−ＬＭＴ）。
ステップＳＣ５では、画面Ｙ座標が次ページ境界より大きい場合、下端ページ余白（ＬＭＢ）により文書ＤＸ座標を算出する（ＤＸ＝Ｘ＋ＨＰ−ＷＸ−ＬＭＢ）。
ステップＳＣ６では、文書ＤＹ座標を算出する（ＤＹ＝Ｙ＋ＶＰ−ＷＹ）。
【００２２】
次に前記ステップＳＡ１４の画面座標算出制御について詳細に説明する。図９は文書座標から画面座標への変換制御を示すフローチャートである。この処理では文書座標（Ｘ、Ｙ）を入力値とし、制御テーブル６１０の値に基づいて画面座標（Ｘ、Ｙ）を取得して、文書座標テーブル６４０に出力する。この処理は以下のステップＳＤ１〜ステップＳＤ１１に従って実行される。
ステップＳＤ１では、ＡＰＩにより画面幅（ＳＷ）を取得する。ステップＳＤ２では、垂直スクロールバー識別を介してＡＰＩによりページ上端位置（ＶＰ）を取得する。ステップＳＤ３では、水平スクロールバー識別を介してＡＰＩによりページ左端位置（ＨＰ）を取得する。ステップＳＤ４では、表示上端文書座標（ＤＹＴ＝ＶＰ）を算出する。ステップＳＤ５では、次ページ境界文書座標（ＤＹＰ＝ＶＰ＋ＴＰ）を算出する。ステップＳＤ６では、表示下端文書座標（ＤＹＢ＝ＶＰ＋ＷＹ）を算出する。ステップＳＤ７では、画面座標無効に設定する。ステップＳＤ８では、文書ＤＹ座標が（ＤＹＴ≦ＤＹ＜ＤＹＰ）である場合上端ページ余白（ＬＭＴ）により画面Ｘ座標を算出する（Ｘ＝ＤＸ−ＨＰ＋ＷＸ＋ＬＭＴ）。
ステップＳＤ９では、文書ＤＹ座標が（ＤＹＰ≦ＤＹ＜ＤＹＢ）である場合下端ページ余白（ＬＭＢ）により画面Ｘ座標を算出する（Ｘ＝ＤＸ−ＨＰ＋ＷＸ＋ＬＭＢ）。
ステップＳＤ１０では、算出した画面Ｘ座標（０≦Ｘ＜ＳＷ）にある場合画面に存在する文書座標として画面座標を確定する。
ステップＳＤ１１では、画面Ｙ座標を算出する（Ｙ＝ＤＹ−ＶＰ＋ＷＹ）。
【００２３】
以上説明したように本発明によれば、文書表示ウインドウが変更された場合であっても、異なるサイズのページ表示領域が混在する文書であっても任意の点の水平方向座標を一意に特定することができ、任意のアプリケーションが表示する文書の水平方向位置が特定でき、上書き処理等を行うに際して上書き位置のずれなどが防止できる。
また、本発明によれば、ページ余白領域が文書表示領域内に表示されていない場合であっても、水平スクロールを行うことによりページ余白の検出が可能となり、また、この水平スクロールに際しては表示されている文書の画像を移動させずにすむので文書を見ている者に不快感を与えることがなくなる。
また、本発明によれば、文書としてサイズが異なるページ表示がされている場合であっても、ページ幅の検出ができる他、ページ左端画素とページ余白画素を比較してページ領域を検出するので、確実にページ区切りの検出が可能となる。
更に、本発明によれば、ページ余白、ページ区切り検出が終了した後、文書表示を元に戻す手間をなくすことができるので使い勝手を向上させることができる。
【図面の簡単な説明】
【００２４】
【図１】スクロール情報を取得する方法を説明するための模式図である。
【図２】任意の点の座標を説明するための模式図である。
【図３】ページ余白の検出方法を説明するための模式図である。
【図４】マウス座標決定を説明するための模式図である。
【図５】上書き処理を説明するための模式図である。
【図６】文書位置検知処理の手順を示すフローチャートである。
【図７】ページ余白検出処理の手順を示すフローチャートである。
【図８】画面座標（マウス座標）から文書座標への変換制御を示すフローチャートである。
【図９】文書座標から画面座標への変換制御を示すフローチャートである。
【図１０】情報処理装置を使用した処理を示す模式図である。
【図１１】従来の表示文書における水平座標決定方法を示す模式図である。
【符号の説明】
【００２５】
１１０  ディスプレイ、１２０  文書表示ウインドウ、１３０  文書、１４０  水平スクロールバー、１５０  垂直スクロールバー、１６０  表示領域、２１０  上端１ライン、２２０  下端１ライン、２２１  先頭１画素（１ピクセルデータ）、２３０  文書表示領域、２４０  ページ境界１ライン画像、２４１  ページ余白画素、３１０  文書、３２０  文字列、３２０  文書、３３０、３４０  マーク、４００  パーソナルコンピュータ、４１０  制御部、４２０  上書きデータ格納、４２０  データファイル、４３０  制御バー、４４０  ディスプレイ、５００  パーソナルコンピュータ、５２０  データファイル、５４０  ディスプレイ、６１０  制御テーブル、６２０  データファイル
【図１】
0005228590.tif 000002
【図２】
0005228590.tif 000003
【図３】
0005228590.tif 000004
【図４】
0005228590.tif 000005
【図５】
0005228590.tif 000006
【図６】
0005228590.tif 000007
【図７】
0005228590.tif 000008
【図８】
0005228590.tif 000009
【図９】
0005228590.tif 000010
【図１０】
0005228590.tif 000011
【図１１】
0005228590.tif 000012