(57)【要約】【課題】ユーザが容易にテキスト編集を行えることを目的とする。【解決手段】テキストにアニメーショングリフが含まれるか否かを判定する判定手段と、判定手段によりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態において前記アニメーショングリフの状態を変更する変更手段と、を有することによって課題を解決する。【選択図】図３
2015035093.tif 000002
【特許請求の範囲】
【請求項１】
テキストにアニメーショングリフが含まれるか否かを判定する判定手段と、
前記判定手段によりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態において前記アニメーショングリフの状態を変更する変更手段と、
を有する情報処理装置。
【請求項２】
前記判定手段は、更に、キャレットの周辺にアニメーショングリフが存在するか否かを判定し、
前記変更手段は、前記判定手段によりテキストにアニメーショングリフが含まれると判定され、かつ、前記キャレットの周辺にアニメーショングリフが存在すると判定された場合、前記テキストの編集状態において前記アニメーショングリフの状態を変更する請求項１記載の情報処理装置。
【請求項３】
前記判定手段は、前記キャレットの前後所定文字内にアニメーショングリフが存在する場合、キャレットの周辺にアニメーショングリフが存在すると判定する請求項２記載の情報処理装置。
【請求項４】
前記変更手段は、前記アニメーショングリフの位置を変更する請求項１乃至３何れか１項記載の情報処理装置。
【請求項５】
前記変更手段は、前記アニメーショングリフの色情報を変更する請求項１乃至３何れか１項記載の情報処理装置。
【請求項６】
前記変更手段は、前記アニメーショングリフの形状情報を変更する請求項１乃至３何れか１項記載の情報処理装置。
【請求項７】
テキストにアニメーショングリフが含まれるか否かを判定する判定手段と、
前記判定手段によりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態においてキャレットの状態を変更する変更手段と、
を有する情報処理装置。
【請求項８】
前記判定手段は、更に、前記キャレットの周辺にアニメーショングリフが存在するか否かを判定し、
前記変更手段は、前記判定手段によりテキストにアニメーショングリフが含まれると判定され、かつ、前記キャレットの周辺にアニメーショングリフが存在すると判定された場合、前記テキストの編集状態において前記キャレットの状態を変更する請求項７記載の情報処理装置。
【請求項９】
前記判定手段は、前記キャレットの前後所定文字内にアニメーショングリフが存在する場合、キャレットの周辺にアニメーショングリフが存在すると判定する請求項８記載の情報処理装置。
【請求項１０】
前記変更手段は、前記キャレットの数を変更する請求項７乃至９何れか１項記載の情報処理装置。
【請求項１１】
前記変更手段は、前記キャレットの色情報を変更する請求項７乃至９何れか１項記載の情報処理装置。
【請求項１２】
アニメーショングリフか、キャレットか変更する対象を選択する選択手段と、
テキストにアニメーショングリフが含まれるか否かを判定する判定手段と、
前記判定手段によりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態において前記選択手段で選択された対象を変更する変更手段と、
を有する情報処理装置。
【請求項１３】
情報処理装置が実行する情報処理方法であって、
テキストにアニメーショングリフが含まれるか否かを判定する判定ステップと、
前記判定ステップによりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態において前記アニメーショングリフの状態を変更する変更ステップと、
を含む情報処理方法。
【請求項１４】
情報処理装置が実行する情報処理方法であって、
テキストにアニメーショングリフが含まれるか否かを判定する判定ステップと、
前記判定ステップによりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態においてキャレットの状態を変更する変更ステップと、
を含む情報処理方法。
【請求項１５】
情報処理装置が実行する情報処理方法であって、
アニメーショングリフか、キャレットか変更する対象を選択する選択ステップと、
テキストにアニメーショングリフが含まれるか否かを判定する判定ステップと、
前記判定ステップによりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態において前記選択ステップで選択された対象を変更する変更ステップと、
を含む情報処理方法。
【請求項１６】
コンピュータを請求項１乃至１２何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、テキストの編集にあって文字の挿入位置をユーザにフィードバックするために縦棒や山形、矩形がキャレットとして表示されてきた。キャレットによりユーザは入力した文字がどの位置に挿入されるか、また削除操作をした場合にどの文字が削除されるかを把握することができた。一方でユーザはキャレットをキーボードやマウス、タッチ操作等で移動することができた。
挿入位置だけでなく、挿入位置に対応した文字の拡大縮小・回転に応じてカーソルの表示を変化させる技術が従来技術として知られている（特許文献１）。
一方で、ＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）の表現力を文字の表示自体に利用する仕様も検討されている。ＳＶＧはベクトル情報以外にも色情報やアニメーション情報も記述することができ、一つずつの文字が複数の色情報や拡大・縮小するアニメーション等を持つことができるようになる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０９−１２８２０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術は文字が静止又は静止した状態と同じ枠内でアニメーションすることを前提としている。キャレットが上下左右に移動するだけではキャレットに対応する文字がわからなくなり、ユーザが容易にテキスト編集を行えない課題があった。
【０００５】
本発明は、ユーザが容易にテキスト編集を行えることを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明は、情報処理装置であって、テキストにアニメーショングリフが含まれるか否かを判定する判定手段と、前記判定手段によりテキストにアニメーショングリフが含まれると判定された場合、前記テキストの編集状態において前記アニメーショングリフの状態を変更する変更手段と、を有する。
【発明の効果】
【０００７】
本発明によれば、ユーザが容易にテキスト編集を行えることができる。
【図面の簡単な説明】
【０００８】
【図１】テキスト表示装置のハードウェア構成の一例を示す図である。
【図２】実施形態１のテキスト表示装置のソフトウェア構成の一例を示す図である。
【図３】実施形態１の情報処理の一例を説明するフローチャートである。
【図４】字形とアニメーション情報との一例を示す図である。
【図５】テキストがアニメーションする文字を含む場合の、時間の経過に伴いテキスト表示の一例を示す図である。
【図６】実施形態１の編集状態にあるテキストの描画結果の一例を示す図である。
【図７】実施形態２のテキスト表示装置のソフトウェア構成の一例を示す図である。
【図８】実施形態２の情報処理の一例を説明するフローチャートである。
【図９】実施形態２の編集状態にあるテキストの描画結果の一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
【００１０】
図１は、テキスト表示装置のハードウェア構成の一例を示す図である。
ＣＰＵ１０８は、システム制御部であり、装置全体を制御する。
ＲＯＭ１０２は、プログラムや各種固定データを格納する。
ＲＡＭ１０３は、ＳＲＡＭ、ＤＲＡＭ等で構成され、プログラム制御変数等を格納する。また、各種設定パラメータ、各種ワーク用バッファもＲＡＭ１０３に格納される。
外部記憶部１０４は、ハードディスク等で構成され、文書や画像等のファイルデータを格納する。
入力部１０５は、キーボード、タッチパネル等で構成され、オペレータが各種入力操作を行うためのものである。
表示部１０６は、ＬＣＤ、ＬＥＤ等でオペレータに表示通知する。
Ｉ／Ｆ１０７は、ネットワークに接続するためのインターフェースである。接続方法としてはＬＡＮ、ＵＳＢ等がある。
同図に示した構成は、本実施形態に係るテキスト表示装置１０１の一部を示したものであり、装置によっては、この他、スキャナ部、プリンタ部、モデム、スピーカ等が装置の構成に加わる場合がある。
ＣＰＵ１０８が、ＲＯＭ１０２又は外部記憶部１０４に記憶されているプログラムに基づき処理を実行することによって、後述するテキスト表示装置１０１のソフトウェア構成及びフローチャートに係る処理が実現される。
テキスト表示装置１０１は、情報処理装置の一例である。
【００１１】
＜実施形態１＞
図２は、実施形態１のテキスト表示装置のソフトウェア構成の一例を示す図である。
以下、図３のフローチャートに沿って本実施形態の情報処理の一例を説明する。
描画情報記憶部２０３は、描画に関する情報を記憶している。
テキスト解析部２０４は、描画情報記憶部２０３に記憶されている情報に基づいて描画するテキストが編集状態かどうかを判定する（ステップＳ３０１）。テキスト解析部２０４は、編集状態であればステップＳ３０２、そうでなければステップＳ３１５に進む。テキストは、例えばユーザのキーボード操作やマウス操作、タッチ操作により編集状態に移行し、編集状態にあってはキャレットが表示される。
テキスト解析部２０４は、テキストがアニメーショングリフを含むかどうかを調べる（ステップＳ３０２）。テキスト解析部２０４は、含む場合はステップＳ３０３、含まない場合はステップＳ３１５に進む。テキスト解析部２０４は、アニメーショングリフであるかどうかは、例えばテキストを描画するフォントのヘッダ情報から判定する。又は、テキスト解析部２０４は、フォントのグリフ情報がアニメーション情報を含むかどうかから判定してもよい。又は、テキスト解析部２０４は、テキストが特定の文字コードを含むかどうかから判定してもよい。又は、テキスト解析部２０４は、アプリケーションが提供する情報から判定してもよい。又は、テキスト解析部２０４は、ユーザの指示に基づいて判定してもよい。
【００１２】
グリフ解析部２０５は、描画情報記憶部２０３からテキスト中でのキャレット情報を取得し、キャレットの前後にあるグリフ情報を解析する（ステップＳ３０３）。
グリフ解析部２０５は、キャレットの前後のグリフがアニメーション情報を含むかどうか調べる（ステップＳ３０４）。グリフ解析部２０５は、含む場合、ステップＳ３０５、含まない場合、ステップＳ３１５に進む。グリフ解析部２０５は、例えばグリフ情報がＳＶＧで記述されている場合、アニメーションに関連する要素があるかどうかからキャレットの前後のグリフがアニメーション情報を含むかどうかを判定する。また、解析の結果、ユーザがテキストを編集している間にはアニメーションが行われないと判定できた場合、グリフ解析部２０５は、ステップＳ３１５に進んでもよい。
本実施形態ではキャレットの前又は後ろのグリフがアニメーション情報を含むかどうか調べたが、グリフ解析部２０５は、キャレットの前後所定文字内のグリフがアニメーション情報を含むかどうかを調べるようにしてもよい。
【００１３】
本実施形態にあっては字形とアニメーション情報とは図４のようにＳＶＧで記述される。＜ｐａｔｈ＞要素によって文字の字形が定義され、＜ａｎｉｍａｔｅＴｒａｎｓｆｏｒｍ＞によって文字のアニメーションが定義されている。文字との関係はｉｄ属性によって指定されている。テキストがアニメーションする文字を含む場合、時間の経過に伴いテキスト表示は例えば図５のように変化する。
図５にあって「Ａ」、「Ｂ」はアニメーションを持たない文字で、「☆」はアニメーション情報を持つ文字である。「☆」は図５の（ａ）から図５の（ｂ）、図５の（ｂ）から図５の（ｃ）へと回転しながら右上に移動し、今度は逆に図５の（ｃ）から図５の（ｂ）、図５の（ｂ）から図５の（ａ）へと元の位置まで戻る、繰り返しのアニメーションを行う。
グリフ解析部２０５は、グリフ情報記憶部２０６に現在のグリフの状態を記憶する（ステップＳ３０５）。保存するグリフ情報は、例えばグリフの位置、形状、色情報である。
計算部２０７は、グリフ解析部２０５からグリフのアニメーション情報を取得する（ステップＳ３０６）。
計算部２０７は、グリフのアニメーション情報から、グリフがキャレットに対応する位置にくる時点を計算する（ステップＳ３０７）。対応する位置はそのグリフがアニメーションしないグリフだった場合に配置される位置である。例えば横書きの場合、キャレットの前後である。
【００１４】
計算部２０７は、キャレットに対応する位置にくる時点が計算可能かどうか判定する（ステップＳ３０８）。計算部２０７は、可能な場合、ステップＳ３１１、不可能な場合、ステップＳ３０９に進む。例えば、計算部２０７は、グリフがキャレットの前後にくるようなアニメーション情報を持っていない場合、時点は計算不可能であると判定する。
計算部２０７は、初期状態でのグリフのアフィン行列を取得する（ステップＳ３０９）。初期状態は例えば描画開始直後の状態である。本実施形態にあっては、テキスト表示装置１０１は、アフィン変換によってグリフの位置情報を管理するが、２次元座標やインデックスで管理してもよい。
計算部２０７は、初期状態のグリフがキャレットに対応する位置にくるようにアフィン変換を計算する（ステップＳ３１０）。本実施形態にあっては、計算部２０７は、アニメーションしないグリフと同じ高さになるように、平行移動の他に回転や拡大縮小も含めたアフィン変換を計算する。
グリフ操作部２０８は、計算部２０７の計算結果を基にグリフの位置情報を更新しキャレットに対応する位置に置く（ステップＳ３１１）。また、グリフ操作部２０８は、キャレットに対応するようにグリフの形状情報を更新してもよい。
【００１５】
グリフ解析部２０５は、描画情報記憶部２０３からグリフの色情報を取得する（ステップＳ３１２）。本実施形態にあって色情報は各８ビットのアルファ、赤、緑、青で表現される。色の透明度はアルファによって管理される。
グリフ解析部２０５は、描画する時点での色情報のアルファを確認し、透明かどうかを判定する（ステップＳ３１３）。グリフ解析部２０５は、透明な場合、ステップＳ３１４、そうでない場合、ステップＳ３１５に進む。
グリフ操作部２０８は、グリフのアルファを不透明に変更する（ステップＳ３１４）。本実施形態では、グリフ解析部２０５は、グリフのアルファを不透明にするが、半透明に変更してもよい。グリフ操作部２０８は、半透明の度合いをアニメーション情報に基づいて計算してもよい。
描画部２０２は、グリフを表示部１０６に描画する（ステップＳ３１５）。
描画部２０２は、キャレットを表示部１０６に描画する（ステップＳ３１６）。本実施形態にあっては、描画部２０２は、グリフを描画した後キャレットを描画したが、キャレットを描画した後にグリフを描画してもよい。本実施形態にあってキャレットは図６の（ａ）のように縦棒で表現されるが、矩形や点線、山形であってもよい。
【００１６】
編集状態にあるテキストの描画結果は図６のようになる。図６にあって「Ａ」、「Ｂ」はアニメーションを持たない文字で、「☆」はアニメーション情報を持つ文字である。キャレットは縦棒で表現されている。０秒時点でのテキスト表示は図６の（ａ）のようになる。キャレットの前後にアニメーション文字がない場合は図６の（ｂ）のように「☆」はアニメーションを継続する。キャレットが右に移動するとキャレットの前後にアニメーション文字が存在することになるためグリフをキャレットに対応する位置に置くため、「☆」のアニメーションは停止し、図６（ｃ）のようになる。
テキストが編集状態でなくなった場合（キャレットが離れた場合）、例えば、グリフ操作部２０８は、ステップＳ３１８に進む（ステップＳ３１７）。
グリフ操作部２０８は、グリフ情報記憶部２０６から保存されていたグリフ情報を取得し、グリフに再設定する（ステップＳ３１８）。
【００１７】
以上説明した情報処理を行うことで、文字がアニメーションするテキストであってもキャレット周辺に関してはアニメーションを抑制し、ユーザが容易にテキストを編集することができる。
本実施形態では、テキスト表示装置１０１は、キャレット周辺のアニメーションを抑制する例を示した。しかしながら、テキスト表示装置１０１は、テキスト編集中にはキャレット周辺以外のアニメーションを抑制するようにしてもよい。
【００１８】
＜実施形態２＞
実施形態１では、キャレット周辺のグリフのアニメーションを抑制する方法について説明した。本実施形態にあっては、グリフのアニメーションに応じたキャレットの表示を行う例について説明する。
図７は、実施形態２のテキスト表示装置のソフトウェア構成の一例を示す図である。
以下、図８のフローチャートに沿って実施形態の情報処理の一例を説明する。
なお、実施形態１と同一の処理については説明を省略し、実施形態１と異なる点を中心に簡潔に説明する。
キャレット情報記憶部７０１は、描画情報記憶部２０３からテキスト中のキャレット情報を取得する。キャレット情報は、例えばキャレットの形状、点滅間隔、色情報である。キャレット情報記憶部７０１は、取得したキャレット情報を記憶する（ステップＳ８０１）。
本実施形態にあって静止した文字に対して表示されるキャレットをメインキャレット、アニメーションするグリフに対応して表示されるキャレットをグリフキャレットと呼ぶ。静止した文字に対してはメインキャレットのみが表示され、アニメーションするグリフに対してはメインキャレットとグリフキャレットとの二つが表示される。但し、アニメーションするグリフに対してはグリフキャレットのみ表示してもよい。
【００１９】
グリフ解析部２０５は、アニメーションするグリフの包含矩形を取得する（ステップＳ８０２）。本実施形態にあって包含矩形は座標系に対して水平・垂直な辺で構成されるパスを囲む最小の矩形である。又は、包含矩形の情報をフォント又はグリフが持っていてもよい。
計算部２０７は、グリフキャレットの位置を計算する（ステップＳ８０３）。本実施形態にあって横書きテキストの場合にグリフキャレットは包含矩形の左辺又は右辺に表示される。キャレットが左から右に移動する場合、キャレットはまず包含矩形の左辺に表示され、次の移動で右辺に表示される。
キャレット操作部７０２は、メインキャレットを点線にする（ステップＳ８０４）。本実施形態にあっては点線にしたが、キャレット操作部７０２は、色情報を変更してもよい。又は、キャレット操作部７０２は、線の幅を変更してもよい。又は、キャレット操作部７０２は、キャレットの形状情報を更新してもよい。キャレット操作部７０２は、グリフのアニメーション情報に応じてどのような変更を行うか判定してもよい。
キャレット操作部７０２は、グリフキャレットを点線にする（ステップＳ８０５）。
【００２０】
描画部２０２は、メインキャレットを描画する（ステップＳ８０６）。
描画部２０２は、グリフキャレットを描画する（ステップＳ８０７）。
編集状態にあるテキストの描画結果は図９のようになる。図９にあって「Ａ」、「Ｂ」はアニメーションを持たない文字で、「☆」はアニメーション情報を持つ文字である。キャレットは縦棒で表現されている。０秒時点でのテキスト表示は図６の（ａ）のようになる。キャレットの前後にアニメーション文字がない場合は図６の（ｂ）のように「☆」はアニメーションを継続する。キャレットが右に移動すると、キャレットの前後にアニメーション文字がくることになるため、メインキャレットが点線で表示され、アニメーションを継続している「☆」の左側にグリフキャレットが表示され、図９の（ｃ）のようになる。
キャレット操作部７０２は、グリフキャレットを削除する（ステップＳ８０８）。
キャレット操作部７０２は、キャレット情報記憶部７０１からキャレット状態を取得し、キャレットの状態を復元する（ステップＳ８０９）。
【００２１】
以上説明した情報処理を行うことで、文字がアニメーションするテキストであってもメインキャレットとグリフキャレットとを表示し、ユーザが容易にテキストを編集することができる。
【００２２】
＜実施形態３＞
テキスト表示装置は、画面等を介したユーザの選択操作に応じて、実施形態１と実施形態２とのどちらの処理を実行するかを選択し、選択に基づき処理を実行するようにしてもよい。つまり、テキスト表示装置は、画面等を介したユーザの選択操作に応じて、変更する対象としてアニメーショングリフか、キャレットかを選択するようにしてもよい。そして、テキスト表示装置は、選択した対象に対して状態を変更するようにしてもよい。
また、本実施形態にあってはユーザが選択を行ったが、テキスト表示装置が、テキストやフォント、グリフに応じて実施形態１と実施形態２とのどちらの処理を実行するか選択してもよい。また、テキスト表示装置は、テキスト表示装置の解像度やＣＰＵ、ＧＰＵ、メモリに応じて実施形態１と実施形態２とのどちらの処理を実行するか選択してもよい。
【００２３】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００２４】
以上、上述した各実施形態によれば、ユーザが容易にテキスト編集を行えることができる。
【００２５】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００２６】
１０２  ＲＯＭ、１０３  ＲＡＭ、１０４  外部記憶部、１０５  入力部、１０６  表示部、１０７  Ｉ／Ｆ、１０８  ＣＰＵ
【図１】
2015035093.tif 000003
【図２】
2015035093.tif 000004
【図３】
2015035093.tif 000005
【図４】
2015035093.tif 000006
【図５】
2015035093.tif 000007
【図６】
2015035093.tif 000008
【図７】
2015035093.tif 000009
【図８】
2015035093.tif 000010
【図９】
2015035093.tif 000011