(57)【要約】【課題】拡大表示時に非文書表示領域を消失させて表示可能な情報量を増加させることにより、表示装置の操作性を向上させた文書拡大表示方法を提供することを目的とする。【解決手段】画面表示領域に表示された文書からページ領域画像を取得し、ページ領域画像を所定の拡大率に拡大して画面表示領域に表示する拡大表示制御手段と、画面表示領域の文書座標を算出し、算出された文書座標に基づいて上書画像データが画面表示領域内にあるか否かを判定し、画面表示領域内にあると判定された上書画像データを拡大率にて拡大するとともに、上書画像データの文書座標に基づいて画面表示領域に表示する上書き表示制御手段と、を少なくとも有する。【選択図】図１０
2011014076.tif 000002
【特許請求の範囲】
【請求項１】
任意のアプリケーションプログラムが画面表示領域に表示する文書を拡大して表示する文書拡大表示方法を実行するための情報処理装置であって、
前記画面表示領域に表示された文書からページ領域画像を取得し、該ページ領域画像を所定の拡大率に拡大して前記画面表示領域に表示する拡大表示制御手段と、
前記画面表示領域の文書座標を算出し、算出された文書座標に基づいて上書画像データが前記画面表示領域内にあるか否かを判定し、前記画面表示領域内にあると判定された上書画像データを前記拡大率にて拡大するとともに、前記上書画像データの文書座標に基づいて前記画面表示領域に表示する上書き表示制御手段と、を少なくとも有することを特徴とする情報処理装置。
【請求項２】
拡大表示制御手段、及び上書き表示制御手段を少なくとも有する情報処理装置の文書拡大表示方法であって、
前記拡大表示制御手段が、画面表示領域に表示された文書からページ領域画像を取得し、該ページ領域画像を所定の拡大率に拡大して前記画面表示領域に表示するステップと、
前記上書き表示制御手段が、前記画面表示領域の文書座標を算出し、算出された文書座標に基づいて上書画像データが前記画面表示領域内にあるか否かを判定し、前記画面表示領域内にあると判定された上書画像データを前記拡大率にて拡大するとともに、前記上書画像データの文書座標に基づいて前記画面表示領域に表示するステップと、を有することを特徴とする文書拡大表示方法。
【請求項３】
前記拡大表示制御手段は、前記ページ領域を識別する際に、文書領域内にある水平なライン画像を取得し、該ライン画像の先端又は後端から連続する同一色のピクセル部分を背景領域と判断することを特徴とする請求項２記載の文書拡大表示方法。
【請求項４】
前記拡大表示制御手段は、前記アプリケーションプログラムの水平スクロールバー情報から水平文書位置を取得し、水平文書位置の値に基づいて背景領域の有無を判定することを特徴とする請求項２又は３記載の文書拡大表示方法。
【請求項５】
前記拡大表示制御手段は、前記ページ領域の少なくとも一部を前記表示画面領域全体に拡大して表示することを特徴とする請求項２乃至４の何れか一項記載の文書拡大表示方法。
【請求項６】
前記拡大表示制御手段は、表示画面の幅とページ領域の幅とに基づいてページ領域の拡大率を算出することを特徴とする請求項２乃至５の何れか一項記載の文書拡大表示方法。
【請求項７】
前記上書き描画制御手段は、描画された上書画像データの座標から前記拡大率を参照して描画座標を算出し、前記上書画像データの種別及び前記描画座標並びに前記ページ領域画像を関連づけて上書画像データファイルに保存することを特徴とする請求項２乃至６の何れか一項記載の文書拡大表示方法。
【請求項８】
請求項２乃至７の何れか一項記載の文書拡大表示方法を情報処理装置に実行させるためのプログラム。
【請求項９】
請求項８記載のプログラムを記録したことを特徴とする情報処理装置読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示装置に文書や画像等のデータを拡大して表示する文書拡大表示方法に関し、特に文書の表示されていない表示画面の領域を有効活用することにより、スクロール等の操作量を減少させて利便性を高めることのできる文書拡大表示方法に関する。
【背景技術】
【０００２】
文字や画像等が含まれた文書データを作成する際、文字等の配置や大きさを工夫して、関連性のあるデータを１つのページ内に収めることがある。この場合、関連するデータが１つのページ内にまとまっていると、ページをめくることなく内容を理解できるという長所がある一方で、１ページ内に多量のデータが盛り込まれているため、文字や画像等が細密になって見づらくなるという短所がある。このような文書データをプロジェクタ等で表示する際には、データの一部分を拡大して表示することがよく行われている。
文書データの拡大表示は従来よく知られており、例えば特許文献１には、文書データから文字や画像等を文書要素ごとに抽出し、文書要素の種類に適した拡大表示をする文書表示装置が記載されている。
特許文献２には、拡大領域を複数に分割し、１行分の文字列については先頭から終端までを一度に表示領域内に収まるように表示する表示装置が記載されている。
特許文献３には、画像を拡大して表示する拡大画像表示領域を設け、被拡大範囲の文字又は画像を拡大画像表示領域に収まるように拡大表示する表示装置が記載されている。
特許文献４には、タッチパネル上でペン入力或いは指入力によって指定した領域のＸ、Ｙ方向の長さから、画面一杯まで拡大したときのＸ、Ｙ方向の拡大率を求め、この拡大率のうち小さい方の拡大率を補正時の拡大率とするとともに、実際に拡大する領域を画面の縦横比に合わせて補正することにより、歪みのない拡大映像を得る映像拡大装置が記載されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら上述の各特許文献に開示されている従来技術においては、拡大表示時に表示領域が十分に活用されていないといった問題がある。拡大表示時における表示状態を図１９に基づいて説明する。図１９は、従来の表示画面例を示す図であり、（ａ）は通常表示状態を示す図であり、（ｂ）は拡大表示状態を示す図である。
表示画面１５００には、文書の内容を表示する文書表示領域１５１０と、それ以外の内容を表示する非文書表示領域１５２０と、が存在する。（ｂ）においては、文書表示領域１５１０内にて文書の内容を拡大表示しているにもかかわらず、非文書表示領域１５２０が表示画面１５００に占める割合が（ａ）から変化していない。このため、拡大表示時に１行の文字列を全て表示することができず、スクロール量を増加させる一因となっている。即ち、必要な箇所を表示するのに頻繁にスクロール操作をしなければならず、操作が煩雑である。
本発明は上述の事情に鑑みてなされたものであり、拡大表示時に非文書表示領域を消失させて表示可能な情報量を増加させることにより、表示装置の操作性を向上させた文書拡大表示方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記の課題を解決するために、請求項１に記載の発明は、任意のアプリケーションプログラムが表示する文書を拡大して表示する文書拡大表示方法を実行するための情報処理装置であって、画面表示領域に表示された文書からページ領域画像を取得し、該ページ領域画像を所定の拡大率に拡大して前記画面表示領域に表示する拡大表示制御手段と、前記画面表示領域の文書座標を算出し、算出された文書座標に基づいて上書画像データが前記画面表示領域内にあるか否かを判定し、前記画面表示領域内にあると判定された上書画像データを前記拡大率にて拡大するとともに、前記上書画像データの文書座標に基づいて前記画面表示領域に表示する上書き表示制御手段と、を少なくとも有することを特徴とする。
請求項２に記載の発明は、拡大表示制御手段、及び上書き表示制御手段を少なくとも有する情報処理装置の文書拡大表示方法であって、前記拡大表示制御手段が、画面表示領域に表示された文書からページ領域画像を取得し、該ページ領域画像を所定の拡大率に拡大して前記画面表示領域に表示するステップと、前記上書き表示制御手段が、前記画面表示領域の文書座標を算出し、算出された文書座標に基づいて上書画像データが前記画面表示領域内にあるか否かを判定し、前記画面表示領域内にあると判定された上書画像データを前記拡大率にて拡大するとともに、前記上書画像データの文書座標に基づいて前記画面表示領域に表示するステップと、を有することを特徴とする。
【０００５】
請求項３に記載の発明は、前記拡大表示制御手段は、前記ページ領域を識別する際に、文書領域内にある水平なライン画像を取得し、該ライン画像の先端又は後端から連続する同一色のピクセル部分を背景領域と判断する請求項２記載の文書拡大表示方法を特徴とする。
請求項４に記載の発明は、前記拡大表示制御手段は、前記アプリケーションプログラムの水平スクロールバー情報から水平文書位置を取得し、水平文書位置の値に基づいて背景領域の有無を判定する請求項２又は３記載の文書拡大表示方法を特徴とする。
請求項５に記載の発明は、前記拡大表示制御手段は、前記ページ領域の少なくとも一部を前記表示画面領域全体に拡大して表示する請求項２乃至４の何れか一項記載の文書拡大表示方法を特徴とする。
【０００６】
請求項６に記載の発明は、前記拡大表示制御手段は、表示画面の幅とページ領域の幅とに基づいてページ領域の拡大率を算出する請求項２乃至５の何れか一項記載の文書拡大表示方法を特徴とする。
請求項７に記載の発明は、前記上書き描画制御手段は、描画された上書画像データの座標から前記拡大率を参照して描画座標を算出し、前記上書画像データの種別及び前記描画座標並びに前記ページ領域画像を関連づけて上書画像データファイルに保存する請求項２乃至６の何れか一項記載の文書拡大表示方法を特徴とする。
請求項８に記載の発明は、請求項２乃至７の何れか一項記載の文書拡大表示方法を情報処理装置に実行させるプログラムを特徴とする。
請求項９に記載の発明は、請求項８記載のプログラムを記録した情報処理装置読み取り可能な記録媒体を特徴とする。
【発明の効果】
【０００７】
本発明によれば、画面表示領域に表示された文書のページ領域画像を取得して表示可能な領域を拡大するので、画面表示領域に表示される情報量が多くなり、スクロール操作を減らすことができる。
【図面の簡単な説明】
【０００８】
【図１】図１（ａ）乃至（ｃ）は、文書拡大表示方法を実施する情報処理装置及び情報処理システムの基本構成を示す図である。
【図２】スクロールバー情報を検出する方法を説明するための模式図であり、（ａ）はディスプレイの表示画面を示す模式図であり、（ｂ）は文書表示領域に表示された文書の文書全体に対する位置関係を示す模式図である。
【図３】汎用ＯＳ上で動作する任意のアプリケーションプログラムが表示する文書の文書位置検出方法の一例を示す模式図であり、（ａ）はディスプレイの表示画面を示す模式図であり、（ｂ）は文書表示領域に表示された文書の文書全体に対する位置関係を示す模式図であり、（ｃ）は文書座標情報テーブルの内容を示す図である。
【図４】上書画像データの取得について説明するための模式図である。
【図５】文書位置検出が効果を奏する応用例を説明するための模式図である。（ａ）は上書画像データの描画について説明するための図であり、（ｂ）及び（ｃ）は上書画像データの表示について説明するための図である。
【図６】表示文書をスクロールする方法を説明するための模式図である。
【図７】（ａ）（ｂ）はページ領域の検出方法を説明するための模式図である。
【図８】拡大表示時の文書位置検出方法を説明するための模式図であり、（ａ）は非拡大表示時における表示画面を示した模式図であり、（ｂ）は拡大表示時における文書表示領域と表示画面の大きさとの関係を示した模式図である。
【図９】ドラッグスクロールについて説明するための模式図であり、（ａ）は文書の拡大表示開始時の様子を示した模式図であり、（ｂ）はドラッグスクロール後の様子を示した模式図である。
【図１０】表示画面を示す模式図であり、（ａ）は標準表示状態を示す模式図であり、（ｂ）は拡大表示状態を示す図であり、（ｃ）標準表示状態に戻した状態を示す図である。
【図１１】アノテーションソフトウェアの機能構成図である。
【図１２】アノテーション制御のフローチャート図である。
【図１３】ツールバー制御のフローチャート図である。
【図１４】拡大表示制御のフローチャート図である。
【図１５】上書き描画制御のフローチャート図である。
【図１６】文書スクロール制御のフローチャート図である。
【図１７】拡大スクロール制御のフローチャート図である。
【図１８】上書き表示制御のフローチャート図である。
【図１９】従来の表示画面例を示す図であり、（ａ）は通常表示状態を示す図であり、（ｂ）は拡大表示状態を示す図である。
【発明を実施するための形態】
【０００９】
以下本発明を実施するための最良の形態を図面に基づいて説明する。本実施形態に係る文書拡大表示方法は、表示画面に表示された透明ウィンドウ上に描かれた上書き画像と、透明ウィンドウから透けて見える文書の内容とを一体的に拡大、縮小表示することが可能である。まず各処理を模式図に基づいて説明した後、機能構成図とフローチャートに基づいて説明する。
図１（ａ）乃至（ｃ）は、本実施形態に係る文書拡大表示方法を実施する情報処理装置及び情報処理システムの基本構成を示す図である。
図１（ａ）は、一般的なＰＣ（パーソナルコンピュータ）の構成を示す図である。例えばＰＣ１１００で、ワードプロセッサソフト等、一般的な文書作成アプリケーションで作成された文書１１５０をディスプレイ１１１０上に表示し、その表示された文書１１５０上に前記文書のデータを修正することなく、新たにこの文書に重ねて修正内容１１６０を上書描画して、この修正内容１１６０を文書１１５０における位置と関連付け保存して、文書１１５０の修正時に描画時の位置に修正内容１１６０を重ねて表示してこれを参照することにより文書修正を行うことができる。
また、図１（ｂ）は、ノートＰＣ（タブレットＰＣ）１２１０とプロジェクタ１２２０とを用い、スクリーン１２３０に文書１２４０を表示し、発言者の音声、文書１２４０上へのメモ描画１２５０を文書１２４０における位置と関連付け、時系列に保存し、会議不参加者に配布して、再確認等の目的により任意のＰＣ１２６０上で、ノートＰＣ１２１０に表示し保存した音声、メモ付きの文書をそのまま表示再生する例である。
更に、図１（ｃ）に示す例は、複数のＰＣ１３１０、１３２０、１３３０をネットワーク１３４０で接続し、すべてのＰＣ１３１０、１３２０、１３３０の表示状態を同一にすることにより文書を画面共有して、会議を行う例である。
【００１０】
〔１．スクロールバー情報〕
実施の形態例に係る上書データの処理方法の主な処理を図面に基づいて説明する。
はじめに文書におけるスクロールバー情報を取得する方法について説明する。図２はスクロールバー情報を検出する方法を説明するための模式図であり、（ａ）はディスプレイの表示画面を示す模式図であり、（ｂ）は文書表示領域に表示された文書の文書全体に対する位置関係を示す模式図である。
情報処理装置は、汎用ＯＳ（オペレーティングシステム、例えばＷｉｎｄｏｗｓ（登録商標）、ＭＡＣ  ＯＳ（登録商標）、Ｌｉｎｕｘ（登録商標）等）上で動作する任意のアプリケーションプログラム（Ｏｆｆｉｃｅ（登録商標）、ＭＳ  Ｗｏｒｄ（登録商標）、Ａｄｏｂｅ  Ａｃｒｏｂａｔ（登録商標）、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）等）が動作している。この例では、ディスプレイの表示画面１１０内の文書表示領域１２０に文書１３０が表示されている。また、文書表示領域１２０の下側には、水平スクロールボックス１４１を備え、文書１３０を水平方向へスクロール表示する水平スクロールバー１４０が、右側には垂直スクロールボックス１５１を備え文書１３０を垂直スクロール表示する垂直スクロールバー１５０が、上側にはタイトルバー１６０が配置されている。
【００１１】
スクロールバー情報が示す各値について説明する。ＶＰは垂直位置、すなわち表示領域上端が全ページ垂直長（ｖＭａｘ）に対しどの位置かを示す。ｖＰａｇｅは表示高、すなわち画面表示領域高が全ページ長（ｖＭａｘ）に対してどれだけかを示す。ｖＭａｘは文書高、すなわち先頭ページ上端から最終ページ下端までの文書長さを示す。ＨＰは水平位置、すなわち表示領域左端が表示ページ幅（ｈＭａｘ）に対しどの位置かを示す。ｈＰａｇｅは表示幅、すなわち画面表示領域幅が表示ページ幅（ｈＭａｘ）に対してどれだけかを示す。ｈＭａｘはページ幅、すなわち表示ページ左端から表示ページ右端までのページ長さを示す。
ＯＳが提供するＡＰＩ（アプリケーションインターフェース）により、任意のアプリケーションプログラムの垂直スクロールバー情報（ｖＭａｘ、ＶＰ、ｖＰａｇｅ）及び水平スクロールバー情報（ｈＭａｘ、ＨＰ、ｈＰａｇｅ）が取得される。
【００１２】
〔２．文書位置〕
次に、文書位置検出方法について図３に基づいて説明する。図３は汎用ＯＳ上で動作する任意のアプリケーションプログラムが表示する文書の文書位置検出方法の一例を示す模式図であり、（ａ）はディスプレイの表示画面を示す模式図であり、（ｂ）は文書表示領域に表示された文書の文書全体に対する位置関係を示す模式図であり、（ｃ）は文書座標情報テーブルの内容を示す図である。以下、Ｗｉｎｄｏｗｓ（登録商標）の例により説明する。
まず、ＯＳが提供するＡＰＩにより、表示ウィンドウ情報（ウィンドウ識別（ｄＨａｎｄｌｅ）、左上端座標（ＷＸ，ＷＹ）、幅（ＷＷ）、高さ（ＷＨ））を検索し、最大面積（ＷＷ×ＷＨ）のウィンドウを文書表示領域１２０とする。表示画面１１０の画面幅（ＳＷ）、画面高さ（ＳＨ）をＯＳが提供するＡＰＩにより取得する。
スクロールバー情報（スクロールバー識別（ｈＨａｎｄｌｅ）、左上端座標（ＷＸ０，ＷＹ０）、幅（ＷＷ０）、高さ（ＷＨ０））をＯＳが提供するＡＰＩにより検索し、文書表示領域１２０の下側端部に隣接するスクロールバーを文書表示領域１２０の水平スクロールバー１４０とする。水平スクロールバー１４０の水平スクロールボックス１４１の位置（ＨＰ）をＯＳが提供するＡＰＩにより取得する。
【００１３】
スクロールバー情報（スクロールバー識別（ｖＨａｎｄｌｅ）、左上端座標（ＷＸ１，ＷＹ１）、幅（ＷＷ１）、高さ（ＷＨ１））をＯＳが提供するＡＰＩにより検索し、文書領域の右側端部に隣接するスクロールバーを文書表示領域１２０の垂直スクロールバー１５０とする。垂直スクロールバー１５０の垂直スクロールボックス１５１の位置（ＶＰ）をＯＳが提供するＡＰＩにより取得する。
文書位置は、文書座標情報テーブル１７０にて水平文書位置（上述のＨＰ）及び垂直文書位置（上述のＶＰ）で管理される。
上書き操作時の座標（上書きページデータ）は、文書表示領域１２０の左上端座標（ＷＸ，ＷＹ）を原点とする相対座標で管理される。座標情報は文書座標情報テーブル１７０に格納される。上書きページデータはスクロール毎に管理される。
【００１４】
〔３．上書きデータ〕
文書に上書画像を描画し上書画像データを取得する処理について説明する。図４は上書画像データの取得について説明するための模式図である。本処理では、文書に上書描画を行いこの上書された文書についての上書画像データを書き込んだ上書情報テーブル２６０を作成し、上書データファイル２７０に格納する。
上書描画に際しては、図４中（１）に示すように、表示画面１１０の最前面に、表示画面１１０の全画面を覆うサイズであり背景に表示される文書１３０等が透けて見える透明ウィンドウ２１０が表示され、この透明ウィンドウ２１０上へ所定の上書画像を描くことにより、上書画像が文書１３０に上書されて表示される。
次いで、前述した方法で、表示中のアプリケーションの文書表示領域１２０の左上端座標（ＷＸ，ＷＹ）、文書領域幅（ＷＷ）、文書領域高さ（ＷＨ）、水平スクロールボックス位置（ＨＰ）、垂直スクロールボックス位置（ＶＰ）をＯＳが提供するＡＰＩにより取得して上書情報テーブル２６０に格納する。
【００１５】
上書画像としては、手書文字、手書図形（以下、手書文字及び手書図形をまとめて手書文字という）、幾何学図形、テキストなどがある。手書文字２２０は、マウスドラッグにより描かれ、この場合、図４の（２）に示すように、マウスドラッグ座標（Ｘｎ，Ｙｎ（ｎ＝０…Ｍ））間を順次、予め設定されている線幅、線色にて直線描画することにより描かれる。図示した例では、Ｍ＝５の場合を示している。描画座標は、下式に基づいて、文書領域左上端座標（ＷＸ，ＷＹ）を原点とする描画座標（Ｘ０，Ｙ０）に変換され、この描画座標が上書情報テーブル２６０に格納される。
Ｘ０＝Ｘ−ＷＸ
Ｙ０＝Ｙ−ＷＹ
上書画像が幾何学図形、例えば四角形２３０であるときには、図４の（３）に示すように、図形の４つの頂点座標（Ｘ０、Ｙ０、Ｘ１、Ｙ１、Ｘ２、Ｙ２、Ｘ３、Ｙ３）が取得される。また、図形が円や楕円であるときには、中心座標、半径等が文書領域左上端座標（ＷＸ，ＷＹ）を原点とする相対座標に変換され取得される。その他の幾何学図形についても、図形を特定する座標が取得され、上書情報テーブル２６０に格納される。
更に、上書画像がテキスト２４０であるときには、図４の（４）に示すように、テキストボックス２５０の左上端座標（ＴＸ，ＴＹ）が文書領域左上端座標（ＷＸ，ＷＹ）を原点とする相対座標に変換して取得され、上書情報テーブル２６０に格納される。
次に、対象ページの文書領域の画像データを取得し、図４の（５）に示すように、当該ページ分の文書画像データとする。ページ画像が上書データファイルに保存されていない場合は、ページ文書画像データ部総サイズは０となる。これらのデータは、上書情報テーブル２６０として上書データファイル２７０に格納される
【００１６】
〔４．文書位置検出応用例〕
文書位置検出の応用例を説明する。図５は、文書位置検出が効果を奏する応用例を説明するための模式図であり、（ａ）は上書画像データの描画について説明するための図であり、（ｂ）及び（ｃ）は上書画像データの表示について説明するための図である。
上書画像データの描画時においては（ａ）に示すように、「３．上書きデータ」にて説明したように、透明ウィンドウ２１０が表示されている。マウスドラッグ等により透明ウィンドウ２１０上へ図形１８０を描画すると、図形１８０は文書１３０に上書きされて表示される。このとき、表示されている文書１３０の文書位置（ＶＰ，ＨＰ）は、文書１３０の先頭ページ上端とページ左端を原点（ＶＰ＝０，ＨＰ＝０）として検出され、図形１８０の描画データを上書画像データとして、上書データファイル２７０に格納される。合わせて、図形１８０の描画領域と関連付けて、付箋ウィンドウ１９０が表示される。付箋ウィンドウ１９０には、補足説明等を入力することができ、その内容は上書データファイル２７０に格納される。補足説明を入力した後、付箋ウィンドウ１９０を閉じると、透明ウィンドウ２１０上へ付箋アイコン２００が表示される。
上書画像データは（ｂ）、（ｃ）に示すように、文書１３０の表示位置を「２．文書位置」にて説明した方法により自動検出し、表示画面に表示されている部分に上書画像データ（図形１８０）が存在する場合、上書画像データを上書データファイル２７０から呼び出して、描画したときと同じ文書位置に表示される。また、付箋アイコン２００をダブルクリックすることにより付箋ウィンドウ１９０を表示し、補足説明文書を表示される。
以上の手順により、元の文書１３０を変更することなく、文書１３０に対する修正指示や、文書１３０がマニュアル等である場合には補助解説等を擬似的に書き込むことが可能となる。
【００１７】
〔５．文書スクロール方法〕
透明ウィンドウの背景に表示される文書をスクロール表示する方法をＷｉｎｄｏｗｓ（登録商標）の例により説明する。本実施形態においては、表示画面の最前面に表示される透明ウィンドウ上でドラッグ操作することにより、背景に表示された文書をスクロール表示することができる。図６は、表示文書をスクロールする方法を説明するための模式図である。
まず、文書領域のウィンドウ識別（ウィンドウハンドル）であるｄＨａｎｄｌｅをＷｉｎｄｏｗｓ（登録商標）が提供するＡＰＩにより検索し、取得する。同様に、文書１３０を水平スクロール表示する水平スクロールバー識別であるｈＨａｎｄｌｅ及び文書１３０を垂直スクロール表示する垂直スクロールバー識別であるｖＨａｎｄｌｅを、Ｗｉｎｄｏｗｓ（登録商標）が提供するＡＰＩにより検索し、取得する。
【００１８】
例えば、点３００（Ｘ０，Ｙ０）から点３０１（Ｘ１，Ｙ１）へドラッグ操作が行われた場合、水平方向のドラッグ距離ＨＬとメッセージの送信回数ＨＮ、垂直方向のドラッグ距離ＶＬとメッセージの送信回数ＶＮを夫々算出し、以下のメッセージを文書領域ウィンドウへ送信することにより文書１３０をスクロール表示する。なお、以下のメッセージは、水平スクロールライン長が１６ｐｉｘｅｌ、垂直スクロールライン長が１６ｐｉｘｅｌの場合の例である。ここで、スクロールライン長とは、１回のメッセージで移動するピクセル長のことであり、検知手段により取得するものとする。
ＨＬ＝（Ｘ０−Ｘ１），ＨＮ＝絶対値（ＨＬ）÷１６
ＶＬ＝（Ｙ０−Ｙ１），ＶＮ＝絶対値（ＶＬ）÷１６
水平方向のスクロールに関して、
ＨＬ＜０の場合、ＨＮ回以下メッセージを送信する。
：：ＳｅｎｄＭｅｓｓａｇｅ（ｄＨａｎｄｌｅ，ＷＭ＿ＨＳＣＲＯＬＬ，ＳＢ＿ＬＩＮＥＬＥＦＴ，ｈＨａｎｄｌｅ）
ＨＬ＞０の場合、ＨＮ回以下メッセージを送信する。
：：ＳｅｎｄＭｅｓｓａｇｅ（ｄＨａｎｄｌｅ，ＷＭ＿ＨＳＣＲＯＬＬ，ＳＢ＿ＬＩＮＥＲＩＧＨＴ，ｈＨａｎｄｌｅ）
垂直方向のスクロールに関して、
ＶＬ＜０の場合、ＶＮ回以下メッセージを送信する。
：：ＳｅｎｄＭｅｓｓａｇｅ（ｄＨａｎｄｌｅ，ＷＭ＿ＶＳＣＲＯＬＬ，ＳＢ＿ＬＩＮＥＵＰ，ｖＨａｎｄｌｅ）
ＶＬ＞０の場合、ＶＮ回以下メッセージを送信する。
：：ＳｅｎｄＭｅｓｓａｇｅ（ｄＨａｎｄｌｅ，ＷＭ＿ＶＳＣＲＯＬＬ，ＳＢ＿ＬＩＮＥＤＯＷＮ，ｖＨａｎｄｌｅ）
ここで、ＳＢ＿ＬＩＮＥＤＯＷＮは、上方向にスクロールさせるスクロールコードである。このコードを送信することにより、表示全体が上へ移動し、下端に１ライン追加表示される。また、ＳＢ＿ＬＩＮＥＵＰは、下方向にスクロールさせるスクロールコードである。このコードを送信することにより、表示全体が下へ移動し、上端に１ライン追加表示される。
また、ＳＢ＿ＬＩＮＥＲＩＧＨＴは、左方向にスクロールさせるスクロールコードである。このコードを送信することにより、表示全体が左へ移動し、右端に１ライン追加表示される。また、ＳＢ＿ＬＩＮＥＬＥＦＴは、右方向にスクロールさせるスクロールコードである。このコードを送信することにより、表示全体が右へ移動し、左端に１ライン追加表示される。
【００１９】
〔６．ページ領域検出方法〕
ページ領域の検出方法を図７に基づいて説明する。図７は、ページ領域の検出方法を説明するための模式図である。なお、ページ領域とは、文書表示領域１２０から文書１３０が表示されていない背景領域を除いた領域のことである。
まず、ＯＳが提供するＡＰＩにより文書表示領域１２０を検出し、文書表示領域１２０の左上端座標（ＷＸ，ＷＹ）、幅（ＷＷ）、高さ（ＷＨ）を取得する。次に、水平スクロールバー１４０を検出し、水平文書位置（ＨＰ）、表示幅（ｈＰａｇｅ）、ページ幅（ｈＭａｘ）を取得する（ＨＰ、ｈＰａｇｅ、ｈＭａｘについては図２参照）。
文書表示領域１２０の最下位に位置する水平ラインに関し、始点座標を（ＷＸ，ＷＹ＋ＷＨ−１）とする、長さ（ＷＷ）のピクセル画像３２０（ライン画像）を取得する。
ここで、水平文書位置ＨＰ＝＝０である場合、ピクセル画像３２０の先頭画像１ピクセル（図７（ｂ）に示す配列［０］に相当する部分）の色を背景色と判断し、この色が連続する部分を背景色として検出し、その長さを左背景長（ＬＬ）とする。なお、ＨＰ＞０の場合は、文書表示領域１２０の左端に背景が存在しないと判断する。
また、ＨＰ＋ｈＰａｇｅ＝＝ｈＭａｘである場合、ピクセル画像３２０の最終画像１ピクセル（図７（ｂ）に示す配列［ＷＷ−１］に相当する部分）の色を背景色と判断し、この色が連続する部分を背景色として検出し、検出された長さを右背景長（ＬＲ）とする。なお、ＨＰ＋ｈＰａｇｅ＜ｈＭａｘの場合は、表示領域右端に背景が存在しないと判断する。
最後にページ領域３１０を左上端座標（ＷＸ＋ＬＬ，ＷＹ）、幅（ＷＷ−ＬＬ−ＬＲ）、高さ（ＷＨ）と決定する。
【００２０】
〔７．拡大表示文書位置検出〕
拡大表示された文書位置の検出方法について図８に基づいて説明する。図８は、拡大表示時の文書位置検出方法を説明するための模式図であり、（ａ）は非拡大表示時における表示画面を示した図であり、（ｂ）は拡大表示時における文書表示領域と表示画面の大きさとの関係を示した図である。なお、画面座標とは、画面表示領域４１０の左上端を基準とする座標であり、文書座標とは、拡大文書４３０（拡大された文書１３０）の原点（ＶＰ＝０，ＨＰ＝０）を基準とする座標である。
初めに、表示画面１１０の画面幅（ＳＷ）及び画面高さ（ＳＨ）、並びに任意のアプリケーションプログラムが表示する文書表示領域１２０の左上端座標（ＷＸ，ＷＹ）、幅（ＷＷ）及び高さ（ＷＨ）をＯＳが提供するＡＰＩにより取得する。また、「６．ページ領域検出方法」にて説明した方法により、左背景長（ＬＬ）と右背景長（ＬＲ）を検出し、ページ領域３１０を取得する。更に、「２．文書位置」にて説明した方法により、文書位置（ＶＰ，ＨＰ）を取得する。
ここで、図８（ｂ）に示すように、文書表示領域１２０は、所定倍率Ｌ（例：１．５倍、２．０倍等）にて拡大され、拡大文書表示領域４２０となっている。表示画面１１０に表示できるのは、画面表示領域４１０（ＲＷ×ＲＨ）の内容である。拡大文書左端長（Ｈ）、拡大文書上端長（Ｖ）、画面表示領域４１０の左上端の文書座標（ＲＸ，ＲＹ）、画面表示領域４１０の文書幅（ＲＷ）、画面表示領域４１０の文書高さ（ＲＨ）とすると、（ＲＸ，ＲＹ）、ＲＷ、ＲＨは以下のように算出される。
ＲＸ＝ＨＰ＋ＬＬ＋Ｈ÷Ｌ
ＲＹ＝ＶＰ＋Ｖ÷Ｌ
ＲＷ＝ＳＷ÷Ｌ
ＲＨ＝ＳＨ÷Ｌ
また、図８（ｂ）に示す点４０１の画面座標を（Ｘ，Ｙ）とすると、点４０１の文書座標（ＰＸ，ＰＹ）は以下のように算出される。
ＰＸ＝ＲＸ＋Ｘ÷Ｌ
ＰＹ＝ＲＹ＋Ｙ÷Ｌ
また、点４０２の文書座標（ＨＰ０，ＶＰ０）が画面表示領域４１０内にある条件は、
ＲＸ＜＝ＨＰ０＜（ＲＸ＋ＲＷ）かつ、
ＲＹ＜＝ＶＰ０＜（ＲＹ＋ＲＨ）である。
また、点４０２の画面座標（Ｘ０，Ｙ０）は、以下のように算出される。
Ｘ０＝（ＨＰ０−ＲＸ）×Ｌ
Ｙ０＝（ＶＰ０−ＲＹ）×Ｌ
【００２１】
〔８．拡大表示スクロール〕
拡大表示時におけるスクロール方法について、図９に基づいて説明する。図９は、ドラッグスクロールについて説明するための模式図であり、（ａ）は文書の拡大表示開始時の様子を示した図であり、（ｂ）はドラッグスクロール後の様子を示した図である。本実施形態においては、マウスドラッグ操作をすることにより、文書をスクロール表示することができる。
（ａ）に示すように、文書の拡大表示開始時には、拡大文書表示領域４２０の左上端（Ｈ＝０，Ｖ＝０）が画面表示領域４１０（表示画面１１０）の左上端（Ｘ＝０，Ｙ＝０）となるように表示される。このとき、拡大文書左端長（Ｈ０=０）、拡大文書上端長（Ｖ０=０）となる。
ドラッグスクロールでは、例えば表示画面１１０上の点４０１（画面座標（Ｘ，Ｙ））においてマウス左ボタンを押下し、点４０２（画面座標（Ｘ０，Ｙ０））までドラッグすることにより、拡大文書４３０をドラッグ方向へスクロール表示する。
ドラッグスクロール中の拡大文書左端長（Ｈ）と、拡大文書上端長（Ｖ）は以下のように算出される。
Ｈ＝Ｈ０＋（Ｘ−Ｘ０）
Ｖ＝Ｖ０＋（Ｙ−Ｘ０）
ドラッグスクロール中においては、順次拡大文書左端長（Ｈ）と、拡大文書上端長（Ｖ）を算出し、算出した値に基づいて拡大文書表示領域４２０を画面表示領域１１０に表示していく。
【００２２】
〔９．拡大表示操作方法〕
文書を拡大表示する際の操作方法について図１０に基づいて説明する。図１０は表示画面を示す模式図であり、（ａ）は標準表示状態を示す模式図であり、（ｂ）は拡大表示状態を示す図であり、（ｃ）標準表示状態に戻した状態を示す図である。
「３．上書きデータ」において説明したように、文書１３０へ上書き可能なデータは手書文字、幾何学図形、テキストなどがある。以下では便宜上、手書文字についてのみ説明する。また、上書きを制御するソフトウェアをアノテーションソフトウェアと呼ぶ。
まず、ＯＳ（Ｗｉｎｄｏｗｓ（登録商標））が提供する起動手段（デスクトップのアイコンのダブルクリック等）によりアノテーションソフトウェアが動作を開始する。ソフトウェアの動作開始時に、透明ウィンドウ２１０が表示される。上書き描画は透明ウィンドウ２１０上にされることとなる。続いて透明ウィンドウ２１０上にアノテーションツールバー５００を表示する。アノテーションツールバー５００には、「上書」、「スクロール」、「拡大」、「終了」の各ボタンが表示される。
【００２３】
アノテーションツールバー５００について説明する。「上書」ボタンを押下することにより、文書１３０上へ手書文字の描画が可能となる。「スクロール」ボタンを押下することにより、「８．拡大表示スクロール」にて説明したスクロール表示がされる。すなわち、文書１３０上でドラッグ操作することにより水平方向の移動量に相当する水平スクロールメッセージ、及び垂直方向の移動量に相当する垂直スクロールメッセージを文書表示ウィンドウへ送信して文書をスクロール表示する。「拡大」ボタンを押下することにより、表示倍率メニュー５１０を表示し、選択された拡大率にて文書表示領域１２０を拡大表示する。「終了」ボタンを押下することにより、透明ウィンドウ２１０を閉じて上書画像データを保存し、アノテーションソフトウェアを終了する。表示倍率メニュー５１０の「画面」ボタンを押下することにより、ページ領域を画面サイズとなる倍率に拡大して表示する。詳述すれば、ページ領域の幅を画面幅に拡大する倍率にてページ領域を拡大して表示画面１１０に表示する。
【００２４】
図１０（ａ）では、透明ウィンドウ２１０上に手書文字５３０が描画されている。手書文字５３０は、透明ウィンドウ２１０上にてマウスドラッグ操作をすることにより、ドラッグ座標間に順次描画される。なお、手書文字５３０の線種・線色は事前に設定する。
図１０（ｂ）は、文書１３０を２００％に拡大表示した様子を示している。拡大表示時においては、まずページ領域の画像を取得して全画面サイズのウィンドウを作成し、作成したウィンドウへ拡大画像を表示する。
拡大表示時のアノテーションツールバー５２０には、「上書」、「スクロール」、「標準」の各ボタンが表示される。「上書」ボタンはアノテーションツールバー５００の「上書」ボタンに相当するので、その説明を省略する。「スクロール」ボタンを押下することにより、拡大表示画像をドラッグスクロール表示する。「標準」ボタンを押下することにより、（ａ）に示す標準表示状態へ移行する。
（ｂ）に示すように、拡大表示時には、標準表示時に描画された手書文字５３０を、標準表示時の描画文書位置へ、描画線の太さを文書１３０の拡大率と同率の２００％に拡大して描画する。また、拡大表示時においても、新たな手書文字５４０を描画できる。このとき、手書文字５４０の描画座標を標準表示時の文書座標へ変換して保存する。
（ｂ）から（ｃ）の標準表示状態に移行したときは、拡大表示時に描画された手書文字５４０を描画時の文書位置へ描画線に設定されている太さで描画する。
【００２５】
〔１０．アノテーション制御機能構成〕
アノテーションソフトウェアの機能構成について説明する。図１１は、アノテーションソフトウェアの機能構成図である。
アノテーションソフトウェア６００はＯＳ（Ｗｉｎｄｏｗｓ（登録商標））が提供するプログラム起動手段により起動される。マウスデータ７００を入力し、ＯＳ上で動作する他のアプリケーションソフトウェア（Ｗｏｒｄ、Ａｃｒｏｂａｔ等）が表示する文書上へ上書きするともに、文書スクロールを実行する。
アノテーション制御６１０は、アノテーションソフトウェア６００の起動時に初期化され、表示画面１１０に透明ウィンドウ２１０と、アノテーションツールバー５００を表示する。マウスデータ７００を入力し、後述するツールバー制御６２０、文書スクロール制御６３０、拡大スクロール制御６４０、及び上書き描画制御６５０を実行する。
ツールバー制御６２０はアノテーションツールバー５００のボタンを押下することによりボタンに設定されている機能を実行する。文書スクロール制御６３０は、文書１３０上でのドラッグ操作により文書１３０をスクロール表示する。拡大スクロール制御６４０は、拡大画像上でのドラッグ操作により拡大画像をスクロール表示する。上書き描画制御６５０は、ドラッグ操作により座標間に線を描画し、上書画像データを画面座標から文書座標へ変換して保存する。拡大表示制御６６０は、ページ領域を検出し、ページ領域画像を拡大表示する。上書き表示制御６７０は、モード変更時（通常表示→拡大表示、拡大表示→通常表示）及びスクロール実行時に、画面表示領域への上書画像データを上書データファイル２７０から呼び出して、描画する。制御情報テーブル６８０はアノテーション制御６１０乃至上書き表示制御６７０の全制御から参照可能な領域に保存され、アノテーション処理を制御する。
【００２６】
尚、画面表示領域に表示された文書からページ領域画像を取得し、ページ領域画像を所定の拡大率に拡大して画面表示領域に表示する拡大表示制御（拡大表示制御手段）６６０と、画面表示領域の文書座標を算出し、算出された文書座標に基づいて画面表示領域内にある上書画像データを判定し、画面表示領域内にある上書画像データを拡大率にて拡大するとともに、上書画像データの文書座標に基づいて画面表示領域に表示する上書き表示制御（上書き表示制御手段）６７０と、を少なくとも有するＰＣ（情報処理装置）１１００を構成する各機能をそれぞれプログラム化し、あらかじめＣＤ−ＲＯＭ等の記録媒体に書き込んでおき、コンピュータに搭載したＣＤ−ＲＯＭドライブのような媒体駆動装置にこのＣＤ−ＲＯＭ等を装着して、これらのプログラムをコンピュータのメモリあるいは記憶装置に格納し、それを実行することによって、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、そのプログラムおよびそのプログラムを記録した記録媒体も本発明を構成することになる。
【００２７】
〔１１．アノテーション制御フロー〕
図１２を参照してアノテーション制御６１０のフローチャートを説明する。
［Ｓ１］ＯＳが提供するＡＰＩによりウィンドウを検索し、最前面に表示されている最大ウィンドウを文書領域ウィンドウとする。
［Ｓ２］文書領域ウィンドウ識別、文書領域左上端座標（ＷＸ，ＷＹ）、文書領域幅（ＷＷ）、及び文書領域高（ＷＨ）を取得し、制御情報テーブル６８０へ保存する。
［Ｓ３］ＯＳが提供するＡＰＩによりスクロールバーを検索し、文書表示領域１２０右端に位置するスクロールバーを垂直スクロールバー１５０とする。
［Ｓ４］垂直スクロールバー識別を制御情報テーブル６８０へ保存する。
［Ｓ５］ＯＳが提供するＡＰＩによりスクロールバーを検索し、文書表示領域１２０下端に位置するスクロールバーを水平スクロールバー１４０とする。
［Ｓ６］水平スクロールバー識別を制御情報テーブル６８０へ保存する。
［Ｓ７］表示画面１１０の最前面へ全画面サイズの透明ウィンドウ２１０を表示する。
［Ｓ８］アノテーションツールバー５００を表示する。
［Ｓ９］制御情報テーブル６８０について、制御モード（上書き）、表示倍率（１．０）、左背景長（０）、右背景長（０）、描画線色（赤）、描画線幅（１６ピクセル）、前回座標（−１，−１）、拡大文書左端長（０）、及び拡大文書上端長（０）に初期設定する。なお、前回座標（−１，−１）は、無効値である。
【００２８】
［Ｓ１０］マウスデータが入力されたら次のステップへ進む。
［Ｓ１１］マウス座標（Ｘ座標，Ｙ座標）がアノテーションツールバー５００上か判定する。
［Ｓ１２］アノテーションツールバー５００上であるとき、マウスデータを渡し「ツールバー制御６２０」を実行する。
［Ｓ１３］制御モードが「上書き」か否かを判定する。
［Ｓ１４］上書きモードのとき、マウスデータを渡し「上書き描画制御６５０」を実行する。
［Ｓ１５］制御モードが「文書スクロール」か否かを判定する。
【００２９】
［Ｓ１６］文書スクロールモードのとき、「文書スクロール制御６３０」を実行する。
［Ｓ１７］制御モードが「拡大スクロール」か否かを判定する。
［Ｓ１８］拡大スクロールモードのとき、「拡大スクロール制御６４０」を実行する。
［Ｓ１９］制御モードが「終了」か否かを判定する。
［Ｓ２０］終了モードのとき、透明ウィンドウ２１０を消去する。
［Ｓ２１］上書画像データを上書データファイル２７０に保存して終了する。
【００３０】
〔１２．ツールバー制御フロー〕
図１３を参照してツールバー制御６２０のフローチャート（Ｓ１２）を説明する。ツールバー制御６２０はマウスデータ７００（Ｘ座標，Ｙ座標，ステータス）を入力値として実行される。
［Ｓ３１］マウス座標がアノテーションツールバー５００の「上書き」ボタン上か判定する。
［Ｓ３２］上書きボタン上のとき、制御情報テーブル６８０の「制御モード」を「上書き」に設定する。
［Ｓ３３］制御情報テーブル６８０の前回座標を（−１，−１）に設定して、サブルーチンを終了する。
［Ｓ３４］Ｓ３１でＮｏのとき、マウス座標がアノテーションツールバー５００の「スクロール」ボタン上か判定する。
［Ｓ３５］スクロールボタン上のとき、制御情報テーブル６８０の前回座標を（−１，−１）に設定する。
【００３１】
［Ｓ３６］制御情報テーブル６８０に保存された現在の表示倍率Ｌが「１．０」か否かを判定する。
［Ｓ３７］表示倍率「１．０」のとき、制御情報テーブル６８０の制御モードを「文書スクロール」に設定して、サブルーチンを終了する。
［Ｓ３８］表示倍率「１．０」でないときは拡大表示中であると判断し、制御情報テーブル６８０の制御モードを「拡大スクロール」に設定して、サブルーチンを終了する。
［Ｓ３９］Ｓ３４でＮｏのとき、マウス座標がアノテーションツールバー５００の「拡大」ボタン上か判定する。
［Ｓ４０］拡大ボタン上のとき、「表示倍率メニュー５１０」（画面、１５０％、２００％、３００％）を表示して、サブルーチンを終了する。
［Ｓ４１］Ｓ３９でＮｏのとき、マウス座標が「表示倍率メニュー５１０」上か判定する。
［Ｓ４２］制御情報テーブル６８０について文書領域左上端座標（０，０）、文書領域幅（画面幅）、文書領域高さ（画面高さ）、前回座標（−１，−１）に初期設定する。
［Ｓ４３］表示倍率を渡し、「拡大表示制御６６０」を実行する。
［Ｓ４４］「上書き表示制御６７０」を実行し、拡大表示時の文書位置へ上書きを表示する。
［Ｓ４５］アノテーションツールバー５００の表示を拡大表示時のアノテーションツールバー５２０（上書き、スクロール、標準）へ変更して、サブルーチンを終了する。
【００３２】
［Ｓ４６］Ｓ４１でＮｏのとき、マウス座標がアノテーションツールバー５２０「標準」ボタン上か判定する。
［Ｓ４７］標準ボタン上のとき、制御情報テーブル６８０の文書領域ウィンドウ識別情報を取得し、制御情報テーブル６８０について文書領域左上端座標（ＷＸ，ＷＹ）、文書領域幅（ＷＷ）、文書領域高さ（ＷＨ）、表示倍率（１．０）、左背景長（０）、右背景長（０）、拡大文書左端長（０）、拡大文書上端長（０）に初期設定する。
［Ｓ４８］拡大表示ウィンドウを消去する。消去により、拡大表示ウィンドウの下に表示されていたアプリケーションが表示される。
［Ｓ４９］「上書き表示制御６７０」を実行し、アプリケーション表示時の文書位置へ上書きを表示する。
［Ｓ５０］アノテーションツールバー５２０をアプリケーション表示時のアノテーションツールバー５００（上書き、スクロール、拡大、終了）へ変更して、サブルーチンを終了する。
［Ｓ５１］Ｓ４６でＮｏのとき、マウス座標がアノテーションツールバー５００の「終了」ボタン上か判定する。
［Ｓ５２］終了ボタン上（Ｓ５１でＹｅｓ）のとき、制御情報テーブル６８０の「制御モード」を「終了」に設定して、サブルーチンを終了する。
Ｓ５１でＮｏのとき、サブルーチンを終了する。
【００３３】
〔１３．拡大表示制御フロー〕
図１４を参照して拡大表示制御６６０のフローチャート（Ｓ４３）を説明する。拡大表示制御６６０は表示倍率メニュー５１０から選択された表示倍率を入力値として実行される。
［Ｓ６１］文書領域最下位１ライン画像データを取得する。
［Ｓ６２］「６．ページ領域検出方法」にて説明した方法によりページ領域を検出する。
［Ｓ６３］検出した左背景長ＬＬを制御情報テーブル６８０の「左背景長」に保存する。
［Ｓ６４］検出した右背景長ＬＲを制御情報テーブル６８０の「右背景長」に保存する。
［Ｓ６５］入力された表示倍率が「画面」か否かを判定する。
［Ｓ６６］表示倍率が「画面」（Ｓ６５でＹｅｓ）のとき、次の式により表示倍率を算出する。
表示倍率（Ｌ）＝画面幅÷（ＷＷ−ＬＬ−ＬＲ）
［Ｓ６７］制御情報テーブル６８０の「表示倍率」に算出した表示倍率を保存する。
［Ｓ６８］ページ領域画像を取得する。
［Ｓ６９］ページ領域画像を拡大して、情報制御テーブル６８０の「ページ領域画像」へ保存する。
［Ｓ７０］拡大画像を表示する全画面サイズのウィンドウを表示する。
［Ｓ７１］拡大画像左上端領域をウィンドウ左上端へ表示する。
［Ｓ７２］制御情報テーブル６８０の「拡大文書左端長」に「０」を保存する。
［Ｓ７３］制御情報テーブル６８０の「拡大文書上端長」に「０」を保存する。
サブルーチンを終了する。
【００３４】
〔１４．上書き描画制御フロー〕
図１５を参照して、上書き描画制御６５０のフローチャート（Ｓ１４）を説明する。上書き描画制御６５０はマウスデータ（Ｘ座標、Ｙ座標、ステータス）を入力値として実行される。
［Ｓ８１］制御情報テーブル６８０の「前回座標」が無効値（−１，−１）か判定する。Ｙｅｓの場合［Ｓ８７］の処理を実行する。
［Ｓ８２］前回座標が有効値の場合（［Ｓ８１］でＮｏ）、制御情報テーブル６８０の「描画線幅」を表示倍率（Ｌ）で拡大する。
［Ｓ８３］線幅、制御情報テーブル「描画線色」にて前回座標−今回座標（入力値）間を線描画する。
［Ｓ８４］描画座標Ｘを下記式により算出する。
描画座標Ｘ＝（Ｘ座標＋拡大文書左端長（Ｈ））÷表示倍率（Ｌ）＋左背景長（ＬＬ）−文書領域左上端座標（ＷＸ）
（拡大表示時：ＷＸ＝０、標準表示時：ＬＬ＝０、Ｈ＝０、Ｌ＝１．０）
［Ｓ８５］描画座標Ｙを下記式により算出する。
描画座標Ｙ＝（Ｙ座標＋拡大文書上端長（Ｖ））÷表示倍率（Ｌ）−文書領域左上端座標（ＷＹ）
（拡大表示時：ＷＹ＝０、標準表示時：Ｖ＝０、Ｌ＝１．０）
［Ｓ８６］描画座標データを保存する。
［Ｓ８７］今回座標（Ｘ座標，Ｙ座標）を制御情報テーブル６８０の「前回座標」へ保存してサブルーチンを終了する。
【００３５】
〔１５．文書スクロール制御フロー〕
図１６を参照して文書スクロール制御６３０のフローチャート（Ｓ１６）を説明する。この制御はマウスデータ（Ｘ座標，Ｙ座標，ステータス）を入力値として実行される。ステータス０：ＯＮはドラッグ開始時に、ステータス１：ＯＦＦはドラッグ終了時に１回だけ通知される。
［Ｓ９１］垂直移動量を算出する。
垂直移動量＝前回座標Ｙ−今回座標Ｙ
［Ｓ９２］垂直スクロール数を算出する。
垂直スクロール数＝垂直移動量÷垂直スクロールライン長
垂直移動量を下記式により求めた値とする。
垂直移動量＝垂直スクロール数×垂直スクロールライン長
［Ｓ９３］垂直スクロール数メッセージ（：：ＳｅｎｄＭｅｓｓａｇｅ（））を送信するか否か判定する。送信しない場合（Ｎｏ）Ｓ９８に進む。
［Ｓ９４］メッセージを送信する場合（Ｓ９３でＹｅｓ）、下から上へのドラッグ操作か判定する。Ｓ９４がＮｏのとき、Ｓ９６に進む。
［Ｓ９５］下から上へのドラッグ操作のとき（Ｓ９４でＹｅｓ）、上スクロールメッセージ（ＳＢ＿ＬＩＮＥＤＯＷＮ）を文書領域ウィンドウへ送信する。
［Ｓ９６］上から下へのドラッグ操作のとき（Ｓ９４でＮｏ）、下スクロールメッセージ（ＳＢ＿ＬＩＮＥＵＰ）を文書領域ウィンドウへ送信する。
［Ｓ９７］メッセージ送信カウンターとしての垂直スクロール数を減算する。
［Ｓ９８］水平移動量を算出する。
水平移動量＝前回座標Ｘ−今回座標Ｘ
［Ｓ９９］水平スクロール数を算出する。
水平スクロール数＝水平移動量÷水平スクロールライン長
水平移動量を下記式により求めた値とする。
水平移動量＝水平スクロール数×水平スクロールライン長
［Ｓ１００］水平スクロール数メッセージ（：：ＳｅｎｄＭｅｓｓａｇｅ（））を送信するか否か判定する。送信しないとき（Ｎｏ）Ｓ１０５に進む。
【００３６】
［Ｓ１０１］メッセージを送信するとき（Ｓ１００でＹｅｓ）、右から左へのドラッグ操作か判定する。
［Ｓ１０２］右から左へのドラッグ操作のとき（Ｓ１０１でＹｅｓ）、左スクロールメッセージ（ＳＢ＿ＬＩＮＥＲＩＧＨＴ）を文書領域ウィンドウへ送信する。
［Ｓ１０３］左から右へのドラッグ操作のとき（Ｓ１０１でＮｏ）、右スクロールメッセージ（ＳＢ＿ＬＩＮＥＬＥＦＴ）を文書領域ウィンドウへ送信する。
［Ｓ１０４］メッセージ送信カウンターとしての水平スクロール数を減算する。
［Ｓ１０５］ステータス「ＯＮ」か否かを判定する。ＮｏのときＳ１０７に進む。
［Ｓ１０６］Ｓ１０５でＹｅｓのとき、ドラッグ開始時に、上書ページデータ２６１（図４参照）を保存する。
［Ｓ１０７］垂直文書位置（ＶＰ）を垂直移動量更新する。
［Ｓ１０８］水平文書位置（ＨＰ）を水平移動量更新する。
［Ｓ１０９］「上書き表示制御６７０」を実行し、スクロール後の文書位置への上書きを表示する。
［Ｓ１１０］今回座標を制御情報テーブル「前回座標」へ保存する。
【００３７】
〔１６．拡大スクロール制御フロー〕
図１７を参照して拡大スクロール制御６４０のフローチャート（Ｓ１８）を説明する。拡大スクロール制御はマウスデータ（Ｘ座標、Ｙ座標、ステータス）を入力値として実行される。
［Ｓ１１１］垂直移動量を下記式により算出する。
垂直移動量＝前回座標Ｙ−今回座標Ｙ
［Ｓ１１２］下から上へのドラッグ操作か判定する。上から下へのドラッグ操作（Ｎｏ）のとき、Ｓ１１５に進む。
［Ｓ１１３］下から上へのドラッグ操作のとき（Ｓ１１２でＹｅｓ）垂直移動量表示画像を上へ移動する。
［Ｓ１１４］下端移動領域の画像を制御情報テーブル「ページ領域画像」から取得し、下端移動領域へ表示する。その後Ｓ１１７の処理を実行する。
［Ｓ１１５］上から下へのドラッグ操作のとき（Ｓ１１２でＮｏ）垂直移動量表示画像を下へ移動する。
［Ｓ１１６］上端移動領域の画像を制御情報テーブル「ページ領域画像」から取得、上端移動領域へ表示する。
［Ｓ１１７］水平移動量を下記式により算出する。
水平移動量＝前回座標Ｙ−今回座標Ｙ
［Ｓ１１８］右から左へのドラッグ操作か判定する。右から左へのドラッグ操作（Ｎｏ）のとき、Ｓ１２１に進む。
［Ｓ１１９］右から左へのドラッグ操作のとき（Ｓ１１８でＹｅｓ）、水平移動量表示画像を左へ移動する。
［Ｓ１２０］右端移動領域の画像を制御情報テーブル「ページ領域画像」から取得し、右端移動領域へ表示する。その後Ｓ１２３の処理を実行する。
［Ｓ１２１］左から右へのドラッグ操作のとき（Ｓ１１８でＮｏ）、水平移動量表示画像を右へ移動する。
［Ｓ１２２］左端移動領域の画像を制御情報テーブル「ページ領域画像」から取得し、左端移動領域へ表示する。
［Ｓ１２３］拡大文書上端長を垂直移動量更新する。
［Ｓ１２４］拡大文書左端長を水平移動量更新する。
［Ｓ１２５］サブルーチン「上書き表示制御」を実行し、スクロール後の文書位置への上書きを表示する。
［Ｓ１２６］今回座標を制御情報テーブル「前回座標」へ保存する。
サブルーチンを終了する。
【００３８】
〔１７．上書き表示制御フロー〕
図１８を参照して、上書き表示制御６７０のフローチャート（Ｓ４４、Ｓ４９、Ｓ１０９、Ｓ１１５）を説明する。
［Ｓ１３１］表示領域左端文書座標を下記式により算出する。
表示左端座標（ＨＬ）＝水平文書位置（ＨＰ）＋左背景長（ＬＬ）＋拡大文書左端長（Ｈ）÷表示倍率（Ｌ）
（標準表示時：ＬＬ＝０、Ｈ＝０、Ｌ＝１．０）
［Ｓ１３２］表示領域右端文書座標を下記式により算出する。
表示座標右端（ＨＲ）＝表示座標左端（ＨＬ）＋文書領域幅（ＷＷ）÷表示倍率（Ｌ）
（拡大表示時：ＷＷ＝画面幅、ＷＨ＝画面高さ）
［Ｓ１３３］表示領域上端文書座標を下記式により算出する。
表示上端座標（ＶＴ）＝垂直文書位置（ＶＰ）＋拡大文書上端長（Ｖ）÷表示倍率（Ｌ）
［Ｓ１３４］表示領域下端文書座標を下記式により算出する。
表示領端座標（ＶＢ）＝表示上端座標（ＶＴ）＋文書領域高さ（ＷＨ）÷表示倍率（Ｌ）
［Ｓ１３５］上書データファイル２７０から「上書きページ総数（Ｐ）」を設定する。
［Ｓ１３６］上書画像データを全て処理したか判定する。全て処理した場合（Ｓ１３６でＮｏ）は、サブルーチンを終了する。
【００３９】
［Ｓ１３７］Ｓ１３６でＹｅｓのとき、上書情報テーブル２６０から上書きページデータを入力する。
［Ｓ１３８］上書情報テーブル２６０からページストローク数（Ｎ）を設定する。なお、１ストロークは左ボタンＯＮから左ボタンＯＦＦまでの描画のことであり、上書き描画時に上書情報テーブル２６０に格納されたものである。
［Ｓ１３９］上書きページの全ストロークを処理したか判定する。全ストロークを処理した場合（Ｎｏ）は、Ｓ１５６の処理を行う。
［Ｓ１４０］Ｓ１３９でＹｅｓのとき、１ストロークの描画座標数（Ｏ）を設定する。
［Ｓ１４１］描画幅＝線幅×表示倍率（Ｌ）に設定する。
［Ｓ１４２］直前座標を無効（−１，−１）に設定する。
［Ｓ１４３］ストロークの全描画座標を処理したか判定する。全描画座標を処理した場合（Ｓ１４３でＮｏ）は、Ｓ１５５の処理を行う。
［Ｓ１４４］Ｓ１４３でＹｅｓのとき、下記式により文書座標Ｘを算出する。
文書座標Ｘ＝水平文書位置（ＨＰ）＋描画座標Ｘ
［Ｓ１４５］下記式により文書座標Ｙを算出する。
文書座標Ｙ＝垂直文書位置（ＶＰ）＋描画座標Ｙ
【００４０】
［Ｓ１４６］文書座標ＸがＳ１３１、Ｓ１３２にて算出した範囲内、すなわちＨＬ＜＝Ｘ＜ＨＲにあるか判定する。範囲内にないとき（Ｓ１４６でＮｏ）、Ｓ１５３の処理を行う。
［Ｓ１４７］Ｓ１４６でＹｅｓのとき、文書座標ＹがＳ１３３、Ｓ１３４にて算出した範囲内、すなわちＶＴ＜＝Ｙ＜ＶＢにあるか判定する。範囲内にないとき（Ｓ１４７でＮｏ）、Ｓ１５３の処理を行う。
［Ｓ１４８］文書領域内文書座標である場合（Ｓ１４６、Ｓ１４７ともにＹｅｓ）、文書座標Ｘを画面座標Ｘへ変換する。
画面座標Ｘ＝（文書座標Ｘ−表示左端座標（ＨＬ）＋文書領域左上端座標（ＷＸ））×表示倍率（Ｌ）
［Ｓ１４９］文書領域内文書座標である場合（Ｓ１４６、Ｓ１４７ともにＹｅｓ）、文書座標Ｙを画面座標Ｙへ変換する。
画面座標Ｙ＝（文書座標Ｙ−表示上端座標（ＶＴ）＋文書領域左上端座標（ＷＹ））×表示倍率（Ｌ）
［Ｓ１５０］線描画する直前座標が無効値か否か判定する。無効値のとき（Ｓ１５０でＹｅｓ）、Ｓ１５２の処理を行う。
［Ｓ１５１］Ｓ１５０でＮｏのとき、画面座標・直線座標間を描画幅、線色にて線描画する。
［Ｓ１５２］画面座標を直前座標として保存する。
［Ｓ１５３］直前座標を無効値（−１，−１）に設定する。
［Ｓ１５４］描画座標数を減算する。
［Ｓ１５５］ページストローク数を減算する。
［Ｓ１５６］上書きページ数を減算する。
【００４１】
以上説明したように、本発明によれば、画面表示領域に表示された文書のページ領域画像を取得して拡大するので、画面表示領域に表示される情報量が多くなり、スクロール操作を減らすことができる。その結果、会議やプレゼンテーションを円滑に進行できる。
また、文書表示領域から背景を除いたページ領域を検出して拡大表示できる。また、ページ領域を表示画面領域全体に拡大して表示することができる。また、表示画面の幅に合わせてページ領域を拡大することができる。また、文書位置と上書き画像の位置とを関連付けて保存するので、スクロール表示時も同一の文書位置へ上書画像データを表示できる。また、拡大表示時に上書き画像を描画することができ、また描画した上書き画像を標準表示時に縮小表示するので、狭い領域により多くの上書き画像を記録できる。
また、本発明にかかるアノテーションソフトウェアをＣＤ−ＲＯＭ等、コンピュータが読み取り可能な記録媒体に記録することで、第三者への配布が可能となる。
【符号の説明】
【００４２】
１１０…表示画面、１２０…文書表示領域、１３０…文書、１４０…水平スクロールバー、１４１…水平スクロールボックス、１５０…垂直スクロールバー、１５１…垂直スクロールボックス、１６０…タイトルバー、１７０…文書座標情報テーブル、１９０…付箋ウィンドウ、２００…付箋アイコン、２１０…透明ウィンドウ、２２０…手書文字、２３０…四角形、２４０…テキスト、２５０…テキストボックス、２６０…上書情報テーブル、２６１…上書ページデータ、２７０…上書データファイル、３００、３０１…点、３１０…ページ領域、３２０…ピクセル画像、４０１、４０２…点、４１０…画面表示領域、４２０…拡大文書表示領域、４３０…拡大文書、５００…アノテーションツールバー、５１０…表示倍率メニュー、５２０…アノテーションツールバー、５３０…手書文字、５４０…手書文字、６００…アノテーションソフトウェア、６１０…アノテーション制御、６２０…ツールバー制御、６３０…文書スクロール制御、６４０…拡大スクロール制御、６５０…描画制御、６６０…拡大表示制御、６７０…表示制御、６８０…情報制御テーブル、６８０…制御情報テーブル、７００…マウスデータ、１１００…ＰＣ、１１１０…ディスプレイ、１１５０…文書、１１６０…修正内容、１２１０…ノートＰＣ、１２２０…プロジェクタ、１２３０…スクリーン、１２４０…文書、１２５０…メモ描画、１２６０…ＰＣ、１３１０…ＰＣ、１３４０…ネットワーク、１５００…表示画面、１５１０…文書表示領域、１５２０…非文書表示領域
【先行技術文献】
【特許文献】
【００４３】
【特許文献１】特開２００８−０７０８３１公報
【特許文献２】特開２００７−２２６２１３公報
【特許文献３】特開２００７−０７９９４７公報
【特許文献４】特許第３５４３３９７号
【図１】
2011014076.tif 000003
【図２】
2011014076.tif 000004
【図３】
2011014076.tif 000005
【図４】
2011014076.tif 000006
【図５】
2011014076.tif 000007
【図６】
2011014076.tif 000008
【図７】
2011014076.tif 000009
【図８】
2011014076.tif 000010
【図９】
2011014076.tif 000011
【図１０】
2011014076.tif 000012
【図１１】
2011014076.tif 000013
【図１２】
2011014076.tif 000014
【図１３】
2011014076.tif 000015
【図１４】
2011014076.tif 000016
【図１５】
2011014076.tif 000017
【図１６】
2011014076.tif 000018
【図１７】
2011014076.tif 000019
【図１８】
2011014076.tif 000020
【図１９】
2011014076.tif 000021