説明

表示装置および表示方法

【課題】 後続部分をずらすスペースがない場合にも既存の文字列に文字列を挿入することができる表示装置および表示方法を提供する。
【解決手段】 操作者がペン19によって挿入領域を指定し、挿入領域に挿入する挿入文字列を入力すると、タッチパネル15は、指定された挿入領域および入力された挿入文字列を表す情報を表示制御装置20に送る。表示制御装置20のCPU21は、挿入領域に近接する空白部分を検出し、検出した空白部分の長さを求める。挿入文字列の長さが、空白部分の長さから最小空白の長さを減算した長さよりも大きいとき、既存文字列を空白部分の方向に移動するとともに、既存文字列を移動したことによって形成される新たな空白部分に、縮小した挿入文字列を挿入する。挿入文字列を縮小する縮小率が制限縮小率よりも小さくなるときは、既存文字列も縮小する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示されている文字列の修正や追加を行うことができる表示装置および表示方法に関する。
【背景技術】
【0002】
現在、多数のタッチパネル実現方式がある。タッチパネル実現方式のうち、比較的多く用いられている3つの方式は、抵抗膜方式、静電容量方式、および赤外線方式である。抵抗膜方式は、導電性の2つの透明電極シートをわずかな距離を保ち向かい合わせ、片方のシートに電圧を印加しておき、押された所が歪んで他方のシートに接触すると、透明電極シートが抵抗を有するので、電圧を印加していないシートに電圧が現れる。この電圧はアナログ量であるが、接触した箇所に応じて電圧が変化するので、この変化をアナログデジタル(略称:A/D)コンバータ等でデジタル化して、縦と横との位置を検出するというものである。
【0003】
静電容量方式は、ガラスなどの絶縁体の背面に透明導電材料で形成された縦横2層からなるモザイク状の配線を設け、指などを近づけるとモザイク状の配線間の静電容量が変化し、その変化によって接触位置を特定して縦横座標を得るものである。
【0004】
赤外線方式は、四角形の縦横2辺に赤外線発光部を並べ、残りの対向する縦横2辺に赤外線受光部を並べ、1つずつ赤外線発光部を発光させて赤外線受光部での受光状態を調べることによって、赤外線発光部と赤外線発光部との間にある遮光物を検出し、縦横座標を得るという方式である。
【0005】
文字列の修正や追加を行うことができる第1の従来技術として特許文献1に記載される手書き入力装置がある。この手書き入力装置は、ペンによる手書き入力を基本操作とする入力装置である。すでに入力されているイメージデータを訂正する場合、訂正箇所を指定するための訂正図形、たとえば1本の横線を手書き入力する。そして、新たに手書き入力されたイメージデータが訂正図形の入力位置から所定距離内の領域に入力されると、訂正図形の入力位置に表示されている訂正すべきイメージデータを消去して、訂正すべきイメージデータが消去された位置に、新たに手書き入力されたイメージデータを表示する。消去されたイメージデータの後方に隣接するイメージデータは、訂正すべきイメージデータの大きさと新たに手書き入力されたイメージデータの大きさとの差分だけ前方または後方にシフトして表示する。
【0006】
第2の従来技術として特許文献2に記載されるタッチパネル付きディスプレイ装置がある。このタッチパネル付きディスプレイ装置は、ディスプレイ上に表示された手書き文字列の文章に別の文字列を挿入するとき、ディスプレイ上の「エリア設定」によって、挿入分の範囲を指定して挿入エリア文字列を決定した後、ディスプレイ上の「挿入場所設定」によって挿入場所を指定する。挿入エリア文字列は、挿入場所に挿入され、挿入された挿入エリア文字列以降の文章は、挿入エリア文字列の長さ分シフトされて、挿入エリア文字列の後続に接続される。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平6−324797号公報
【特許文献2】特開2004−102455号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
紙とペンおよび消しゴムとを用いて文字を記入するという非電子化当時の方法では、文字などを追加挿入するとき、記入されている文字を消しゴムで消して最初から書き直す作業が必要である。電子化されたタッチパネルシステムで追加挿入を行う場合も、非電子化当時と同様に、記入されている文字を消して最初から書く作業が行われており、再度書き直すという手間が減らないという問題がある。
【0009】
別の場所に書かれた文字の範囲を指定し、指定した範囲を切り取りまたは複写して貼付する場合でも、貼付先に貼付しようとする範囲が入るだけのスペースがあれば、そのまま貼付することができる。しかしながら、スペースがない場合には、貼付先の既に書き込み済みの内容を手動で移動するために、移動すべき後続部分の範囲を指定して切り取り、その部分も含めて貼付を行う必要があり、手間が掛かるという問題がある。さらに、後ろにずらすためのスペースが狭いときに挿入する場合、そのまま移動して貼付することはできない。
【0010】
上述した第1の従来技術は、書き換えの手間を減らすため、および第2の従来技術は、挿入作業の手間を減らすために発案されたものであり、後続部分を書き直すことなく、ずらすことによって、書き換えまたは挿入を可能としてものである。しかしながら、後続部分をずらすスペースがない場合には挿入することができず、また、単純にずらして挿入すると後続部分のレイアウトが崩れてしまうという問題がある。
【0011】
本発明の目的は、後続部分をずらすスペースがない場合にも既存の文字列に文字列を挿入することができる表示装置および表示方法を提供することである。
【課題を解決するための手段】
【0012】
本発明は、文字列および図形を表示画面に表示する表示手段と、
表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する指定手段と、
指定手段によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する入力手段と、
表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する検出手段と、
入力手段によって入力された挿入文字列および挿入図形の長さおよび検出手段によって検出された空白部分の長さを計算する計算手段と、
計算手段によって計算された空白部分の長さから予め定める基準長を減算し、減算した長さと、計算手段によって計算された挿入文字列および挿入図形の長さとを比較し、減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示手段に表示させるとともに、前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小し、前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示手段に表示させる制御手段とを含むことを特徴とする表示装置である。
【0013】
また本発明は、前記制御手段は、前記新たに形成された空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小した縮小率が予め定める基準縮小率よりも小さいとき、前記挿入領域の始端から空白部分の始端までの長さと前記減算した長さとを加算し、前記挿入文字列および挿入図形ならびに前記既存文字列および既存図形からなる結合文字列および結合図形の長さが前記加算した長さに一致するように、前記結合文字列および結合図形を縮小し、縮小した結合文字列および結合図形に含まれる既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動し、前記移動したことによって形成される新たな空白部分に、前記縮小した結合文字列および結合図形に含まれる挿入文字列および挿入図形を表示手段に表示させることを特徴とする。
【0014】
また本発明は、前記検出手段による空白部分の検出は、前記指定手段によって指定された挿入領域の始端から文字列および図形の配列方向の上流側の方向、ならびに前記挿入領域の終端から文字列および図形の配列方向の下流側の方向のうちのいずれかに設定可能であることを特徴とする。
【0015】
また本発明は、前記制御手段は、前記指定手段によって指定された挿入領域の縦横比に基づいて縦書きであるか横書きであるかを判断することを特徴とする。
【0016】
また本発明は、前記表示手段によって表示させるための文字列および図形を背景色のドットおよび背景色以外の色のドットからなるビットマップとして記憶する記憶手段をさらに含み、
前記制御手段は、ビットマップを予め定めるドット長からなる領域に分割し、各領域が背景色のドットのみからなる背景領域か背景色以外の色のドットを含む非背景領域かを表す領域情報を記憶手段に記憶し、領域情報に基づいて、空白部分を検出することを特徴とする。
【0017】
また本発明は、文字列および図形を表示画面に表示する表示手段と、表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する指定手段と、指定手段によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する入力手段とを含む表示装置で実行される表示方法であって、
表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する検出工程と、
入力手段によって入力された挿入文字列および挿入図形の長さおよび検出工程で検出された空白部分の長さを計算する計算工程と、
計算工程で計算された空白部分の長さから予め定める基準長を減算する減算工程と、
減算工程で減算した長さと挿入文字列および挿入図形の長さとを比較する比較工程と、
減算工程で減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示手段に表示させる第1の表示工程と、
前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小する縮小工程と、
前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示手段に表示させる第2の表示工程とを含むことを特徴とする表示方法である。
【発明の効果】
【0018】
本発明によれば、表示手段は、文字列および図形を表示画面に表示する。指定手段は、表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する。入力手段は、指定手段によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する。検出手段は、表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する。計算手段は、入力手段によって入力された挿入文字列および挿入図形の長さおよび検出手段によって検出された空白部分の長さを計算する。そして、制御手段は、計算手段によって計算された空白部分の長さから予め定める基準長を減算し、減算した長さと、計算手段によって計算された挿入文字列および挿入図形の長さとを比較し、減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示手段に表示させるとともに、前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小し、前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示手段に表示させる。したがって、後続部分をずらすスペースがない場合にも既存の文字列および図形に、文字列および図形を挿入することができる。
【0019】
また本発明によれば、前記制御手段は、前記新たに形成された空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小した縮小率が予め定める基準縮小率よりも小さいとき、前記挿入領域の始端から空白部分の始端までの長さと前記減算した長さとを加算し、前記挿入文字列および挿入図形ならびに前記既存文字列および既存図形からなる結合文字列および結合図形の長さが前記加算した長さに一致するように、前記結合文字列および結合図形を縮小し、縮小した結合文字列および結合図形に含まれる既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動し、前記移動したことによって形成される新たな空白部分に、前記縮小した結合文字列および結合図形に含まれる挿入文字列および挿入図形を表示手段に表示させる。したがって、挿入文字列および挿入図形のみを縮小するだけでは、文字列および図形の区切りのための空白部分を確保できない場合にも、既存の文字列および図形に、文字列および図形を挿入することができる。
【0020】
また本発明によれば、前記検出手段による空白部分の検出は、前記指定手段によって指定された挿入領域の始端から文字列および図形の配列方向の上流側の方向、ならびに前記挿入領域の終端から文字列および図形の配列方向の下流側の方向のうちのいずれかに設定可能である。したがって、既存文字列および既存図形を前方向にも後方向にも移動することができる。
【0021】
また本発明によれば、前記制御手段は、前記指定手段によって指定された挿入領域の縦横比に基づいて縦書きであるか横書きであるかを判断する。したがって、縦書きにも横書きにも適用することができる。
【0022】
また本発明によれば、記憶手段は、前記表示手段によって表示させるための文字列および図形を背景色のドットおよび背景色以外の色のドットからなるビットマップとして記憶する。そして、前記制御手段は、ビットマップを予め定めるドット長からなる領域に分割し、各領域が背景色のドットのみからなる背景領域か背景色以外の色のドットを含む非背景領域かを表す領域情報を記憶手段に記憶し、領域情報に基づいて、空白部分を検出する。したがって、空白部分の検出を少ない処理量で行うことができる。
【0023】
また本発明によれば、文字列および図形を表示画面に表示する表示手段と、表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する指定手段と、指定手段によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する入力手段とを含む表示装置で実行される表示方法で文字列を表示するにあたって、検出工程では、表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する。計算工程では、入力手段によって入力された挿入文字列および挿入図形の長さおよび検出工程で検出された空白部分の長さを計算する。減算工程では、計算工程で計算された空白部分の長さから予め定める基準長を減算する。比較工程では、減算工程で減算した長さと挿入文字列および挿入図形の長さとを比較する。第1の表示工程では、減算工程で減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示手段に表示させる。縮小工程では、前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小する。そして、第2の表示工程では、前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示手段に表示させる。したがって、後続部分をずらすスペースがない場合にも既存の文字列および図形に、文字列および図形を挿入することができる。
【図面の簡単な説明】
【0024】
【図1】本発明の一実施形態であるタッチパネルシステム1の構成を示すブロック図である。
【図2】タッチパネル15の構成を示すブロック図である。
【図3】ペン19の構成を示す模式図である。
【図4】文字を挿入する操作手順を説明するための図である。
【図5】事前設定テーブルの一例を示す図である。
【図6】挿入文字列および既存文字列の縮小方法を説明するための図である。
【図7】空白部分の調べ方を説明するための図である。
【図8】タッチパネルシステム1が実行する挿入処理の処理手順を示すフローチャートである。
【図9】タッチパネルシステム1が実行する挿入処理の処理手順を示すフローチャートである。
【図10】タッチパネルシステム1が実行する挿入処理の処理手順を示すフローチャートである。
【図11】空白検出処理の処理手順を示すフローチャートである。
【図12】空白検出処理の処理手順を示すフローチャートである。
【図13】画像データを最小空白単位で分割して空白部分を調べる方法を説明するための図である。
【発明を実施するための形態】
【0025】
図1は、本発明の一実施形態であるタッチパネルシステム1の構成を示すブロック図である。表示装置であるタッチパネルシステム1は、タッチパネル付きディスプレイ以下「ディスプレイ」という10および表示制御装置20を含んで構成される。本発明に係る表示方法は、タッチパネルシステム1で実行される。
【0026】
ディスプレイ10は、ディスプレイコントローラ11、メモリ12、画像メモリ13、表示部14、タッチパネル15、映像入力端子16、ディスプレイ電源部17およびペン19を含んで構成される。ディスプレイコントローラ11は、たとえば中央処理装置(以下「CPU」という)によって構成され、ディスプレイ10全体を制御する。ディスプレイコントローラ11は、メモリ12に記憶されるプログラムを実行することによって、画像メモリ13、表示部14、タッチパネル15および映像入力端子16を制御する。
【0027】
メモリ12は、たとえば半導体メモリあるいはハードディスク装置などの記憶装置によって構成される。メモリ12は、ディスプレイコントローラ11で実行されるプログラム、およびディスプレイコントローラ11がプログラムを実行するために必要な情報を記憶する。メモリ12に記憶される情報は、ディスプレイコントローラ11によって書き込みおよび読み出しが行われる。画像メモリ13は、表示部14に表示するための画像データを記憶する。画像メモリ13に記憶される画像データは、ディスプレイコントローラ11によって書き込みおよび読み出しが行われる。
【0028】
表示手段である表示部14は、たとえば液晶ディスプレイなどによって構成され、表示画面を有する。表示部14は、ディスプレイコントローラ11から受け取る画像データを表示画面に表示する。ディスプレイコントローラ11は、映像入力端子16から受け取る映像信号を表示画面データに変換し、変換した表示画面データを画像メモリ13に記憶し、画像メモリ13に記憶される表示画面データを表示部14に送って表示画面に表示させる。
【0029】
タッチパネル15は、表示部14の表示画面に対向して設けられ、ペン19が表示画面上のどこに接触したかを検出する。タッチパネル15は、検出した位置を表す位置情報を表示制御装置20に送信する。ペン19は、実際には、タッチパネル15に接触するが、タッチパネル15に接触することを、表示画面に接触するともいう。タッチパネル15およびペン19は、指定手段および入力手段である。
【0030】
以下、表示部14の表示画面に向かって表示画面の左上を原点とし、右方向をX軸の正方向、下方向をY軸の正方向とするXY座標で座標位置を表す。また、X軸方向を、水平方向または横方向ともいい、Y軸方向を、垂直方向または縦方向ともいう。
【0031】
タッチパネル15は、受信部151、出力部152およびタッチパネル電源部153を含んで構成される。受信部151は、ペン19と通信する通信装置である。受信部151は、ペン19から、ペン19の状態を表す状態情報を受信する。出力部152は、ペン19が表示部14の表示画面に接触した位置を表す位置情報およびペン19が表示部14の表示画面に接触しているか否かを表す接触状態情報を、表示制御装置20に送信する。タッチパネル電源部153は、受信部151および出力部152などに電力を供給する動作用電源部である。
【0032】
映像入力端子16は、表示制御装置20から入力される映像信号を受信するための端子である。映像入力端子16は、受信した映像信号をディスプレイコントローラ11に送る。ディスプレイ電源部17は、ディスプレイコントローラ11、メモリ12、画像メモリ13および映像入力端子16に電力を供給する電源である。表示部14およびタッチパネル15は、それぞれ独立した動作用電源部、つまり電源を有する。ペン19は、タッチパネル15から情報を入力するための指示具、つまりポインティングデバイスであり、たとえばタッチペンによって構成される。
【0033】
表示制御装置20は、たとえばパーソナルコンピュータによって構成される。表示制御装置20は、CPU21、ランダムアクセスメモリ(以下「RAM」という)22、グラフィカルRAM(以下「GRAM」という)23、映像出力端子24、記憶デバイス25、入出力端子26、バス27および表示制御電源部28を含んで構成される。
【0034】
CPU21は、記憶デバイス25に記憶されるプログラムを実行することによって、GRAM23、映像出力端子24および入出力端子26を制御する。RAM22は、CPU21がプログラムを実行するために必要な情報を記憶する。GRAM23は、ディスプレイ10に表示するための画像データを記憶する。RAM22およびGRAM23に記憶される情報は、CPU21によって、書き込みおよび読み出しが行われる。CPU21は、タッチパネル15から知らされる情報、たとえばペン19が表示画面に接触する位置を表す位置情報に基づいて、後述する挿入処理を実行する。CPU21は、検出手段、計算手段および制御手段である。
【0035】
映像出力端子24は、GRAM23に記憶される画像データをディスプレイ10に送信するための端子である。CPU21は、GRAM23から画像データを読み出して、映像出力端子24に送る。映像出力端子24は、ディスプレイ10の映像入力端子16に接続され、CPU21から受け取る画像データを映像信号として映像入力端子16に送信する。GRAM23に記憶される画像データが表示部14の表示画面に表示される。すなわち、CPU21は、GRAM23に記憶される画像データを書き換えることによって、表示部14の表示画面に表示される画像を変更することができる。
【0036】
記憶手段である記憶デバイス25は、たとえば半導体メモリあるいはハードディスク装置などの記憶装置によって構成される。記憶デバイス25は、CPU21で実行されるプログラム、および設定情報などの情報を記憶する。入出力端子26は、タッチパネル15の出力部152から送信される情報を受信するための端子であり、受信した情報をCPU21に送る。バス27は、CPU21、RAM22、GRAM23、映像出力端子24、記憶デバイス25および入出力端子26のそれぞれの間で情報を送受信するためのデータバスである。表示制御電源部28は、CPU21、RAM22、GRAM23、映像出力端子24、記憶デバイス25および入出力端子26に電力を供給する電源である。
【0037】
図2は、タッチパネル15の構成を示すブロック図である。図2に示したタッチパネル15は、赤外線発光ダイオードとフォトトランジスタとを用いる赤外線方式の一例である。タッチパネル15は、赤外線方式に限定されるものではなく、たとえば抵抗膜方式あるいは静電容量方式などの方式であってもよい。
【0038】
タッチパネル15は、上述した受信部151、出力部152およびタッチパネル電源部153のほかに、タッチパネルコントローラ154、発光部制御回路155、第1赤外線発光部アレイ156、第2赤外線発光部アレイ157、第1赤外線受光部アレイ158、第2赤外線受光部アレイ159、受光部制御回路160、座標生成部161およびタッチパネル電源スイッチ162を含んで構成される。
【0039】
タッチパネルコントローラ154は、たとえばCPUによって構成され、図示しない記憶装置に記憶されるプログラムを実行することによって、受信部151、出力部152、発光部制御回路155、受光部制御回路160および座標生成部161を制御する。発光部制御回路155は、タッチパネルコントローラ154からの指示によって、第1赤外線発光部アレイ156および第2赤外線発光部アレイ157を制御する。
【0040】
第1赤外線発光部アレイ156は、複数の赤外線発光ダイオードを含んで構成される。第1赤外線発光部アレイ156の複数の赤外線発光ダイオードは、Y軸方向に配列される。第2赤外線発光部アレイ157は、複数の赤外線発光ダイオードを含んで構成される。第2赤外線発光部アレイ157の複数の赤外線発光ダイオードは、X軸方向に配列される。
【0041】
第1赤外線受光部アレイ158は、複数のフォトトランジスタあるいはフォトダイオードを含んで構成される。第1赤外線受光部アレイ158の複数のフォトトランジスタあるいはフォトダイオードは、Y軸方向に配列される。第1赤外線受光部アレイ158の各フォトトランジスタあるいは各フォトダイオードは、第1赤外線発光部アレイ156の各赤外線発光ダイオードとそれぞれ対になるように配列され、各フォトトランジスタあるいは各フォトダイオードは、対になる赤外線発光ダイオードからの赤外線を受光する。第2赤外線受光部アレイ159は、複数のフォトトランジスタあるいはフォトダイオードを含んで構成される。第2赤外線受光部アレイ159の複数のフォトトランジスタあるいはフォトダイオードは、X軸方向に配列される。第2赤外線受光部アレイ159の各フォトトランジスタあるいは各フォトダイオードは、第2赤外線発光部アレイ157の各赤外線発光ダイオードとそれぞれ対になるように配列され、各フォトトランジスタあるいは各フォトダイオードは、対になる赤外線発光ダイオードからの赤外線を受光する。
【0042】
第1赤外線発光部アレイ156および第1赤外線受光部アレイ158は、表示画面上でのY軸方向、つまり縦方向のペン19のペン先の位置を検出する。第2赤外線発光部アレイ157および第2赤外線受光部アレイ159は、表示画面上でのX軸方向、つまり横方向のペン19のペン先の位置を検出する。
【0043】
発光部制御回路155は、第1赤外線発光部アレイ156の赤外線発光ダイオード、つまり縦方向の赤外線発光ダイオードを1つずつ順次点灯するとともに、第2赤外線発光部アレイ157の赤外線発光ダイオード、つまり横方向の赤外線発光ダイオードを1つずつ順次点灯して、スキャンする。
【0044】
受光部制御回路160は、第1赤外線受光部アレイ158および第2赤外線受光部アレイ159での受光状態を検出する。もしも、ペン19がタッチパネル15に接触していれば、第1赤外線発光部アレイ156の赤外線発光ダイオードのうちのいずれか1つの赤外線発光ダイオードから発光された赤外線は、ペン19のペン先で散乱あるいは遮断されるため、その赤外線発光ダイオードと対のフォトトランジスタあるいはフォトダイオードが検出する赤外線の量が低下する。また、第2赤外線発光部アレイ157の赤外線発光ダイオードのうちのいずれか1つの赤外線発光ダイオードから発光された赤外線は、ペン19のペン先で散乱あるいは遮断されるため、その赤外線発光ダイオードと対のフォトトランジスタあるいはフォトダイオードが検出する赤外線の量が低下する。
【0045】
受光部制御回路160は、第1赤外線受光部アレイ158のフォトトランジスタあるいはフォトダイオードのうちで、赤外線の量が低下したフォトトランジスタあるいはフォトダイオードの位置、つまり縦方向の位置、および第2赤外線受光部アレイ159のフォトトランジスタあるいはフォトダイオードのうちで、赤外線の量が低下したフォトトランジスタあるいはフォトダイオードの位置、つまり横方向の位置を座標生成部161に送る。
【0046】
座標生成部161は、受光部制御回路160から受け取る位置、つまり赤外線の量が低下したフォトトランジスタあるいはフォトダイオードの縦方向および横方向の位置に基づいて、位置座標を生成する。具体的には、受光部制御回路160から受け取る位置、つまり赤外線の量が低下したフォトトランジスタあるいはフォトダイオードの縦方向および横方向の位置を、XY座標系での位置座標に変換する。座標生成部161は、生成した位置座標をタッチパネルコントローラ154に送る。タッチパネルコントローラ154は、座標生成部161から受け取る位置座標によって、ペン19のペン先がタッチパネル15、つまり表示画面に接触しているXY座標系での位置を認識することができる。
【0047】
タッチパネル電源スイッチ162は、タッチパネル電源部153による電力の供給および電力の供給停止を切り換えるスイッチである。
【0048】
タッチパネル15は、タッチパネル15に押し付けられているペン19のペン先190の位置を、発光部制御回路155、第1赤外線発光部アレイ156、第2赤外線発光部アレイ157、第1赤外線受光部アレイ158、第2赤外線受光部アレイ159および受光部制御回路160によってスキャンし、スキャンして得られたペン先190の位置座標およびペン19の後述するスイッチの状態を表す情報を、出力部152を介して表示制御装置20に送信する。
【0049】
図3は、ペン19の構成を示す模式図である。ペン19は、ペン先スイッチ191、操作スイッチ192、スイッチ検出部193、送信部194、ペン電源スイッチ195およびペン電源部196を含んで構成される。
【0050】
ペン先スイッチ191は、ペン先190がタッチパネル15に押し付けられたことを検出するスイッチである。操作スイッチ192は、ペン19の動作を切り換えるための切換操作などを行うための押しボタン式のスイッチである。スイッチ検出部193は、ペン先スイッチ191の状態、および操作スイッチ192の状態を検出し、検出した状態を表す情報を送信部194に送る。
【0051】
送信部194は、スイッチ検出部193から受け取る状態を表す情報を、タッチパネル15の受信部151に送信する。ペン電源スイッチ195は、ペン電源部196による電力の供給および電力の供給停止を切り換えるスイッチである。ペン電源部196は、ペン先スイッチ191、操作スイッチ192、スイッチ検出部193および送信部194に電力を供給する動作用電源部である。
【0052】
図4は、文字を挿入する操作手順を説明するための図である。図4(a)は、文字列が表示されている表示画面31の一例である。図4(a)に示した表示画面31には、「次回の打合せ:12/13(月)第2会議室 15:00」という文字列が表示されている。文字列は、2以上の文字からなる文字列だけでなく、1つの文字からなる文字列も含む。
【0053】
図4(b)は、図4(a)に示した表示画面31に挿入領域321を指定した表示画面32の一例を示す図である。挿入領域321は、文字を挿入する領域である。図4(b)に示した表示画面32では、挿入領域321が、文字列「第2会議」を囲うように表示されている。
【0054】
図4(c)は、挿入領域321に挿入する文字からなる文字列(以下「挿入文字列」という)331が表示されている表示画面33の一例を示す。図4(c)に示した表示画面33では、挿入領域321に「BS事業部」という挿入文字列331が表示されている。挿入領域321にあった文字列は消去され、挿入文字列331が表示されている。
【0055】
図4(d)は、挿入文字列331を縮小して挿入した表示画面34の一例を示す図である。図4(d)に示した表示画面34では、挿入文字列331の文字列「BS事業部」と挿入領域321の位置にあった文字列「第2会議室」とが結合され、結合された文字列(以下「結合文字列」という)341、つまり「BS事業部第2会議室」という文字列が縮小されて表示されている。
【0056】
図4に示した例では、文字列に文字を挿入する例を示したが、文字列に限定されるものではなく、たとえばペン19で描かれる線などの図形でもよく、文字列と図形とが混在していてもよい。以下、文字列について説明するが、図形の場合、ならびに文字列および図形を含む場合も同様である。
【0057】
図5は、事前設定テーブルの一例を示す図である。事前設定テーブルは、表示制御装置20の記憶デバイス25に記憶される設定情報である。図5(a)は、挿入モード移動方向設定テーブル41の一例を示す図である。図5(b)は、挿入モード縮小制限値テーブル42の一例を示す図である。図5(c)は、挿入モード最小空白設定テーブル43の一例を示す図である。
【0058】
図5(a)に示した挿入モード移動方向設定テーブル41は、挿入領域の位置に表示されていた文字列をどちらの方向に移動するかが設定されているテーブルである。挿入モード移動方向設定テーブル41には、テーブルのタイトル欄、説明文欄、横移動方向設定欄411および縦移動方向設定欄412が設けられている。
【0059】
図5(a)には、テーブルのタイトル欄に、「挿入モード移動方向設定テーブル」が表示され、説明分欄に、「(左又は上:0、右又は下:1)」と表示されている。横移動方向設定欄411には、「横移動方向Dx」と付記され、入力欄に「1」と入力されている。縦移動方向設定欄412には、「縦移動方向Dy」と付記され、入力欄に「1」と入力されている。すなわち、図5(a)に示した挿入モード移動方向設定テーブル41には、「Dx=1」および「Dy=1」が設定されており、横書きの場合、移動方向は右であり、縦書きの場合、移動方向は下であることを示している。なお、「Dx=0」および「Dy=0」が設定されている場合は、横書きの場合、移動方向は左であり、縦書きの場合、移動方向は上であることを示す。
【0060】
図5(b)に示した挿入モード縮小制限値テーブル42は、挿入文字列を縮小して表示するときの制限縮小率が設定されているテーブルである。縮小率は、縮小後の文字列の長さを縮小前の文字列の長さで除算した値である。制限縮小率は、挿入文字列を縮小する下限の縮小率である。挿入モード縮小制限値テーブル42には、テーブルのタイトル欄、横方向設定欄421および縦方向設定欄422が設けられている。
【0061】
図5(b)には、テーブルのタイトル欄に、「挿入モード縮小制限値テーブル」が表示されている。横方向設定欄421には、「横方向LMx」と付記され、入力欄に「0.7」と入力されている。縦方向設定欄422には、「縦方向LMy」と付記され、入力欄に「0.5」と入力されている。すなわち、図5(b)に示した挿入モード縮小制限値テーブル42には、「LMx=0.7」および「LMy=0.5」が設定されており、横書きの場合、制限縮小率は「0.7」であり、縦書きの場合、制限縮小率は「0.5」であることを示している。制限縮小率は、予め定める基準縮小率である。
【0062】
図5(c)に示した挿入モード最小空白設定テーブル43は、文字列の区切りを明確にするために設けられる空白部分の最小限の長さが設定されているテーブルである。挿入モード最小空白設定テーブル43には、テーブルのタイトル欄、横空白設定欄431および縦空白設定欄432が設けられている。最小空白は、文字列の区切りを明確にするために設けられる最小限の長さの空白部分のことである。最小空白の長さは、予め定める基準長である。
【0063】
図5(c)には、テーブルのタイトル欄に、「挿入モード最小空白設定テーブル」が表示されている。横空白設定欄431には、「横空白LSx」と付記され、入力欄に「15」と入力されている。縦空白設定欄432には、「縦空白LSy」と付記され、入力欄に「20」と入力されている。すなわち、図5(c)に示した挿入モード最小空白設定テーブル43には、「LSx=15」および「LSy=20」が設定されており、横書きの場合、最小空白の長さは「15」であり、縦書きの場合、最小空白の長さは「20」であることを示している。空白部分の長さの単位は、ドットである。以下、長さのことをサイズともいう。
【0064】
図6は、挿入文字列および既存文字列の縮小方法を説明するための図である。図6(a)は、文字を挿入する前の文字列を示している。「ABFGHI」という文字列51と「abcdefghi」という文字列52の間に長さL3の空白部分がある例である。
【0065】
図6(b)は、従来技術によって、挿入文字列「CDE」を文字列「AB」と文字列「FGHI」との間に挿入した例である。挿入文字列「CDE」の長さL1だけ、文字列「FGHI」、空白部分53および「abcdefghi」という文字列52が右方向に移動している。挿入文字列「CDE」の挿入によって、文字「I」は、「abcdefghi」という文字列52があった位置まで移動している。「abcdefghi」という文字列52は、元の位置から長さL1移動している。既存文字列は、挿入領域の始端から近接する空白部分の始端までにある文字列であり、図6の場合、「FGHI」の文字列が既存文字列である。
【0066】
図6(c)は、空白部分53の長さをL3よりも短くした例である。この場合も、挿入文字列「CDE」の長さが長いので、「abcdefghi」という文字列52は、元の位置から長さL4だけ移動している。もし、「abcdefghi」という文字列52の上下に、「abcdefghi」という文字列52と関係する文字列がある場合、レイアウトが変わってしまうことになる。
【0067】
図6(d)は、タッチパネルシステム1によって、挿入文字列「CDE」を挿入した例である。挿入文字列「CDE」と既存文字列「FGHI」とを縮小しているので、「abcdefghi」という文字列52の位置は変化しない。したがって、「abcdefghi」という文字列52の上下に、「abcdefghi」という文字列52と関係する文字列があっても、「abcdefghi」という文字列52が関係するレイアウトは変化しない。
【0068】
図6(d)における縮小率の計算方法を以下に説明する。すなわち、図6(a)に示した挿入文字列「CDE」を文字列「AB」と文字列「FGHI」との間に挿入する場合を例に説明する。挿入モード移動方向設定テーブル41の横移動方向Dxが「1」であり、挿入モード最小空白設定テーブル43の横空白LSxが「LSx」であるとし、文字列「FGHI」の長さを「L2」とし、L1>L3であるとする。長さの単位は、ドットである。
【0069】
図6(b)の場合、「abcdefghi」という文字列52は、長さL1だけ右方向に移動し、図6(c)の場合、「abcdefghi」という文字列52は、長さL4だけ右方向に移動する。このとき、空白部分の長さは、最小空白の長さLSxであり、L4=L1−L3+LSxである。
【0070】
図6(d)の場合、「abcdefghi」という文字列52の位置は移動することなく、長さLSxの空白部分を設けて、「CDEFGHI」の文字列を長さL5に縮小して表示する。縮小率Mxは、長さL5を「CDEFGHI」の文字列の縮小前の長さ(L1+L2)で除算した値である。長さL5は、L5=L2+L3−LSxである。したがって、縮小後の「CDEFGHI」の文字列の長さは、元の長さ「L1+L2」のMx倍の長さになる。
【0071】
図7は、空白部分の調べ方を説明するための図である。タッチパネル15の座標範囲を、XY座標で座標(0,0)から座標(Xmax,Ymax)の範囲とし、挿入指定範囲SHを、XY座標で座標(x1,y1)、座標(x1,y2)、座標(x2,y1)、および座標(x2,y2)の4点で囲まれる範囲とする。挿入領域は、挿入指定範囲で表わされる領域である。タッチパネル15の座標範囲は、表示画面のXY座標で表わされる座標範囲と同じである。
【0072】
以下、文字列が描画オブジェクトとして管理されている場合を例にして説明する。ここで、描画オブジェクトとは、手書き文字、文字、あるいは図等を、それぞれで、関連のあるものを1単位としてまとめたものである。たとえば、「オブジェクト」と手書きされた文字列は、1つ1つの文字、たとえば文字「オ」、文字「ブ」、文字「ジ」、文字「ェ」、文字「ク」、および文字「ト」がそれぞれ別に管理されるのでなく、「オブジェクト」という文字列が一塊として管理される。各オブジェクトは、オブジェクト単位で、表示画面上の位置およびサイズが管理されている。
【0073】
図7に示したように、挿入指定範囲SHに重なる描画オブジェクトB2があり、挿入指定範囲SHには重ならないが同じ縦位置、つまりY座標でy1〜y2の範囲内に描画オブジェクトB5があるものとする。
【0074】
挿入指定範囲SHと描画オブジェクトとが重なっているか否かは、挿入指定範囲SHと各描画オブジェクトの描画位置情報を比較することによって判別することができる。描画位置情報は、描画オブジェクトの表示画面上の位置およびサイズを表す情報である。図7に示したように、挿入指定範囲SHに重なっている描画オブジェクトB2に対して、挿入文字列を挿入する挿入処理を行うということは、描画オブジェクトB2のうち、X座標がx1よりも小さい部分と、X座標がx1よりも大きい部分との間に、挿入文字列を挿入するということになる。
【0075】
ここでは、挿入方向が右側、つまり挿入文字列を挿入することによって既存文字列を移動させる方向が右方向であるとすると、挿入指定範囲SHと重なっている描画オブジェクトB2の最も右端のX座標x3と、その右方向にある描画オブジェクトB5の左端のX座標x5との差を求め、さらに、その差から挿入モード最小空白設定テーブル43の横空白LSx、つまりX座標でx4〜X5までの長さを減じることによって、既存文字列を移動することができる空白部分のサイズ、つまりX座標でx3〜x4までの長さを求めることができる。
【0076】
図8〜図10は、タッチパネルシステム1が実行する挿入処理の処理手順を示すフローチャートである。挿入処理は、挿入モードに切り換えられたときに実行される処理である。挿入モードは、既に書かれた文字列のある部分に、新たに別の文字列を挿入するための動作モードである。挿入処理では、操作者が、挿入モードに切り換え、挿入領域を指定すると、自動的にその指定された挿入領域の形に応じて、挿入方向を決め、挿入文字列を挿入する。ここで、タッチパネル15のXY座標は、表示画面と同じであり、表示画面に向かって左上を原点(0,0)とし、右下の座標を(Xmax,Ymax)とする。
【0077】
操作者が、ペン19の操作スイッチ192によって、動作モードを挿入モードに切り換えるための操作を行うと、挿入モードに切り換えることを指示する挿入モード切換指示が、スイッチ検出部193で検出され、検出された挿入モード切換指示が、送信部194、受信部151、タッチパネルコントローラ154、出力部152、および入出力端子26を介して、CPU21に送られる。CPU21は、挿入モード切換指示を受け取ると、ステップA1に移る。
【0078】
ステップA1では、CPU21は、動作モードを挿入モードに切り換える。ステップA2では、操作者がペン19によって挿入領域を2点(x1,y1),(x2,y2)で指定する。タッチパネルコントローラ154は、指定された2点(x1,y1),(x2,y2)を表す情報を、出力部152および入出力端子26を介して、CPU21に送る。ステップA3では、CPU21は、挿入領域を表すXY座標(x1,y1),(x2,y2)のデータを記憶デバイス25に記憶することによって退避する。
【0079】
また、CPU21は、挿入領域に元々表示されていたデータを退避する。具体的には、CPU21は、表示画面に表示されているすべての文字列のデータがGRAM23上に展開されて記憶されている場合は、GRAM23に記憶されているデータのうち、挿入領域に表示されていたデータを、RAM22に確保された退避領域に書き込んで退避する。
【0080】
もし、表示画面に表示されているすべての文字列のデータがストロークデータとして、RAM22に記憶されており、RAM22のストロークデータを元に、表示画面に表示する画像データが作成されて、GRAM23に展開される場合には、CPU21は、RAM22に記憶されるデータのうち、挿入領域に表示されていたデータを、RAM22に別に確保された退避領域に書き込んで退避する。ストロークデータとは、表示画面と同じように画素の集まりとするビットマップとして処理をする方法ではなく、ペン先191を画面上で動かした軌跡情報として記憶したデータである。ストロークデータとして管理する場合、どの位置にどの位の大きさで表示するかを指定すると、そのストロークデータを画面上のビットマップに変換する必要がある。変換処理が必要とはなるが、オブジェクトをストロークデータに対応させると、1つのオブジェクトを拡大、縮小、移動、輻射、あるいは消去することが容易になる。文字フォントに例えれば、ビットマップフォントとベクトルフォントとの差である。
【0081】
ステップA4では、CPU21は、挿入領域の縦横比R=|x1−x2|÷|y1−y2|を算出する。ステップA5では、CPU21は、縦横比Rが「1」より小さいか否かを判定する。縦横比Rが「1」より小さいとき、垂直シフトであり、ステップA14に進み、縦横比Rが「1」より小さくないとき、水平シフトであり、ステップA6に進む。
【0082】
ステップA6では、CPU21は、横移動方向Dxの値を記憶デバイス25に記憶される挿入モード移動方向設定テーブル41から読み出す。ステップA7では、CPU21は、Dx=1であるか否かを判定する。Dx=1であるとき、移動方向は右方向であり、ステップA8に進み、Dx=1でないとき、移動方向は左方向であり、ステップA13に進む。ステップA8では、CPU21は、右方向の空白部分のサイズSxを取得する。具体的には、挿入領域の右方向で最も挿入領域に近接する空白部分を検出し、検出した空白部分の横方向のサイズ、つまり長さSxを求める。空白部分の検出方法については、図11,12で詳述する。右方向とは、文字列の配列方向の下流側の方向であり、左方向とは、文字列の配列方向の上流側の方向である。
【0083】
ステップA9では、CPU21は、挿入文字列の横方向の長さIx=(x2−x1)、および移動可能な空白部分の長さ「Sx−LSx」を計算する。移動可能な空白部分とは、検出された空白部分から最小空白を除いた部分である。挿入領域に入力される文字列は、操作者がペン19によって挿入領域に入力した文字列であり、タッチパネル15から出力部152および入出力端子26を介して、CPU21に送られる位置情報が示す位置によって、CPU21が文字認識によって認識する。CPU21は、挿入領域に入力された挿入文字列のデータを、GRAM23の挿入領域に表示されていたデータの位置に記憶して挿入する。
【0084】
ステップA10では、CPU21は、Ix>(Sx−LSx)であるか否かを判定する。Ix>(Sx−LSx)であるとき、つまり挿入文字列の横方向の長さIxが、空白部分の長さSxから横空白LSxを減算した長さ、つまり移動可能な空白部分の長さよりも大きいとき、図9に示すステップA30に進む。Ix>(Sx−LSx)でないとき、つまり挿入文字列の横方向の長さIxが、空白部分の長さSxから横空白LSxを減算した長さ、つまり移動可能な空白部分の長さよりも大きくないとき、ステップA11に進む。
【0085】
ステップA11では、CPU21は、元データ、つまり既存文字列をIxだけ移動する。具体的には、挿入領域の始端からステップA8またはステップA13で検出した空白部分の始端までの間にある文字列、つまり既存文字列を、検出した空白部分の方向に挿入文字列の横方向の長さIxだけ移動して表示画面に表示する。より詳細には、RAM22に退避された元の文字列のデータ、つまり既存文字列の位置を、指定された挿入領域のサイズ分ずらして、GRAM23に書き込み、表示を更新する。
【0086】
ステップA12では、CPU21は、書き込んだデータを確定し、挿入処理を終了する。すなわち、タッチパネル15によって挿入領域に書き込まれたデータ、つまり挿入文字列を表示部14に送り、既存文字列を移動したことによって新たに形成された空白部分に挿入文字列を表示させて、挿入処理を終了する。より詳細には、挿入領域に書き込まれたデータ、つまり挿入文字列のデータを、既存文字列のデータが記憶されていたGRAM23の位置に書き込み、表示を更新する。
【0087】
ステップA13では、CPU21は、左方向の空白部分のサイズSxを取得し、ステップA9に進む。具体的には、挿入領域の左方向で最も挿入領域に近接する空白部分を検出し、検出した空白部分の横方向のサイズ、つまり長さSxを求め、ステップA9に進む。
【0088】
ステップA14では、CPU21は、縦移動方向Dyの値を記憶デバイス25に記憶される挿入モード移動方向設定テーブル41から読み出す。ステップA15では、CPU21は、Dy=1であるか否かを判定する。Dy=1であるとき、移動方向は下方向であり、ステップA16に進み、Dy=1でないとき、移動方向は上方向であり、ステップA21に進む。ステップA16では、CPU21は、下方向の空白部分のサイズSyを取得する。具体的には、挿入領域の下方向で最も挿入領域に近接する空白部分を検出し、検出した空白部分の縦方向のサイズ、つまり長さSyを求める。
【0089】
ステップA17では、CPU21は、挿入文字列の縦方向の長さIy=(y2−y1)、および移動可能な空白部分の長さ「Sy−LSy」を計算する。ステップA18では、CPU21は、Iy>(Sy−LSy)であるか否かを判定する。Iy>(Sy−LSy)であるとき、つまり挿入文字列の縦方向の長さIyが、空白部分の長さSyから縦空白LSyを減算した長さ、つまり移動可能な空白部分の長さよりも大きいとき、図10に示すステップA50に進む。Iy>(Sy−LSy)でないとき、つまり挿入文字列の縦方向の長さIyが、空白部分の長さSyから縦空白LSyを減算した長さ、つまり移動可能な空白部分の長さよりも大きくないとき、ステップA19に進む。
【0090】
ステップA19では、CPU21は、元データ、つまり既存文字列をIyだけ移動する。具体的には、挿入領域の始端からステップA16またはステップA21で検出した空白部分の始端までの間にある既存文字列を、検出した空白部分の方向に挿入文字列の縦方向の長さIyだけ移動して表示画面に表示する。
【0091】
ステップA20では、CPU21は、書き込んだデータを確定し、挿入処理を終了する。すなわち、タッチパネル15によって挿入領域に書き込まれた挿入文字のデータを表示部14に送り、既存文字列を移動したことによって新たに形成された空白部分に挿入文字列を表示させて、挿入処理を終了する。ステップA21では、CPU21は、上方向の空白部分のサイズSyを取得し、ステップA17に進む。具体的には、挿入領域の上方向で最も挿入領域に近接する空白部分を検出し、検出した空白部分の縦方向のサイズ、つまり長さSyを求め、ステップA17に進む。
【0092】
図9に示したステップA30では、CPU21は、移動可能な空白部分の長さTx=Sx−LSxを計算する。ステップA31では、CPU21は、縮小率Mx=Tx÷Ixを求める。すなわち、CPU21は、移動可能な空白部分の長さTxを挿入文字列の長さIxで除算した値を縮小率Mxとする。
【0093】
ステップA32では、CPU21は、記憶デバイス25に記憶される挿入モード縮小制限値テーブル42の横方向LMxと縮小率Mxとを比較する。ステップA33では、CPU21は、縮小率Mxが横方向LMxよりも小さいか否かを判定する。縮小率Mxが横方向LMxよりも小さいとき、ステップA36に進む。縮小率Mxが横方向LMxよりも小さくないとき、ステップA34に進む。
【0094】
ステップA34では、CPU21は、元データ、つまり既存文字列を長さAx=(Ix×Mx)だけ空白部分の方向に移動して表示画面に表示する。長さAxは、挿入文字列の長さIxを縮小率Mx倍した長さである。ステップA35では、CPU21は、書き込んだデータ、つまり挿入文字列をMx倍に縮小して確定し、挿入処理を終了する。すなわち、タッチパネル15によって挿入領域に書き込まれた挿入文字列をMx倍に縮小して表示部14に送り、既存文字列を移動したことによって新たに形成された空白部分に表示させて、挿入処理を終了する。
【0095】
より詳細には、ステップA34,A35では、挿入文字列のデータを、GRAM23の既存文字列のデータの位置に記憶し、RAM22に退避された既存文字列のデータの位置を、指定された挿入領域のサイズ分ずらして、GRAM23上に書き込むことによって表示画面の表示を更新する。
【0096】
ステップA36では、CPU21は、挿入領域と検出された空白部分の領域(以下「空白領域」という)との間隔Cxを求める。ステップA37では、CPU21は、挿入文字列と既存文字列との合計の長さBx=Ix×2+Cxを計算する。挿入領域の長さは、挿入文字列の長さIxである。ステップA38では、CPU21は、挿入文字列と既存文字列とを結合した結合文字列が使用することができる長さEx=Ix+Cx+Txを計算する。
【0097】
ステップA39では、CPU21は、結合文字列を縮小する縮小率Mx’=Ex÷Bxを計算する。ステップA40では、CPU21は、元データと新規に書き込んだデータを繋げる。元データは、既存文字列のデータであり、新規に書き込んだデータは挿入文字列のデータである。ステップA41では、CPU21は、繋げたデータをMx’倍する。ステップA42では、CPU21は、縮小したデータを確定して、挿入処理を終了する。すなわち、縮小した結合文字列を、既存文字列および移動可能な空白部分があった領域、つまり長さExの領域に表示させて、挿入処理を終了する。
【0098】
図10に示したステップA50では、CPU21は、移動可能な空白部分の長さTy=Sy−LSyを計算する。ステップA51では、CPU21は、縮小率My=Ty÷Iyを求める。すなわち、CPU21は、移動可能な空白部分の長さTyを挿入文字列の長さIyで除算した値を縮小率Myとする。ステップA52では、CPU21は、記憶デバイス25に記憶される挿入モード縮小制限値テーブル42の縦方向LMyと、挿入文字列を移動可能な空白部分に挿入するための縮小率Myとを比較する。
【0099】
ステップA53では、CPU21は、縮小率Myが縦方向LMyよりも小さいか否かを判定する。縮小率Myが縦方向LMyよりも小さいとき、ステップA56に進む。縮小率Myが縦方向LMyよりも小さくないとき、ステップA54に進む。
【0100】
ステップA54では、CPU21は、元データ、つまり既存文字列を長さAy=(Iy×My)だけ空白部分の方向に移動して表示画面に表示する。長さAIyは、挿入文字列の長さIyを縮小率My倍した長さである。ステップA55では、CPU21は、書き込んだデータ、つまり挿入文字列をMy倍に縮小して確定し、挿入処理を終了する。すなわち、タッチパネル15によって挿入領域に書き込まれた挿入文字列をMy倍に縮小して表示部14に送り、既存文字列を移動したことによって新たに形成された空白部分に表示させて、挿入処理を終了する。
【0101】
ステップA56では、CPU21は、挿入領域と検出した空白領域との間隔Cyを求める。ステップA57では、CPU21は、挿入文字列と既存文字列との合計の長さBy=Iy×2+Cyを計算する。挿入領域の長さは、挿入文字列の長さIyである。ステップA58では、CPU21は、挿入文字列と既存文字列とを結合した結合文字列が使用することができる長さEy=Iy+Cy+Tyを計算する。
【0102】
ステップA59では、CPU21は、結合文字列を縮小する縮小率My’=Ey÷Byを計算する。ステップA60では、CPU21は、元データと新規に書き込んだデータを繋げる。ステップA61では、CPU21は、繋げたデータをMy’倍する。ステップA42では、CPU21は、縮小したデータを確定して、挿入処理を終了する。すなわち、縮小した結合文字列を、既存文字列および移動可能な空白部分があった領域、つまり長さEyの領域に表示させて、挿入処理を終了する。図8〜図10に示したフローチャートのステップA8,A13,A16,A21は、検出工程および計算工程である。図8〜図10に示したフローチャートのステップA9,A17は、減算工程である。図8〜図10に示したフローチャートのステップA10,A18は、比較工程である。図8〜図10に示したフローチャートのステップA34,A54は、第1の表示工程である。図8〜図10に示したフローチャートのステップA35,A55は、縮小工程および第2の表示工程である。
【0103】
図11,12は、空白検出処理の処理手順を示すフローチャートである。空白検出処理は、図8に示したフローチャートのステップA8,A13,A16,A21で空白部分を検出するときに実行される処理である。図11,12に示す空白検出処理は、画像データがビットマップ、すなわちドット単位で構成されている場合の例である。表示画面にペン19による書き込みのないドット、すなわち表示画面に背景色、たとえば白色として表示されるドットは、「0」であり、表示画面にペン19による書き込みのあるドット、すなわち背景色以外の色、たとえば黒色として表示されるドットは、「0」以外の値である。
【0104】
ステップB1では、CPU21は、|x1−x2|≧|y1−y2|であるか否かを判定する。|x1−x2|≧|y1−y2|であるとき、挿入領域は横長であると判断し、水平方向に空白部分を検出するため、ステップB2に進む。|x1−x2|≧|y1−y2|でないとき、挿入領域は縦長であると判断し、垂直方向に空白部分を検出するため、ステップB30に進む。
【0105】
ステップB2では、CPU21は、Dx=1であるか否かを判定する。挿入モード移動方向設定テーブル41の横移動方向Dxが「1」であるとき、つまり右側にある空白部分を調べるとき、ステップB3に進む。挿入モード移動方向設定テーブル41の横移動方向Dxが「1」でないとき、つまり左側にある空白部分を調べるとき、ステップB14に進む。以下、右方向ならば、X座標がx2から表示画面の右端Xmaxまで、左方向ならば、X座標がx1から表示画面の左端「0」まで、座標(x,y1)〜(x,y2)の注目ドットの値が「0」か、すなわち書き込みがされてないかを調べる。
【0106】
ステップB3では、CPU21は、定数α=「1」および変数i=「x2」とする。定数αは、注目ドットを移動させるX軸方向の移動量である。変数iは、注目ドットのX軸方向の座標である。ステップB4では、CPU21は、変数G=「0」および変数SX=「0」とする。変数Gは、水平方向のドットの値の合計を計数するための変数である。変数SXは、空白部分の長さを計数するための変数である。ステップB5では、CPU21は、変数SSX=「0」とする。変数SSXは、空白部分が最小空白以上の長さであるか否かを判断するために、空白部分の長さを計数するための変数である。
【0107】
ステップB6では、CPU21は、変数j=「y1」とする。変数jは、注目ドットのY軸方向の座標である。
【0108】
ステップB7では、CPU21は、変数G=G+(i,j)とする。すなわち、変数Gに、座標(i,j)のドットの値を加算する。座標(i,j)は、注目ドットの座標である。ステップB8では、CPU21は、j≦y2であるか否かを判定する。j≦y2であるとき、つまり挿入領域の垂直方向で終端まできたとき、ステップB15に進み、j≦y2でないとき、つまり挿入領域の垂直方向で終端まできていなかったとき、ステップB9に進む。
【0109】
ステップB9では、CPU21は、変数G=0であるか否かを判定する。変数G=0であるとき、つまり水平方向のドットの値がすべて「0」であるとき、ステップB10に進み、変数G=0でないとき、つまり水平方向のドットの値がすべて「0」でないとき、ステップB16に進む。ステップB10では、CPU21は、SSX>LSxであるか否かを判定する。SSX>LSxであるとき、つまり空白部分の長さSSXが最小空白の長さLSxより大きいとき、ステップB18に進み、SSX>LSxでないとき、つまり空白部分の長さSSXが最小空白の長さLSxより大きくないとき、ステップB11に進む。
【0110】
ステップB11では、CPU21は、変数SSX=SSX+1とする。すなわち、変数SSXに「1」を加算する。ステップB12では、i=Xmaxであるか否かを判定する。i=Xmaxであるとき、つまり表示画面の水平方向で終端まできたとき、空白検出処理を終了する。i=Xmaxでないとき、つまり表示画面の水平方向の終端まできていなかったとき、ステップB13に進む。ステップB13では、CPU21は、i=0であるか否かを判定する。i=0であるとき、つまり表示画面の水平方向で始端まできたとき、空白検出処理を終了する。i=0でないとき、つまり表示画面の水平方向で始端まできていなかったとき、ステップB19に進む。
【0111】
ステップB14では、CPU21は、定数α=「−1」および変数i=「x1」として、ステップ4に進む。ステップB15では、CPU21は、変数j=j+1として、ステップB7に戻る。すなわち、注目ドットのY座標を1つ移動して、ステップB7に戻る。ステップB16では、CPU21は、SX=0であるか否かを判定する。SX=0であるとき、つまり最小空白の長さよりも長い空白部分がなかったとき、ステップB17に進む。SX=0でないとき、つまり最小空白の長さよりも長い空白部分があったとき、空白検出処理を終了する。
【0112】
ステップB17では、CPU21は、変数SSX=「0」とし、ステップB12に進む。ステップB18では、CPU21は、変数SX=SX+1とし、ステップB12に進む。すなわち、変数SXに「1」を加算し、ステップB12に進む。ステップB19では、CPU21は、変数i=i+αとし、ステップB6に戻る。すなわち、注目ドットのX座標を1つ移動して、ステップB6に戻る。
【0113】
ステップB30では、CPU21は、Dy=1であるか否かを判定する。挿入モード移動方向設定テーブル41の縦移動方向Dyが「1」であるとき、つまり下側にある空白部分を調べるとき、ステップB31に進む。挿入モード移動方向設定テーブル41の縦移動方向Dyが「1」でないとき、つまり上側にある空白部分を調べるとき、ステップB42に進む。以下、下方向ならば、Y座標がy2から表示画面の下端Ymaxまで、上方向ならば、Y座標がy1から表示画面の上端「0」まで、座標(x1,y)〜(x2,y)の注目ドットの値が「0」か、すなわち書き込みがされてないかを調べる。
【0114】
ステップB31では、CPU21は、定数β=「1」および変数j=「y2」とする。定数βは、注目ドットを移動させるY軸方向の移動量である。変数iは、注目ドットのY軸方向の座標である。ステップB32では、CPU21は、変数G=「0」および変数SY=「0」とする。変数Gは、垂直方向のドットの値の合計を計数するための変数である。変数SYは、空白部分の長さを計数するための変数である。ステップB33では、CPU21は、変数SSY=「0」とする。変数SSYは、空白部分が最小空白以上の長さであるか否かを判断するために、空白部分の長さを計数するための変数である。
【0115】
ステップB34では、CPU21は、変数i=「x1」とする。変数jは、注目ドットのY軸方向の座標である。
【0116】
ステップB35では、CPU21は、変数G=G+(i,j)とする。すなわち、変数Gに、座標(i,j)のドットの値を加算する。座標(i,j)は、注目ドットの座標である。ステップB36では、CPU21は、i≦x2であるか否かを判定する。i≦x2であるとき、つまり挿入領域の水平方向で終端まできたとき、ステップB43に進み、i≦x2でないとき、つまり挿入領域の水平方向で終端まできていなかったとき、ステップB37に進む。
【0117】
ステップB37では、CPU21は、変数G=0であるか否かを判定する。変数G=0であるとき、つまり垂直方向のドットの値がすべて「0」であるとき、ステップB38に進み、変数G=0でないとき、つまり垂直方向のドットの値がすべて「0」でないとき、ステップB44に進む。ステップB38では、CPU21は、SSY>LSyであるか否かを判定する。SSY>LSyであるとき、つまり空白部分の長さSSYが最小空白の長さLSyより大きいとき、ステップB46に進み、SSY>LSyでないとき、つまり空白部分の長さSSYが最小空白の長さLSyより大きくないとき、ステップB39に進む。
【0118】
ステップB39では、CPU21は、変数SSY=SSY+1とする。すなわち、変数SSYに「1」を加算する。ステップB40では、j=Ymaxであるか否かを判定する。j=Ymaxであるとき、つまり表示画面の垂直方向で終端まできたとき、空白検出処理を終了する。j=Ymaxでないとき、つまり表示画面の垂直方向の終端まできていなかったとき、ステップB41に進む。ステップB41では、CPU21は、j=0であるか否かを判定する。j=0であるとき、つまり表示画面の垂直方向で始端まできたとき、空白検出処理を終了する。j=0でないとき、つまり表示画面の垂直方向で始端まできていなかったとき、ステップB47に進む。
【0119】
ステップB42では、CPU21は、定数β=「−1」および変数j=「y1」として、ステップB32に進む。ステップB43では、CPU21は、変数i=i+1として、ステップB35に戻る。すなわち、注目ドットのY座標を1つ移動して、ステップB35に戻る。ステップB44では、CPU21は、SY=0であるか否かを判定する。SY=0であるとき、つまり最小空白の長さよりも長い空白部分がなかったとき、ステップB45に進む。SY=0でないとき、つまり最小空白の長さよりも長い空白部分があったとき、空白検出処理を終了する。
【0120】
ステップB45では、CPU21は、変数SSY=「0」とし、ステップB40に進む。ステップB46では、CPU21は、変数SY=SY+1とし、ステップB40に進む。すなわち、変数SYに「1」を加算し、ステップB40に進む。ステップB47では、CPU21は、変数j=j+βとし、ステップB34に戻る。すなわち、注目ドットのY座標を1つ移動して、ステップB34に戻る。
図11,図12に示した空白検出処理で求めたSXは、SSXの長さ分少ないので、図8に示したSxは、Sx=SX+SSXとなる。同様に、SYは、SSYの長さ分少ないので、図8に示したSyは、Sy=SY+SSYとなる。
【0121】
図13は、画像データを最小空白単位で分割して空白部分を調べる方法を説明するための図である。画像データがビットマップ、すなわちドット単位で構成されている場合、画像データを予め最小空白単位で分割して空白部分を検出してもよい。
【0122】
具体的には、挿入モード最小空白設定テーブル43に設定されている横空白LSxおよび縦空白LSyのドット数で分割する。たとえば、画像データは、水平方向のドット数が横空白LSxの16倍のドット数、および垂直方向のドット数が縦空白LSyの9倍のドット数であるとする。表示画面の水平方向を、(水平方向のドット数÷横空白LSx)個に、かつ、表示画面の垂直方向を、(垂直方向のドット数÷縦空白LSy)個に分割し、表示画面を(水平方向のドット数÷横空白LSx)×(垂直方向のドット数÷縦空白LSy)個の領域に分割する。
【0123】
分割した各領域が空白部分であるか否かを表すテーブル60を記憶デバイス25に設ける。すなわち、領域情報であるテーブル60は、記憶デバイス25に記憶される。テーブル60は、1つの領域のドットのうち1ドットでも使用されていれば「1」を記憶し、1つの領域のドットのうち1ドットも使用されていなければ「0」を記憶する。1つのドットが使用されているとは、ドットの値が「0」以外の値であることである。図13に示したテーブル60は、その一例である。
【0124】
以下の場合、表示画面は、水平方向240ドットおよび垂直方向180ドットであるとする。図5(c)に示した挿入モード最小空白設定テーブル43の場合、横空白LSx=15、縦空白LSy=20である。したがって、表示画面は、縦方向は9分割、および横方向は16分割となる。
【0125】
図13に示したテーブル60では、網掛けの領域61は、描画に使用されていることを示しており、網掛けのない領域62は、描画に使用されていないことを示している。描画に使用されているとは、領域内の少なくとも1つのドットの値が「0」以外の値であることである。したがって、図13に示したテーブルで、網掛けのない領域62、たとえば座標(11,0),(12,0)の領域は、最小空白の長さの空白部分であることを示している。
【0126】
テーブル60を用いることの利点は、描画に使用されているか否かの判断を、1ドット単位ではなく、領域単位で判断することができ、検出のための処理量を少なくすることができるということである。また、表示画面が、横空白LSxおよび縦空白LSyのサイズの領域に予め分割されているので、空白部分の数を把握し易いということである。
【0127】
たとえば、テーブル60の座標(2,6)〜(4,7)の3×2の挿入領域63に挿入文字列を挿入し、既存文字列を右方向に移動する場合、座標(6,6)〜(9,7)の4×2の空白部分64があることが、テーブル60から分かる。さらに、1つの領域が最小空白のサイズであるので、最小空白分として、(9,6)、(9,7)を除外しても、3×2の空白部分を確保することができることが、テーブル60から分かる。
【0128】
空白部分の位置がテーブル60で座標(A、B)であるとき、表示画面での位置は、座標(A×LSx,B×LSy)で表わされる。さらに、空白部分のサイズも、確保することができた横方向の領域の個数にLSxを乗じただけのドット数、および確保することができた縦方向の領域の個数にLSyを乗じただけのドット数からなるサイズであることが分かる。
【0129】
上述した実施形態では、ポインティングデバイスとして、タッチパネル15を用いたが、これに限定されるものではなく、マウスなどのポンティングデバイスであってもよい。あるいは、キーボードなどで表示画面に表示されるポインタをポインティングデバイスとして用いてもよい。
【0130】
このように、表示部14は、文字列および図形を表示画面に表示する。タッチパネル15およびペン19は、表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する。タッチパネル15およびペン19は、タッチパネル15およびペン19によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する。CPU21は、表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち、タッチパネル15およびペン19によって指定された挿入領域に近接する空白部分を検出する。CPU21は、タッチパネル15およびペン19によって入力された挿入文字列および挿入図形の長さおよびCPU21によって検出された空白部分の長さを計算する。そして、CPU21は、CPU21によって計算された空白部分の長さから予め定める基準長を減算し、減算した長さと、CPU21によって計算された挿入文字列および挿入図形の長さとを比較し、減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示部14に表示させるとともに、前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小し、前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示部14に表示させる。したがって、後続部分をずらすスペースがない場合にも既存の文字列および図形に、文字列および図形を挿入することができる。
【0131】
さらに、CPU21は、前記新たに形成された空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小した縮小率が予め定める基準縮小率よりも小さいとき、前記挿入領域の始端から空白部分の始端までの長さと前記減算した長さとを加算し、前記挿入文字列および挿入図形ならびに前記既存文字列および既存図形からなる結合文字列および結合図形の長さが前記加算した長さに一致するように、前記結合文字列および結合図形を縮小し、縮小した結合文字列および結合図形に含まれる既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動し、前記移動したことによって形成される新たな空白部分に、前記縮小した結合文字列および結合図形に含まれる挿入文字列および挿入図形を表示部14に表示させる。したがって、挿入文字列および挿入図形のみを縮小するだけでは、文字列および図形の区切りのための空白部分を確保できない場合にも、既存の文字列および図形に、文字列および図形を挿入することができる。
【0132】
さらに、CPU21による空白部分の検出する空白部分は、タッチパネル15およびペン19によって指定された挿入領域の始端から文字列および図形の配列方向の上流側の方向、ならびに前記挿入領域の終端から文字列および図形の配列方向の下流側の方向のうちのいずれかに設定可能である。したがって、既存文字列および既存図形を前方向にも後方向にも移動することができる。
【0133】
さらに、CPU21は、タッチパネル15およびペン19によって指定された挿入領域の縦横比に基づいて縦書きであるか横書きであるかを判断する。したがって、縦書きにも横書きにも適用することができる。
【0134】
さらに、記憶デバイス25は、表示部14によって表示させるための文字列および図形を背景色のドットおよび背景色以外の色のドットからなるビットマップとして記憶する。そして、CPU21は、ビットマップを予め定めるドット長からなる領域に分割し、各領域が背景色のドットのみからなる背景領域か背景色以外の色のドットを含む非背景領域かを表すテーブル60を記憶デバイス25に記憶し、テーブル60に基づいて、空白部分を検出する。したがって、空白部分の検出を少ない処理量で行うことができる。
【0135】
さらに、文字列および図形を表示画面に表示する表示部14と、表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定するタッチパネル15およびペン19と、タッチパネル15およびペン19によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力するタッチパネル15およびペン19とを含む表示装置で実行される表示方法で文字列および図形を表示するにあたって、図8〜図10に示したフローチャートにおいて、ステップA8,A13,A16,A21では、表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する。ステップA8,A13,A16,A21では、タッチパネル15およびペン19によって入力された挿入文字列および挿入図形の長さおよびステップA8,A13,A16,A21で検出された空白部分の長さを計算する。ステップA9,A17では、ステップA8,A13,A16,A21で計算された空白部分の長さから予め定める基準長を減算する。ステップA10,A18では、ステップA9,A17で減算した長さと挿入文字列および挿入図形の長さとを比較する。ステップA34,A54では、ステップA9,A17で減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示部14に表示させる。ステップA35,A55では、前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小する。そして、ステップA35,A55では、前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示部14に表示させる。したがって、後続部分をずらすスペースがない場合にも既存の文字列および図形に、文字列および図形を挿入することができる。
【符号の説明】
【0136】
1 タッチパネルシステム
10 ディスプレイ
11 ディスプレイコントローラ
12 メモリ
13 画像メモリ
14 表示部
15 タッチパネル
16 映像入力端子
17 ディスプレイ電源部
19 ペン
20 表示制御装置
21 CPU
22 RAM
23 GRAM
24 映像出力端子
25 記憶デバイス
26 入出力端子
27 バス
28 表示制御電源部
151 受信部
152 出力部
153 タッチパネル電源部
154 タッチパネルコントローラ
155 発光部制御回路
156 第1赤外線発光部アレイ
157 第2赤外線発光部アレイ
158 第1赤外線受光部アレイ
159 第2赤外線受光部アレイ
160 受光部制御回路
161 座標生成部
162 タッチパネル電源スイッチ
191 ペン先スイッチ
192 操作スイッチ
193 スイッチ検出部
194 送信部
195 ペン電源スイッチ
196 ペン電源部

【特許請求の範囲】
【請求項1】
文字列および図形を表示画面に表示する表示手段と、
表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する指定手段と、
指定手段によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する入力手段と、
表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する検出手段と、
入力手段によって入力された挿入文字列および挿入図形の長さおよび検出手段によって検出された空白部分の長さを計算する計算手段と、
計算手段によって計算された空白部分の長さから予め定める基準長を減算し、減算した長さと、計算手段によって計算された挿入文字列および挿入図形の長さとを比較し、減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示手段に表示させるとともに、前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小し、前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示手段に表示させる制御手段とを含むことを特徴とする表示装置。
【請求項2】
前記制御手段は、前記新たに形成された空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小した縮小率が予め定める基準縮小率よりも小さいとき、前記挿入領域の始端から空白部分の始端までの長さと前記減算した長さとを加算し、前記挿入文字列および挿入図形ならびに前記既存文字列および既存図形からなる結合文字列および結合図形の長さが前記加算した長さに一致するように、前記結合文字列および結合図形を縮小し、縮小した結合文字列および結合図形に含まれる既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動し、前記移動したことによって形成される新たな空白部分に、前記縮小した結合文字列および結合図形に含まれる挿入文字列および挿入図形を表示手段に表示させることを特徴とする請求項1に記載の表示装置。
【請求項3】
前記検出手段による空白部分の検出は、前記指定手段によって指定された挿入領域の始端から文字列および図形の配列方向の上流側の方向、ならびに前記挿入領域の終端から文字列および図形の配列方向の下流側の方向のうちのいずれかに設定可能であることを特徴とする請求項1または2に記載の表示装置。
【請求項4】
前記制御手段は、前記指定手段によって指定された挿入領域の縦横比に基づいて縦書きであるか横書きであるかを判断することを特徴とする請求項1〜3のいずれか1つに記載の表示装置。
【請求項5】
前記表示手段によって表示させるための文字列および図形を背景色のドットおよび背景色以外の色のドットからなるビットマップとして記憶する記憶手段をさらに含み、
前記制御手段は、ビットマップを予め定めるドット長からなる領域に分割し、各領域が背景色のドットのみからなる背景領域か背景色以外の色のドットを含む非背景領域かを表す領域情報を記憶手段に記憶し、領域情報に基づいて、空白部分を検出することを特徴とする請求項1〜4のいずれか1つに記載の表示装置。
【請求項6】
文字列および図形を表示画面に表示する表示手段と、表示画面に表示された文字列および図形の間に文字列および図形を挿入するための挿入領域を指定する指定手段と、指定手段によって指定された挿入領域内に挿入する挿入文字列および挿入図形を入力する入力手段とを含む表示装置で実行される表示方法であって、
表示画面に表示された文字列および図形の中に形成された予め定める基準長以上の長さの空白部分のうち指定手段によって指定された挿入領域に近接する空白部分を検出する検出工程と、
入力手段によって入力された挿入文字列および挿入図形の長さおよび検出工程で検出された空白部分の長さを計算する計算工程と、
計算工程で計算された空白部分の長さから予め定める基準長を減算する減算工程と、
減算工程で減算した長さと挿入文字列および挿入図形の長さとを比較する比較工程と、
減算工程で減算した長さよりも挿入文字列および挿入図形の長さが長いとき、表示画面に表示された文字列および図形のうち挿入領域の始端から空白部分の始端までの間にある既存文字列および既存図形を前記減算した長さだけ前記空白部分の方向に移動して表示手段に表示させる第1の表示工程と、
前記挿入文字列および挿入図形の長さが前記移動したことによって形成される新たな空白部分の長さに一致するように前記挿入文字列および挿入図形を縮小する縮小工程と、
前記新たな空白部分に前記縮小した挿入文字列および挿入図形を表示手段に表示させる第2の表示工程とを含むことを特徴とする表示方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2012−212207(P2012−212207A)
【公開日】平成24年11月1日(2012.11.1)
【国際特許分類】
【出願番号】特願2011−76239(P2011−76239)
【出願日】平成23年3月30日(2011.3.30)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】