(57)【要約】【課題】  表示されたコンテンツに対してマスクなどの機能を最適に付加することのできるコンテンツ処理装置を提案する。【解決手段】  リンク等のアクションイベントが含まれているコンテンツに対してマスクを付加する際、リンク内の文字に順次カーソル移動させて（図６（Ａ）〜（Ｃ））、マスク開始位置とするためにリンク内の文字で決定キーを押すと（図６（Ｃ））、そのリンク全体を一括してマスク範囲として選択する（図６（Ｄ））。【選択図】        図６
2006209614.tif 000002
【特許請求の範囲】
【請求項１】
選択状態で指示されると何らかの処理を実行するアクションイベントを含むコンテンツデータを表示する表示手段と、
前記表示されたコンテンツデータのうちの少なくとも一部に範囲を指示する範囲指示手段と、
前記指示にしたがって前記範囲の開始位置を設定する開始位置設定手段と、
前記指示にしたがって前記範囲の終了位置を設定する終了位置設定手段とを備え、
前記範囲指示手段において前記アクションイベントのうちの一部を前記範囲の開始位置として指示された場合に、
前記開始位置設定手段は、前記アクションイベントの開始位置を前記範囲の開始位置に設定し、
前記終了位置設定手段は、前記アクションイベントの終了位置を前記範囲の終了位置に設定する、コンテンツ処理装置。
【請求項２】
前記範囲指示手段において前記アクションイベント以前を開始位置として前記アクションイベントの少なくとも一部を含む領域を前記範囲として指示された場合に、
前記終了位置設定手段は、前記アクションイベントの直前までを前記範囲の終了位置に設定する、請求項１に記載のコンテンツ処理装置。
【請求項３】
前記範囲指示手段において前記アクションイベント以前を開始位置として前記アクションイベントの少なくとも一部を含む領域を前記範囲として指示された場合に、
前記指示された領域のうちの前記アクションイベントを除く領域を前記範囲に設定する範囲設定手段をさらに備える、請求項１に記載のコンテンツ処理装置。
【請求項４】
少なくとも一部分にマスク画像が重なって前記一部分が非表示となっているコンテンツデータを表示する表示手段と、
前記表示されたコンテンツデータのうちの１個所をカーソル位置として指示する位置指示手段と、
前記指示された個所が前記一部分に含まれる場合、前記一部分全体をカーソル位置として表示するカーソル表示手段とを備える、コンテンツ処理装置。
【請求項５】
異なるサイズの要素を含むコンテンツデータを表示する表示手段と、
前記表示されたコンテンツデータのうちの少なくとも一部にマスク画像を表示させるための範囲を指示する範囲指示手段と、
前記指示された範囲に含まれる要素のサイズうち、最も大なるサイズに応じた領域を前記マスク画像を表示させるための範囲に設定する範囲設定手段とを備える、コンテンツ処理装置。
【請求項６】
選択状態で指示されると何らかの処理を実行するアクションイベントを含むコンテンツデータを表示する表示手段を備えるコンテンツ処理装置にコンテンツ処理を実行させるためのプログラムであって、
前記表示手段に表示されたコンテンツデータのうちの少なくとも一部に範囲を指示する範囲指示ステップと、
前記指示にしたがって前記範囲の開始位置を設定する開始位置設定ステップと、
前記指示にしたがって前記範囲の終了位置を設定する終了位置設定ステップとを実行させ、
前記範囲指示ステップにおいて前記アクションイベントのうちの一部を前記範囲の開始位置として指示された場合に、
前記開始位置設定ステップにおいては、前記アクションイベントの開始位置を前記範囲の開始位置に設定し、
前記終了位置設定ステップにおいては、前記アクションイベントの終了位置を前記範囲の終了位置に設定する、コンテンツ処理プログラム。
【請求項７】
少なくとも一部分にマスク画像が重なって前記一部分が非表示となっているコンテンツデータを表示する表示手段を備えるコンテンツ処理装置にコンテンツ処理を実行させるためのプログラムであって、
前記表示手段に表示されたコンテンツデータのうちの１個所をカーソル位置として指示する位置指示ステップと、
前記指示された個所が前記一部分に含まれる場合、前記一部分全体をカーソル位置として表示するカーソル表示ステップとを実行させる、コンテンツ処理プログラム。
【請求項８】
異なるサイズの要素を含むコンテンツデータを表示する表示手段を備えるコンテンツ処理装置にコンテンツ処理を実行させるためのプログラムであって、
前記表示手段に表示されたコンテンツデータのうちの少なくとも一部にマスク画像を表示させるための範囲を指示する範囲指示ステップと、
前記指示された範囲に含まれる要素のサイズうち、最も大なるサイズに応じた領域を前記マスク画像を表示させるための範囲に設定する範囲設定ステップとを実行させる、コンテンツ処理プログラム。
【請求項９】
請求項６〜８のいずれかに記載のコンテンツ処理プログラムを記録した、コンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はコンテンツ処理装置、コンテンツ処理プログラム、およびコンテンツ処理プログラムを記録した記録媒体に関し、特に、表示されたコンテンツに対して、ユーザのニーズを満たしつつ最適に機能を付加することのできるコンテンツ処理装置、コンテンツ処理プログラム、およびコンテンツ処理プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
参考書などで勉強をするとき、重要な箇所に蛍光ペンで線を引いたり、特殊なペンで文字に線を引いた後下敷きを載せて線を引いた箇所を黒く隠したりすることがある。電子書籍ビューワや携帯電話などのコンテンツ処理装置においても同様の機能があり、文字上にラインを表示する機能をマーク、文字の一部を塗りつぶして背後の文字を隠し、この塗りつぶしをクリックするごとに背後の文字を表示（ＯＦＦマスク）／非表示（ＯＮマスク）とする機能をマスクと呼ぶことにする。マスクやマークは、ユーザの操作によって作成／削除が可能であり、電子書籍ビューワなどには、作成／削除の開始位置を選択する状態である開始位置選択モードと、作成／削除の終了位置を選択する状態である終了位置選択モードとが存在する。
【０００３】
該コンテンツ処理装置に表示されるコンテンツには、クリックされる、あるいは当該要素が選択状態であることを示すフォーカスＯＮの状態で決定キーが押されることで、コンテンツ中のリンクジャンプ、音声再生開始、アニメ再生開始、マスクのＯＮ／ＯＦＦなどの何らかのアクションを実行するアクションイベントが含まれる。通常状態においてカーソルの移動が指示されると、指示された方向に存在するフォーカス対象が選択状態（フォーカスＯＮ）になる。この機能をフォーカス移動と呼ぶ。特許文献１にもフォーカス移動の機能について開示されている。フォーカス対象としては、上記アクションイベントや、マーク、マスクなどの機能が付加された文字が該当する。
【０００４】
具体的には、コンテンツ処理装置において、図３０（Ａ）に示されるようなリンクジャンプを行なうアクションイベントが含まれるコンテンツ表示中にカーソルの下方向移動または右方向移動が指示されると、図３０（Ｂ）〜図３０（Ｅ）に示されるように、該指示操作に従って、アクションイベントが順次フォーカスＯＮされる。
【０００５】
また、コンテンツ処理装置において、図３１（Ａ）に示されるような音声再生を開始するアクションイベントが含まれるコンテンツ表示中にカーソルの下方向移動または右方向移動が指示されると、図３１（Ｂ），（Ｃ）に示されるように、該指示操作に従って、アクションイベントが順次フォーカスＯＮされる。
【０００６】
また、図３２（Ａ）に示されるようなコンテンツに含まれる画像もフォーカス対象となり、該コンテンツ表示中にカーソルの下方向移動または右方向移動が指示されると、図３２（Ｂ）に示されるように、該画像がフォーカスＯＮ状態となる。さらに、その状態で決定キーが押されると、図３２（Ｃ）に示されるように、アクションとして、該画像の１００％表示が実行される。この意味では、画像もアクションイベントに含まれ得る。
【特許文献１】特開２００３−３０８１４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
アクションイベントやマスクなどの様々な対象に自由にマスクやマークなどの機能の付加を許可することで自由度が高まり、ユーザのニーズを満たすことになる。
【０００８】
しかしながら、フォーカス対象上にフォーカス対象である機能を重ねて付加すると、フォーカス移動処理が複雑になるという問題が発生する。
【０００９】
具体的に、リンクの一部にマスクを付加した場合に、どのような順でフォーカスを移動するかを考えるだけで、数パターン考えなくてはいけない。より詳しくは、図３３（Ａ）〜（Ｅ）に具体的な移動のパターン（パターン（ａ）〜（ｅ））を示して説明する。
【００１０】
図３３（Ａ）には、文字列「次ページへ」（下線はリンクが付加されていることを示す。以下同じ）の「次ペ」部分にマスクが付加された場合のフォーカス移動の考えられるパターンが示されている。また、図３３（Ｂ）には、文字列「次ページへ」の「次ペ」，「ジへ」部分にマスクが付加された場合のフォーカス移動の考えられるパターン、図３３（Ｃ）には、文字列「次ページへ」の「ページ」部分にマスクが付加された場合のフォーカス移動の考えられるパターン、図３３（Ｄ）には、文字列「次ページへ」の全体にマスクが付加された場合のフォーカス移動の考えられるパターン、図３３（Ｅ）には、文字列「次ページへ」の「次」，「ー」，「へ」部分にマスクが付加された場合のフォーカス移動の考えられるパターンが示されている。
【００１１】
パターン（ａ）には、マスク、およびすでにあるフォーカス対象（リンク）という単位での移動パターンが示され、パターン（ｂ）には、マスクを優先して、マスク、すでにあるフォーカス対象のマスク以外の部分という単位での移動パターンが示され、パターン（ｃ）には、すでにあるフォーカス対象を優先して、マスクのすでにあるフォーカス対象以外の部分、フォーカス対象という単位での移動パターンが示され、パターン（ｄ）には、マスクのみの部分、マスクとすでにあるフォーカス対象との重なり部分、およびすでにあるフォーカス対象のみの部分という単位での移動パターンが示され、パターン（ｅ）には、一方のフォーカス対象が他方のフォーカス対象に含まれている場合の含んでいる（広い方の）フォーカス対象を移動対象とする移動パターンが示されている。
【００１２】
図３３に示されるように、各場合につき、４または５通りのフォーカス移動のパターンが考えられる。
【００１３】
また、フォーカス移動した後決定キーを押したときにどのようなアクションを実行するかについても、そのパターン数だけ考える必要がある。図３３に示された例で考えると、フォーカスの各位置において決定キーが押された場合に実行されるアクションの具体例が図３４〜図３７に示され、図３３に示された各パターンのフォーカス位置ごとにアクションを割当てる必要があることが示されている。
【００１４】
これは、リンク内部の一部にマスクを付加した場合に限らず、図３８に示されるように、画像を含むコンテンツの一部にマスクを付加する場合にも同様であり、図３９に示されるように、図３８（Ａ），図３８（Ｂ）の各場合に考えられるフォーカス移動のパターンのフォーカス位置ごとにアクションを割当てる必要がある。
【００１５】
また、ユーザのニーズに応じて、背後の文字が非表示であるＯＮマスクに重ねてマスクやマークなどの機能を付加する場合、終了位置選択モードで一文字ずつカーソル移動させながら終了位置を選択していくと文字数が明らかとなり、ＯＮマスクの意義が薄れてしまう問題も発生する。あるいは、サイズの異なる文字を含む文字列に対して属性を付加する場合、一文字ずつ文字サイズに応じたマスクやマークを付加すると背後の文字の見当がつき、ＯＮマスクの意義が薄れてしまう問題も発生する。
【００１６】
このように、ユーザのニーズに応じてマスクやマークなどの機能を任意の対象に自由に付加できるようにすると、コンテンツ処理装置での処理が膨大になってしまったり、すでに付加されている機能の意義を損なってしまったりする問題がある。
【００１７】
本発明はこのような問題に鑑みてなされたものであって、ユーザのニーズを満たしつつコンテンツに対して最適に機能を付加することのできるコンテンツ処理装置、コンテンツ処理プログラム、およびコンテンツ処理プログラムを記録した記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１８】
上記目的を達成するために、本発明のある局面に従うと、コンテンツ処理装置は、選択状態で指示されると何らかの処理を実行するアクションイベントを含むコンテンツデータを表示する表示手段と、表示されたコンテンツデータのうちの少なくとも一部に範囲を指示する範囲指示手段と、上記指示にしたがって範囲の開始位置を設定する開始位置設定手段と、上記指示にしたがって範囲の終了位置を設定する終了位置設定手段とを備え、範囲指示手段においてアクションイベントのうちの一部を範囲の開始位置として指示された場合に、開始位置設定手段は、アクションイベントの開始位置を範囲の開始位置に設定し、終了位置設定手段は、アクションイベントの終了位置を範囲の終了位置に設定する。
【００１９】
さらに、範囲指示手段においてアクションイベント以前を開始位置としてアクションイベントの少なくとも一部を含む領域を範囲として指示された場合に、終了位置設定手段は、アクションイベントの直前までを範囲の終了位置に設定することが好ましい。
【００２０】
または、範囲指示手段においてアクションイベント以前を開始位置としてアクションイベントの少なくとも一部を含む領域を範囲として指示された場合に、指示された領域のうちのアクションイベントを除く領域を範囲に設定する範囲設定手段をさらに備えることが好ましい。
【００２１】
本発明の他の局面に従うと、コンテンツ処理装置は、少なくとも一部分にマスク画像が重なって当該一部分が非表示となっているコンテンツデータを表示する表示手段と、表示されたコンテンツデータのうちの１個所をカーソル位置として指示する位置指示手段と、指示された個所が上記一部分に含まれる場合、当該一部分全体をカーソル位置として表示するカーソル表示手段とを備える。
【００２２】
本発明のさらに他の局面に従うと、コンテンツ処理装置は、異なるサイズの要素を含むコンテンツデータを表示する表示手段と、表示されたコンテンツデータのうちの少なくとも一部にマスク画像を表示させるための範囲を指示する範囲指示手段と、指示された範囲に含まれる要素のサイズうち、最も大なるサイズに応じた領域をマスク画像を表示させるための範囲に設定する範囲設定手段とを備える。
【００２３】
本発明のさらに他の局面に従うと、コンテンツ処理プログラムは、選択状態で指示されると何らかの処理を実行するアクションイベントを含むコンテンツデータを表示する表示手段を備えるコンテンツ処理装置にコンテンツ処理を実行させるためのプログラムであって、表示手段に表示されたコンテンツデータのうちの少なくとも一部に範囲を指示する範囲指示ステップと、上記指示にしたがって範囲の開始位置を設定する開始位置設定ステップと、上記指示にしたがって範囲の終了位置を設定する終了位置設定ステップとを実行させ、範囲指示ステップにおいてアクションイベントのうちの一部を範囲の開始位置として指示された場合に、開始位置設定ステップにおいては、アクションイベントの開始位置を範囲の開始位置に設定し、終了位置設定ステップにおいては、アクションイベントの終了位置を範囲の終了位置に設定する。
【００２４】
本発明のさらに他の局面に従うと、コンテンツ処理プログラムは、少なくとも一部分にマスク画像が重なって当該一部分が非表示となっているコンテンツデータを表示する表示手段を備えるコンテンツ処理装置にコンテンツ処理を実行させるためのプログラムであって、表示手段に表示されたコンテンツデータのうちの１個所をカーソル位置として指示する位置指示ステップと、指示された個所が上記一部分に含まれる場合、当該一部分全体をカーソル位置として表示するカーソル表示ステップとを実行させる。
【００２５】
本発明のさらに他の局面に従うと、コンテンツ処理プログラムは、異なるサイズの要素を含むコンテンツデータを表示する表示手段を備えるコンテンツ処理装置にコンテンツ処理を実行させるためのプログラムであって、表示手段に表示されたコンテンツデータのうちの少なくとも一部にマスク画像を表示させるための範囲を指示する範囲指示ステップと、指示された範囲に含まれる要素のサイズうち、最も大なるサイズに応じた領域をマスク画像を表示させるための範囲に設定する範囲設定ステップとを実行させる。
【００２６】
本発明のさらに他の局面に従うと、コンピュータ読取可能な記録媒体は、上記いずれかのコンテンツ処理プログラムを記録する。
【発明を実施するための最良の形態】
【００２７】
以下に、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２８】
［第１の実施の形態］
本発明にかかるコンテンツ処理装置としては、具体的には電子書籍ビューワ、パーソナルコンピュータ、携帯電話、およびＰＤＡ（Personal Digital Assistants）などが該当するが、本発明にかかるコンテンツ処理装置はこれらの装置に限定されない。本実施の形態においては、コンテンツ処理装置を電子書籍ビューワ（以降、ビューワと略する）であるものとして説明を行なう。
【００２９】
図１は、本実施の形態にかかるビューワ１００の構成の具体例を示す図である。図１に示される構成は、ビューワ１００に備えられるＣＰＵ（Central Processing Unit）が、ＲＯＭ（Read Only Memory），ＲＡＭ（Random Access Memory），ＤＲＡＭ（Dynamic Random Access Memory）などのメモリデバイスやＣＰＵに内蔵されるメモリなどから構成される主記憶装置に記憶されているプログラムを読出して実行することで発揮される機能構成である。
【００３０】
図１を参照して、本実施の形態にかかるビューワ１００は、ユーザの操作入力を受付ける操作部１０４と、電子書籍データを表示する表示部１０６と、無線や有線通信を行なって外部の装置からデータを受信するデータ受信部１０１と、ＨＤＤ（Hard Disc Drive），メモリカードなどの着脱可能な記録媒体などから構成される外部記憶部１０２と、電子書籍データを記憶する電子書籍データ記憶部１０３と、文字属性記憶部１０７と、状態遷移表を記憶する状態遷移表記憶部１０８と、状態遷移表を用いて制御を行なう制御部１０５とを含んで構成される。
【００３１】
ビューワ１００においては、挿入されたメモリカードなどの外部記憶部１０２から電子書籍データが読込まれ、あるいはデータ受信部１０１においてネットワークを介して他の装置から電子書籍データが取得され、電子書籍データ記憶部１０３に格納される。
【００３２】
操作部１０４は、上下左右キーおよび決定キーを含んで構成されるキーボードやタッチペンなどから構成され、ユーザの操作入力を受付けると入力信号を制御部１０５に対して出力する。
【００３３】
制御部１０５は、操作部１０４から入力された入力信号に基づいて電子書籍データ記憶部１０３に記憶された所定の電子書籍データを読出して表示データを生成する。その際、電子書籍データに含まれる各文字の属性に関する情報である文字属性情報を生成し、文字属性記憶部１０７に記憶する。
【００３４】
図２に、文字属性記憶部１０７に記憶される文字属性情報の具体例を示す。図２を参照して、文字属性情報は、電子書籍データに含まれる各文字について、リンクが付加されていることや、マスクが付加されていることなどを示す情報である。
【００３５】
より具体的には、図４には、文字列「この鎌倉幕府は１１９２年に、今の神奈川県…」について、文字列「１１９２」の各文字にリンクが付加されており、文字列「鎌倉幕府」に１つの連続したマスクが付加されていることが示されている。
【００３６】
制御部１０５は、制御信号と共に生成した表示データを表示部１０６に対して出力し、表示部１０６で電子書籍データを表示させる。
【００３７】
また、制御部１０５は、操作部１０４から入力された入力信号に基づいて状態遷移表記憶部１０８に記憶される状態遷移表を用いて処理を行なう。
【００３８】
状態遷移表記憶部１０８に記憶される状態遷移表は、キー入力を受付けるカーソルモードまたはペン入力を受付けるペンモードなどの操作入力手段の有効状態を示す入力モードと、マスクやマーカーを作成する範囲の開始位置選択中、終了位置選択中などの操作状態を示す状態モードとを含むモード、発生した操作入力を示す操作イベント、および操作イベントの対象となる要素の３パラメータに基づいて遷移結果を特定する、テーブル形式の情報である。ここで、カーソルモードでの操作イベントとしては、上下左右キーの押下と、決定キーの押下とが挙げられる。また、ペンモードでの操作イベントとしては、ペンダウン、ペンドラッグ（微小移動）、ペンドラッグ（大移動）、およびペンアップとが挙げられる。なお、ペンドラッグ（微小移動）とは、ある要素内にペンダウンした後にペンが移動する操作イベントであって、ペンダウン位置から現在のペン位置までの距離が微小である操作イベントを指す。「微小距離」の定義は様々考えられるが、たとえば、要素の縦または横の小さい方のサイズの半分を超えるかどうかで判断する、などの定義が挙げられる。また、ペンドラッグ（大移動）は、ペンダウンした要素から別の要素内にペン位置が移動する、あるいは、微小ではない距離を移動するイベントを指すなどの定義が挙げられる。
【００３９】
図３は、カーソルモードでマスクを作成する際に用いられる状態遷移表の具体例であって、図４は、ペンモードでマスクを作成する際に用いられる状態遷移表の具体例である。
【００４０】
詳しくは、カーソルモードでマスク作成を行なう際、開始位置選択中モードで上下左右キーが押されてＯＮマスクが付加された（マスクで隠された）文字上にカーソル移動が指示されると、図３に示される状態遷移表より、マスクが付加された文字列が一括して選択状態となり、一文字ずつカーソル移動はなされないことが特定される。その位置で決定キーが押されると、実行する処理として、かかる位置にマスクが作成できない旨のダイアログの表示処理が特定され、表示状態として、変化させない（マスクにカーソルがある表示のままである）ことが特定され、次に移行するモードとして開始位置選択中モードを続行することが特定される。
【００４１】
上下左右キーでＯＦＦマスクが付加された（マスクで隠されていない）文字上にカーソル移動が指示されたときには一文字ずつカーソル移動が実行されることが特定される。その位置で決定キーが押されたときも同様に、実行する処理として、かかる位置にマスクが作成できない旨のダイアログの表示処理が特定され、表示状態として、変化させないことが特定され、次に移行するモードとして開始位置選択中モードを続行することが特定される。
【００４２】
上下左右キーでリンク等のマスク以外の機能が付加された文字やアクションイベント、画像にカーソル移動が指示されたときも一文字ずつカーソル移動が実行されることが特定される。その位置で決定キーが押されると、実行する処理として、当該文字等に一致したマスクを作成する処理が特定され、表示状態としてマスク表示が特定され、次に移行するモードとして開始位置選択中モードを続行することが特定される。
【００４３】
上下左右キーでその他の通常文字上にカーソル移動が指示されたときも一文字ずつカーソル移動が実行されることが特定される。その位置で決定キーが押されると、実行する処理として当該文字を開始位置に設定する開始位置設定処理が特定され、表示状態として反転表示が特定され、次に移行するモードとして終了位置選択中モードが特定される。
【００４４】
次に、終了位置選択中モードで上下左右キーが押されてその他の通常文字上にカーソル移動が指示されると、一文字ずつカーソル移動が実行され、文字列中に回込んだ画像が選択範囲に含まれる場合には、当該画像をまたいでカーソル移動が実行されることが特定される。その位置で決定キーが押されると、実行する処理として、選択範囲である反転部分にマスクを作成する処理が特定され、表示状態として、当該部分のマスク表示が特定され、次に移行するモードとして開始位置選択中モードが特定される。
【００４５】
終了位置選択中モードにおいて上下左右キーでマスクが付加された文字やマスク以外の機能が付加された文字やアクションイベント、画像上にカーソル移動が指示された場合、つまり、通常文字からこれらの文字等に向かってカーソル移動が指示された場合は、その直前でカーソル移動が止まり、当該文字等へのカーソル移動が実行されないことが特定される。そのため、その位置で決定キーがおされた場合の遷移結果は特定されていない。
【００４６】
なお、電子書籍データに含まれるテロップや線や余白など、マスクを付加する対象ではない要素にはカーソルが移動しないため、図３に示される状態遷移表において、これらの項目については遷移結果が特定されていない。
【００４７】
また、ペンモードでマスク作成を行なう際、開始位置選択中モードでマスクが付加された文字にペンダウンされると、図４に示される状態遷移表より、実行する処理として、かかる位置にマスクが作成できない旨のダイアログの表示処理が特定され、表示状態として、変化させないことが特定され、次に移行するモードとして開始位置選択中モードを続行することが特定される。また、テロップや線や余白など、マスクを付加する対象ではない要素にペンダウンされた場合も同様である。このことによって、終了位置選択中モードにおいて、マスクが付加された文字およびマスクを付加する対象ではない要素上で、ペンドラッグ（微小移動）や、自身を開始位置とするペンドラッグ（大移動）が発生しないため、図４に示される状態遷移表において、これらの項目については遷移結果が特定されていない。
【００４８】
リンク等のマスク以外の機能が付加された文字やアクションイベント、画像にペンダウンされると、当該文字等を一括して開始位置に設定する開始位置設定処理が特定され、表示状態として当該文字等に一致した範囲の反転表示が特定され、次に移行するモードとして終了位置選択中モードが特定される。
【００４９】
電子書籍データに含まれるテロップや線や余白など、マスクを付加する対象ではない要素にペンダウンされた場合には、エラーダイアログの表示処理が特定され、表示状態として、変化させないことが特定され、次に移行するモードとして開始位置選択中モードを続行することが特定される。
【００５０】
なお、開始位置選択中モードにおいては、ペンによる操作入力としてペンダウン以外の操作（ペンドラッグ（微小移動）、ペンドラッグ（大移動）、ペンアップ）は発生しないため、図４に示される状態遷移表において、これらの項目については遷移結果が特定されていない。終了位置選択中モードにおいても、ペンによる操作入力としてペンダウンは発生しないため、図４に示される状態遷移表において、当該項目については遷移結果が特定されていない。
【００５１】
終了位置選択中モードにおいてリンク等のマスク以外の機能が付加された文字やアクションイベント、画像上で、ペンドラッグ（微小移動）や、自身を開始位置とするペンドラッグ（大移動）が発生すると、開始位置選択中モードでペンダウンされたときに実行される当該文字等に一致した範囲の反転表示を続行するものと特定される。
【００５２】
マスクが付加された文字や、リンク等のマスク以外の機能が付加された文字やアクションイベント、画像上に、自身を開始位置としないペンドラッグ（大移動）が発生すると、表示状態として当該文字等の直前までの反転表示が特定される。なお、文字列中に回込んだ画像画像上に自身を開始位置としないペンドラッグ（大移動）が発生した場合、ペンドラッグに対応して当該画像をまたいで反転表示が続行されてもよい。
【００５３】
その他の通常文字上にペンドラッグ（微小移動）が発生した場合、通常文字内のペンドラッグ（微小移動）はユーザの誤操作である可能性が高いので、処理を実行しないと特定される。ペンドラッグ（大移動）が発生した場合には、表示状態として指定範囲の反転表示が特定される。なお、当該ペンドラッグが自身を開始位置としないペンドラッグ（大移動）である場合、指定範囲の文字列中にマスクやアクションイベントなどのマスクが付加できない要素がある場合には、当該要素の直前まで反転表示を行ない、回込んだ画像がある場合には、当該画像をまたいで反転表示を行なう。
【００５４】
その位置でペンアップされると、実行する処理として、選択範囲である反転部分にマスクを作成する処理が特定され、表示状態として、当該部分のマスク表示が特定され、次に移行するモードとして開始位置選択中モードが特定される。なお、反転部分がない場合には、処理は実行されない。
【００５５】
制御部１０５での状態遷移表を用いた処理として、具体的に、図３に示される状態遷移表を用いてカーソルモードでマスクを作成する処理を、図５のフローチャートを用いて説明する。
【００５６】
図５を参照して、始めに、ステップＳ１０１において、制御部１０５の制御によって初期状態として開始位置選択モードにモードが移行され、ステップＳ１０３で操作部１０４からのキー入力信号を待機する。
【００５７】
ステップＳ１０３で上下左右キーが押された場合（Ｓ１０３でＹＥＳ、Ｓ１０５でＮＯ、かつＳ１１５でＹＥＳ）、現在のモードが開始位置選択モードであって、指定された方向にある要素がマスク可能な要素であるならば（Ｓ１１７でＹＥＳ、かつＳ１１９でＹＥＳ）、図３に示される状態遷移表からこれらのパラメータで特定される処理、表示状態、および次のモードが読出されて、ステップＳ１２９で当該要素にカーソルが移動し、指定された方向にある要素がマスク可能な要素でないならば（Ｓ１１７でＹＥＳ、かつＳ１１９でＮＯ）、ステップＳ１２１で当該方向にあるマスク可能な次の要素までカーソルが移動し、ステップＳ１０３に処理が戻って次のキー入力を待機する。この際、カーソルの移動先がＯＮマスクの付加された文字である場合には、ステップＳ１２９では当該ＯＮマスクの付加された文字列全体が選択表示される。
【００５８】
ステップＳ１０３で決定キーが押された場合（Ｓ１０３でＹＥＳ、かつＳ１０５でＹＥＳ）、現在のモードが開始位置選択モードであって、カーソルが通常文字上にあるときには（Ｓ１０７でＹＥＳ、かつＳ１０９でＹＥＳ）、図３に示される状態遷移表からこれらのパラメータで特定される処理、表示状態、および次のモードが読出され、ステップＳ１１１で当該カーソルのある通常文字がマスクの開始位置に設定されて、終了位置選択モードに移行する。そして、ステップＳ１２３で、当該カーソルのある通常文字が指定範囲であることがわかるよう反転表示（選択表示）され、ステップＳ１０３に処理が戻って次のキー入力を待機する。
【００５９】
カーソルが通常文字以外の上にあるときには（Ｓ１０７でＹＥＳ、かつＳ１０９でＮＯ）、すなわち、マスクが付加された文字やマスク以外の機能が付加された文字やアクションイベント、画像上にあるとき、ステップＳ１１３において当該文字等の先頭がマスク開始位置に、末尾がマスク終了位置に設定され、これらの範囲でマスクが作成されて処理が終了する。
【００６０】
ステップＳ１０３で上下左右キーが押された場合であって現在のモードが終了位置選択モードである場合（Ｓ１０３でＹＥＳ、Ｓ１０５でＮＯ、Ｓ１１５でＹＥＳ、かつＳ１１７でＮＯ）、ステップＳ１１１でマスクの開始位置が設定された後に上下左右キーが押された場合であるので、図３に示される状態遷移表からこれらのパラメータで特定される処理、表示状態、および次のモードが読出されて、ステップＳ１２５で、指定された方向にある文字にカーソルが移動し、ステップＳ１１１で設定されたマスクの開始位置から当該文字までの間の文字が指定範囲であることがわかるよう反転表示（選択表示）される。そして、ステップＳ１０３に処理が戻って次のキー入力を待機する。なお、指定された方向にある要素が文字でない場合には、その直前の文字でカーソル移動が止まり、該要素が文字列に回込んだ画像である場合には、その画像をまたいで次の文字にカーソルが移動する。
【００６１】
ステップＳ１０３で決定キーが押された場合であって現在のモードが終了位置選択モードである場合（Ｓ１０３でＹＥＳ、Ｓ１０５でＹＥＳ、かつＳ１０７でＮＯ）、ステップＳ１１１でマスクの開始位置が設定された後に決定キーが押された場合であるので、図３に示される状態遷移表からこれらのパラメータで特定される処理、表示状態、および次のモードが読出され、ステップＳ１２７で、現在カーソルのある文字がマスクの開始位置に設定されて、ステップＳ１２５またはステップＳ１２３で反転表示された指定範囲にマスクが作成され、処理が終了する。
【００６２】
制御部１０５では、ペンモードでマスクを作成する場合にも、同様の状態遷移表を用いた処理が実行される。また、マスクに限らず、マーカー等の他の属性を付加する際も同様の処理が実行される。
【００６３】
図６〜図９に、アクションイベントとしてリンクを含む文字列の一部に、属性としてマスクを作成する際の状態遷移例を示し、制御部１０５での処理を具体的に説明する。なお、マーカー等の他の属性を付加する処理も同様であるため、ここでの説明を繰返さない。
【００６４】
カーソルモードでマスクを作成する場合、開始位置選択中モードで上下左右キーの指示を受付けて文字列上をカーソル移動させ（図６（Ａ），図６（Ｂ））、リンクが付加された文字列においても、一文字ずつカーソル移動させる（図６（Ｃ））。そして、図６（Ｃ）に示される、リンク内の文字上にカーソルがあるときに決定キーが押されると、リンクが付加された文字列の先頭文字をマスク開始位置、最終文字をマスク終了位置と設定し、リンク全体にマスクを作成する（図６（Ｄ））。
【００６５】
ペンモードでマスクを作成する場合、開始位置選択中モードで、図７（Ａ）に示されるリンクが付加された文字列内のいずれの文字にペンダウンされても（図７（Ｂ））、リンクが付加された文字列の先頭文字をマスク開始位置、最終文字をマスク終了位置と設定して、当該リンクが付加された文字列と完全に一致した範囲を選択範囲とする。そして、ペンアップされると選択範囲にマスクを作成する（図７（Ｃ））。
【００６６】
このような処理を行なうことで、マスクやマーカー等の属性をアクションイベントの範囲に完全に一致して作成することができる。
【００６７】
なお、上のペンモードでマスクを作成する具体例は図４に示される状態遷移表を用いてマスクを作成する具体例であって、ペンアップを受付けて選択範囲にマスクを作成するものとしたが、ペンアップされなくても、ペンダウンされてリンク範囲に完全に一致した選択範囲が設定された時点で自動的にマスクを作成してもよい。
【００６８】
また、カーソルモードでマスクを作成する場合、開始位置選択中モードで上下左右キーの指示を受付けて文字列上をカーソル移動させ（図８（Ａ）〜図８（Ｃ））、図８（Ｃ）に示されるように通常文字において決定キーの指示を受付けると、当該通常文字をマスク開始位置と設定し、モードを終了位置選択中モードに遷移させる。終了位置選択中モードで上下左右キーの指示を受付けると、図８（Ｄ）〜図８（Ｇ）に示されるように、文字列上をカーソル移動させつつ、マスク開始位置から現在のカーソル位置までを選択範囲とする。図８（Ｇ）に示される状態でさらに右方向に上下左右キーの指示を受付けた場合、つまり通常文字からリンクが付加された文字に向かってカーソル移動を指示されると、カーソル移動をリンクが付加された文字列の直前の文字までとし、リンク内にはカーソル移動させない。そのため、選択範囲はマスク開始位置の文字からリンク直前の文字までとなり、決定キーが押されると、リンク直前までの当該選択範囲にマスクを作成する。
【００６９】
ペンモードでマスクを作成する場合、開始位置選択中モードで、図９（Ａ）に示されるリンクを含む文字列の内の通常文字にペンダウンされ（図９（Ｂ））、当該通常文字からリンクが付加された文字を含んでペンドラッグされたとき、図９（Ｃ）に示されるように、当該通常文字をマスク開始位置、リンクが付加された文字列の直前の通常文字をマスク終了位置と設定して、当該通常文字からリンクが付加された文字列の直前の通常文字までを選択範囲とし、リンク内の文字は選択範囲としない。図９（Ｄ）に示されるように、当該通常文字からリンクが付加された文字を含んでペンドラッグされた後にペンアップされても、図９（Ｅ）に示されるように、当該通常文字からリンクが付加された文字列の直前の通常文字までの選択範囲にマスクを作成する。
【００７０】
このような処理を行なうことで、アクションイベントを含む文字列にマスクやマーカー等の属性を付加するとき、アクションイベントの範囲をはみ出した範囲に属性を作成しないようにできる。
【００７１】
なお、リンク等のアクションイベントのみではなく、テロップや線や余白などの属性を付加する対象ではない要素が文字列に含まれている場合も同様である。
【００７２】
すなわち、図１０を参照して、属性を付加する対象ではない要素（図１０中に四角で示されている）を含む文字列の一部にカーソルモードでマスクを作成する場合、開始位置選択中モードで上下左右キーの指示を受付けて文字列上をカーソル移動させ（図１０（Ａ）〜図１０（Ｃ））、図１０（Ｃ）に示されるように通常文字において決定キーの指示を受付けると、当該通常文字をマスク開始位置と設定し、モードを終了位置選択中モードに遷移させる。終了位置選択中モードで上下左右キーの指示を受付けると、図１０（Ｄ）〜図１０（Ｇ）に示されるように、文字列上をカーソル移動させつつ、マスク開始位置から現在のカーソル位置までを選択範囲とする。図１０（Ｇ）に示される状態でさらに右方向に上下左右キーの指示を受付けた場合、つまり属性を付加する対象ではない要素に向かってカーソル移動を指示されると、カーソル移動を当該要素の直前の文字までとし、当該要素にはカーソル移動させない。そのため、選択範囲はマスク開始位置の文字から属性を付加する対象ではない要素直前の文字までとなり、決定キーが押されると、当該要素直前までの選択範囲にマスクを作成する。
【００７３】
また、図１１を参照して、属性を付加する対象ではない要素（図１１中に四角で示されている）を含む文字列の一部にペンモードでマスクを作成する場合、開始位置選択中モードで、図１１（Ａ）に示される通常文字にペンダウンされ（図１１（Ｂ））、当該通常文字から属性を付加する対象ではない要素を含んでペンドラッグされたとき、図１１（Ｃ）に示されるように、当該通常文字をマスク開始位置、当該要素の直前の通常文字をマスク終了位置と設定して、当該通常文字から当該要素の直前の通常文字までを選択範囲とし、当該要素は選択範囲に含まない。図１１（Ｄ）に示されるように、当該通常文字から属性を付加する対象ではない要素を含んでペンドラッグされた後にペンアップされても、図１１（Ｅ）に示されるように、当該通常文字から当該要素の直前の通常文字までの選択範囲にマスクを作成する。
【００７４】
ビューワ１００の制御部１０５でこのような状態遷移表を用いた処理が実行されることで、アクションイベントを含む文字列に属性を付加する際、属性の範囲をアクションイベントの範囲に完全に一致させることができる。そのため、フォーカス移動のパターン数を格段に減少させることができ、フォーカス移動処理を容易にできる。それに伴って、フォーカスの各位置において決定キーが押された場合に実行されるアクションの候補も格段に減少させることができ、プログラムを簡略化させることができる。また、ユーザの操作性も格段に高まる。
【００７５】
具体的には、図３３に示された具体例と同様の具体例を図１２に示すと、文字列「次ページへ」のリンクを含む範囲にマスクを付加しようとした場合であっても、リンク範囲と完全に一致した範囲「ページ」にマスクが付加される。そのため、図１２（ＡＢＤ）に示されるように、考えられるフォーカス移動のパターンが１パターンに絞られ、図３３（Ａ），（Ｂ），（Ｄ）に示されたリンク範囲とマスクとが不一致の場合のフォーカス移動のパターン（計１３パターン）と比較して、その数が格段に減少する。また、フォーカス移動した後決定キーを押したときに実行されるアクションの候補も、図１３（ＡＢＤ）に示されるように１つに絞られ、図３４，３５（Ａ），（Ｂ）、図３６，３７（Ｄ）に示されたリンク範囲とマスクとが不一致の場合のアクションの候補（計１３アクション）と比較して、その数が格段に減少する。
【００７６】
同様に、文字列「次ページへ」の一部分にマスクを付加しようとした場合であっても、リンク範囲と完全に一致した範囲「次ページへ」にマスクが付加される。そのため、図１２（ＣＥ）に示されるように、考えられるフォーカス移動のパターンが１パターンに絞られ、図３３（Ｃ），（Ｅ）に示されたリンク範囲とマスクとが不一致の場合のフォーカス移動のパターン（計１０パターン）と比較して、その数が格段に減少する。また、フォーカス移動した後決定キーを押したときに実行されるアクションの候補も、図１３（ＣＥ）に示されるように１つに絞られ、図３６，３７（Ｃ），（Ｅ）に示されたリンク範囲とマスクとが不一致の場合のアクションの候補（計１０アクション）と比較して、その数が格段に減少する。
【００７７】
図１４〜図１９に、アクションイベントとして画像を含む文字列の一部に、属性としてマスクを作成する際の状態遷移例を示し、制御部１０５での処理を具体的に説明する。
【００７８】
図３の状態遷移表を用いてカーソルモードでマスクを作成する場合、開始位置選択中モードで上下左右キーの指示を受付けて文字列上をカーソル移動させ（図１４（Ａ），図１４（Ｂ））、画像においても、画像を１つの文字と同様に扱って、画像上にカーソル移動させる（図１４（Ｃ））。そして、図１４（Ｃ）に示される、画像上にカーソルがあるときに決定キーが押されると、当該画像をマスク開始位置およびマスク終了位置と設定し、画像にマスクを作成する（図１４（Ｄ））。
【００７９】
図４の状態遷移表を用いてペンモードでマスクを作成する場合、開始位置選択中モードで、図１５（Ａ）に示される文字列内の画像にペンダウンされると（図１５（Ｂ））、当該画像をマスク開始位置およびマスク終了位置と設定し、当該画像を選択範囲とする。そして、ペンアップされると選択範囲にマスクを作成する（図１５（Ｃ））。
【００８０】
このような処理を行なうことで、マスクやマーカー等の属性を画像であるアクションイベントの範囲に完全に一致して作成することができる。
【００８１】
なお、上のペンモードでマスクを作成する具体例は図４に示される状態遷移表を用いてマスクを作成する具体例であって、ペンアップを受付けて選択範囲にマスクを作成するものとしたが、ペンアップされなくても、ペンダウンされて画像に完全に一致した選択範囲が設定された時点で自動的にマスクを作成してもよい。
【００８２】
また、カーソルモードでマスクを作成する場合、開始位置選択中モードで上下左右キーの指示を受付けて文字列上をカーソル移動させ（図１６（Ａ），図１６（Ｂ））、図１６（Ｂ）に示されるように通常文字において決定キーの指示を受付けると、当該通常文字をマスク開始位置と設定し、モードを終了位置選択中モードに遷移させる。終了位置選択中モードで上下左右キーの指示を受付けると、図１６（Ｂ），図１６（Ｃ）に示されるように、文字列上をカーソル移動させつつ、マスク開始位置から現在のカーソル位置までを選択範囲とする。図１６（Ｃ）に示される状態でさらに右方向に上下左右キーの指示を受付けた場合、つまり通常文字から画像に向かってカーソル移動を指示されると、カーソル移動を画像の直前の文字までとし画像にはカーソル移動させない。そのため、選択範囲はマスク開始位置の文字から画像直前の文字までとなり、決定キーが押されると、画像直前までの当該選択範囲にマスクを作成する。
【００８３】
ペンモードでマスクを作成する場合、開始位置選択中モードで、図１７（Ａ）に示される画像を含む文字列の内の通常文字にペンダウンされ（図１７（Ｂ））、当該通常文字から画像を含んでペンドラッグされたとき、図１７（Ｃ）に示されるように、当該通常文字をマスク開始位置と設定して当該通常文字から画像の直前の通常文字までを選択範囲とし、画像は選択範囲に含めない。図１７（Ｄ）に示されるように、当該通常文字から画像を含んでペンドラッグされた後にペンアップされても、図１７（Ｅ）に示されるように、当該通常文字から画像の直前の通常文字までの選択範囲にマスクを作成する。
【００８４】
このような処理を行なうことで、アクションイベントが画像である場合であっても、アクションイベントを含む文字列にマスクやマーカー等の属性を付加するとき、アクションイベントの範囲をはみ出した範囲に属性を作成しないようにできる。
【００８５】
なお、電子書籍データに含まれる画像としては、図１４〜図１７に示されるような文字列の中に配置されるもの（インライン）と、図１８に示されるような文字が回込んだもの（回込み）とがある。そこで、図１８，図１９に、アクションイベントとして文字の回込んだ画像を含む文字列の一部に、属性としてマスクを作成する際の状態遷移例を示す。
【００８６】
カーソルモードでマスクを作成する場合、開始位置選択中モードで上下左右キーの指示を受付けて文字列上をカーソル移動させ（図１８（Ａ），図１８（Ｂ））、図１８（Ｂ）に示されるように通常文字において決定キーの指示を受付けると、当該通常文字をマスク開始位置と設定し、モードを終了位置選択中モードに遷移させる。終了位置選択中モードで上下左右キーの指示を受付けると、図１８（Ｂ），図１８（Ｃ）に示されるように、文字列上をカーソル移動させつつ、マスク開始位置から現在のカーソル位置までを選択範囲とする。図１８（Ｃ）に示される状態でさらに右方向または下方向に上下左右キーの指示を受付けた場合、図１８（Ｄ），図１８（Ｅ）に示されるように画像をまたいで画像以降の通常文字に次行にわたってカーソル移動させ、マスク開始位置から画像を抜いた現在のカーソル位置までを選択範囲とする。そして、図１８（Ｅ）に示される状態で決定キーが押されると、当該選択範囲にマスクを作成する。
【００８７】
ペンモードでマスクを作成する場合、開始位置選択中モードで、図１９（Ａ）に示される画像を含む文字列の内の通常文字にペンダウンされ（図１９（Ｂ））、当該通常文字から行をまたいでペンドラッグされたとき、図１９（Ｃ）に示されるように、当該通常文字をマスク開始位置と設定して、当該通常文字から画像をまたいで画像以降の通常文字も選択範囲とし、画像は選択範囲に含めない。そして、図１９（Ｄ）に示されるように、当該通常文字から画像を含んで次行にわたってペンドラッグされた後にペンアップされると、図１９（Ｅ）に示されるように、当該選択範囲にマスクを作成する。
【００８８】
ビューワ１００の制御部１０５でこのような状態遷移表を用いた処理が実行されることで、画像であるアクションイベントを含む文字列に属性を付加する際においても、属性の範囲を画像であるアクションイベントの範囲に完全に一致させることができる。そのため、フォーカス移動のパターン数を格段に減少させることができ、フォーカス移動処理を容易にできる。それに伴って、フォーカスの各位置において決定キーが押された場合に実行されるアクションの候補も格段に減少させることができ、プログラムを簡略化させることができる。また、ユーザの操作性も格段に高まる。
【００８９】
具体的には、図３８に示された具体例と同様の具体例を図２０に示すと、画像を一部に含む範囲にマスクを付加しようとした場合であっても、画像と完全に一致した範囲にマスクが付加される。そのため、図２０（ＡＢ）に示されるように、考えられるフォーカス移動のパターンが１パターンに絞られ、図３８（Ａ），（Ｂ）に示された画像とマスクとが不一致の場合のフォーカス移動のパターン（計１０パターン）と比較して、その数が格段に減少する。また、フォーカス移動した後決定キーを押したときに実行されるアクションの候補も１つに絞られ、図３９（Ａ），（Ｂ）に示された画像とマスクとが不一致の場合のアクションの候補（計１０アクション）と比較して、その数が格段に減少する。
【００９０】
以上の説明はマスクやマーカー等の属性を付加する際の制御部１０５の処理の具体的な説明であるが、すでに付加されているマスクやマーカー等の属性を削除する場合も同様の処理が実行される。
【００９１】
具体的には、図２１を参照して、カーソルモードでマスクを削除する場合、削除モードで上下左右キーの指示を受付けて文字列上をカーソル移動させると、図２１（Ａ）に示される位置から図２１（Ｂ）に示される位置までは通常文字の連続のため一文字ずつカーソル移動させ、ＯＮマスク上にカーソルがきたときには、当該ＯＮマスクの付加された文字列を１つの文字として一括してカーソル位置として表示し、カーソル移動させる（図２１（Ｃ））。この状態で決定キーが押されると、当該マスクを削除する。
【００９２】
図２２を参照して、ペンモードでマスクを削除する場合、削除モードで、図２２（Ａ）に示される文字列内のＯＮマスクにペンダウンされると（図２２（Ｂ））、当該画像を削除開始位置と設定する。その状態でペンドラッグされた場合であっても、ペンドラッグに応じて一文字ずつ選択するのではなく、当該ＯＮマスクの付加された文字列を一括して選択し、当該ＯＮマスク末尾の文字まで選択範囲とする（図２２（Ｃ））。なお、このときのペンドラッグは距離が０（すなわちペンタップのみ）であってもよい。そして、ペンアップされると（図２２（Ｄ））、当該選択範囲に付加されているマスクを削除する（図２２（Ｅ））。
【００９３】
なお、このように、ＯＮマスクにカーソルを移動させる際、またはペンダウンやペンドラッグされた際に一文字ずつカーソルや選択状態を示す表示を移動させるのではなく、ＯＮマスクの付加されている文字列を一括して選択状態とすることで、ＯＮマスクの背後に隠されている文字数が明らかとなることがなく、ＯＮマスクの意義が活かされたまま選択することができる。そこで、第２の実施の形態として、第１の実施の形態にかかるビューワと同様のビューワ１００において、ＯＮマスクの意義を活かしつつ機能を付加する制御部１０５での処理について説明する。
【００９４】
［第２の実施の形態］
図２３，図２４は、第２の実施の形態にかかるビューワ１００の状態遷移表記憶部１０８に記憶される状態遷移表の具体例を示す図であって、図２３は、カーソルモードでマスクを作成する際に用いられる状態遷移表の具体例であって、図２４は、ペンモードでマスクを作成する際に用いられる状態遷移表の具体例である。
【００９５】
詳しくは、カーソルモードでマスク作成を行なう際、開始位置選択中モードで上下左右キーが押されてＯＮマスクが付加された文字上にカーソル移動が指示されると、図２３に示される状態遷移表より、ＯＮマスクが付加された文字列が一括して選択状態となり、一文字ずつカーソル移動はなされないことが特定される。また、その位置で決定キーが押されると、実行する処理として、当該ＯＮマスクが付加された文字列先頭の文字を開始位置に設定する処理が特定され、表示状態として反転表示処理、次に移行するモードとして終了位置選択中モードが特定される。
【００９６】
上下左右キーでＯＦＦマスクが付加された文字上にカーソル移動が指示されたときには一文字ずつカーソル移動が実行されることが特定される。その位置で決定キーが押されたときは、実行する処理として、カーソル位置の文字を開始位置に設定する処理が特定され、表示状態として反転表示処理、次に移行するモードとして終了位置選択中モードが特定される。また、リンク等のマスク以外の機能が付加された文字やアクションイベント、画像にカーソル移動が指示されたときも同様である。
【００９７】
終了位置選択中モードにおいて上下左右キーが押されてＯＮマスクが付加された文字上にカーソル移動が指示されると、マスクが付加された文字列が一括して選択状態となり、一文字ずつカーソル移動はなされないことが特定される。また、その位置で決定キーが押されると、実行する処理として、当該ＯＮマスクが付加された文字列末尾の文字を終了位置に設定して選択範囲にマスクを作成する処理が特定され、表示状態としてマスク表示処理、次に移行するモードとして開始位置選択中モードが特定される。
【００９８】
上下左右キーでＯＦＦマスクが付加された文字上にカーソル移動が指示されたときには一文字ずつカーソル移動が実行されることが特定される。その位置で決定キーが押されたときは、実行する処理として、カーソル位置の文字を終了位置に設定して選択範囲にマスクを作成する処理が特定され、表示状態としてマスク表示処理、次に移行するモードとして開始位置選択中モードが特定される。また、リンク等のマスク以外の機能が付加された文字やアクションイベント、画像にカーソル移動が指示されたときも同様である。
【００９９】
上下左右キーでその他の通常文字上にカーソル移動が指示されたときについては、第１の実施例にかかる状態遷移表と同様である。
【０１００】
また、ペンモードでマスク作成を行なう際、開始位置選択中モードでＯＮマスクが付加された文字にペンダウンされると、図２４に示される状態遷移表より、実行する処理として、ＯＮマスクが付加された文字列先頭の文字を開始位置に設定する処理が特定され、一文字ずつ選択されて開始位置に設定されないことが特定される。また、表示状態としてＯＮマスクが付加された文字列を一括して反転表示する処理、次に移行するモードとして終了位置選択中モードが特定される。
【０１０１】
ＯＦＦマスクが付加された文字にペンダウンされると、実行する処理として、ペンダウンされた文字を開始位置に設定する処理が特定され、表示状態として変化がないこと、次に移行するモードとして終了位置選択中モードが特定される。また、リンク等のマスク以外の機能が付加された文字やアクションイベント、画像にペンダウンされたときも同様である。
【０１０２】
終了位置選択中モードにおいてＯＮマスクが付加された文字上にペンドラッグ（微小移動）や、自身を開始位置とするペンドラッグ（大移動）が発生すると、ＯＮマスクが付加された文字列末尾の文字を終了位置に設定する処理が特定され、一文字ずつ選択されて終了位置に設定されないことが特定される。また、表示状態としてＯＮマスクが付加された文字列を一括して反転表示する処理が特定される。
【０１０３】
ＯＦＦマスクが付加された文字上に自身を開始位置とするペンドラッグ（大移動）が発生すると、文字にペンダウンされると、実行する処理として、ペンドラッグされた文字を反転表示する処理が特定される。自身を開始位置としないペンドラッグ（大移動）が発生した場合には、実行する処理として、ペンドラッグの範囲内にマスク作成できない要素があるときにはその直前の要素までを反転表示する処理が特定され、そうでない場合には、ペンドラッグの範囲内の要素を反転表示する処理が特定される。また、リンク等のマスク以外の機能が付加された文字やアクションイベント、画像にペンダウンされたときも同様である。
【０１０４】
その位置でペンアップされると、実行する処理として、選択範囲である反転部分にマスクを作成する処理が特定され、表示状態として、当該部分のマスク表示が特定され、次に移行するモードとして開始位置選択中モードが特定される。なお、反転部分がない場合には、処理は実行されない。
【０１０５】
上下左右キーでその他の通常文字上にカーソル移動が指示されたときについては、第１の実施例にかかる状態遷移表と同様である。
【０１０６】
第２の実施の形態にかかるビューワ１００の制御部１０５で、図２３，図２４に示されるような状態遷移表を用いて処理が実行されることで、先に図２１，図２２に示されたようにＯＮマスクは一括して選択され、または一文字としてカーソル位置とされ、その背後に隠されている文字列の文字数が明らかとならない。
【０１０７】
なお、本実施の形態にかかるビューワ１００では、マスクが付加されている文字列を含む範囲についてマスクを付加されてもよい。すなわち、図２５（Ａ）に示される文字列に、複数のマスクが一致しない範囲（文字列「１９９２」および文字列「鎌倉幕府は１１９２年に、」）で重なって付加されてもよい。図２５（Ｂ）は両マスクがＯＦＦマスクである状態、図２５（Ｃ）は両マスクがＯＮマスクである状態、図２５（Ｄ），図２５（Ｅ）は一方のマスクがＯＮマスクであり他方のマスクがＯＦＦマスクである状態の表示の具体例を示す図である。
【０１０８】
さらに、図２６（Ａ）に示されるように、異なるサイズの文字を含む文字列にマスクを付加する際、図２６（Ｂ）に示されるように一文字ずつ各文字サイズに応じたマスクを付加するとマスク背後に隠された文字の見当がつき、ＯＮマスクの意義が薄れてしまう。また、図２６（Ｃ）に示されるように異なる文字サイズのうちの小さなサイズに応じたマスクを付加するとサイズの大きな文字はマスク画像よりも大きく、ＯＮマスクの意義が薄れてしまう。そのため、図２６（Ｄ）に示されるように、異なる文字サイズのうちの最も大きなサイズに応じたマスクを付加することが好ましい。これは、マスクに限定されず、マーカー等の他の属性を付加する場合も同様である。また、ＯＮマスクを付加する要素は文字に限定されず、画像などの他の要素に付加する際も同様である。このようなマスクを付加するときの制御部１０５における処理について、図２７のフローチャートおよび図２８，図２９の具体例を用いて説明する。
【０１０９】
図２７を参照して、始めに、ステップＳ２０１で上述のマスクを作成する処理と同様の処理を行なって開始位置に設定されたマスク先頭の第１文字が取得され、ステップＳ２０３で変数（ｍｉｎＸ，ｍｉｎＹ），（ｍａｘＸ，ｍａｘＹ）が初期化される。
【０１１０】
ステップＳ２０３では、ｍｉｎＸが第１文字の左上位置のｘ座標、ｍｉｎＹが第１文字の左上位置のｙ座標、ｍａｘＸが第１文字の右下位置のｘ座標、ｍａｘＹが第１文字の右下位置のｙ座標に初期化される。より具体的には、図２８に示されるように、サイズの異なる文字列「Ａ，Ｂ，Ｃ」がマスク範囲である場合、第１文字である文字「Ａ」の左上点Ａ１（Ｘａ１，Ｙａ１）および右下点Ａ２（Ｘａ２，Ｙａ２）より、変数が
（ｍｉｎＸ，ｍｉｎＹ）＝（Ｘａ１，Ｙａ１）
（ｍａｘＸ，ｍａｘＹ）＝（Ｘａ２，Ｙａ２）
に初期化される。
【０１１１】
次の第２文字もマスク範囲に含まれる文字である場合（ステップＳ２０５でＹＥＳ）、ステップＳ２０７で第２文字の左上点（ｌｅｆｔＴｏｐ．ｘ，ｌｅｆｔＴｏｐ．ｙ）と右下点（ｒｉｇｈｔＢｏｔｔｏｍ．ｘ，ｒｉｇｈｔＢｏｔｔｏｍ．ｙ）とが取得される。図２８に示される例の場合、第２文字である文字「Ｂ」の左上点Ｂ１（Ｘｂ１，Ｙｂ１）および右下点Ｂ２（Ｘｂ２，Ｙｂ２）より、
（ｌｅｆｔＴｏｐ．ｘ，ｌｅｆｔＴｏｐ．ｙ）＝（Ｘｂ１，Ｙｂ１）
（ｒｉｇｈｔＢｏｔｔｏｍ．ｘ，ｒｉｇｈｔＢｏｔｔｏｍ．ｙ）＝（Ｘｂ２，Ｙｂ２）
が取得される。
【０１１２】
次に、ステップＳ２０９でｌｅｆｔＴｏｐ．ｙとｍｉｎＹとが比較され、ｍｉｎＹがｌｅｆｔＴｏｐ．ｙより大なる場合（ステップＳ２０９でＹＥＳ）、すなわち、第２文字の方が第１文字よりも高い場合、ステップＳ２１１で変数ｍｉｎＹがｌｅｆｔＴｏｐ．ｙに設定される。そうでない場合には（ステップＳ２０９でＮＯ）、すなわち、第２文字の方が第１文字よりも低い場合、変数ｍｉｎＹが保持される。
【０１１３】
さらに、ステップＳ２１３でｒｉｇｈｔＢｏｔｔｏｍ．ｘとｍａｘＸとが比較され、ｍａｘＸがｒｉｇｈｔＢｏｔｔｏｍ．ｘより小なる場合（ステップＳ２１３でＹＥＳ）、すなわち、第２文字の方が第１文字よりも右にある場合、ステップＳ２１５で変数ｍａｘＸがｒｉｇｈｔＢｏｔｔｏｍ．ｘに設定される。そうでない場合にはステップＳ２１３ででＮＯ）、すなわち、第２文字の方が第１文字よりも右にない場合、変数ｍａｘＸが保持される。
【０１１４】
以上のステップＳ２０５〜Ｓ２１５の処理がマスク範囲に含まれるすべての文字に対して実行されて（ステップＳ２０５でＮＯ）、ステップＳ２１７において、そのときの変数（ｍｉｎＸ，ｍｉｎＹ）を左上点、変数（ｍａｘＸ，ｍａｘＹ）を右下点とするマスク領域が決定される。すなわち、上述の処理がマスク範囲に含まれるすべての文字に対して実行されることで、図２８に示される例の場合には、文字列の左上点のｘ座標と最も高い文字のｙ座標とからなる点Ｍ１（Ｘａ１，Ｙｃ１）、および最も右の文字のｘ座標と文字列の右下点のｙ座標とからなる点Ｍ２（Ｘｃ１，Ｙｃ１）で定まる領域（図２９）がマスク領域に決定される。
【０１１５】
なお、今回開示した例では横書き文章の例が示されているが、縦書き文章でも同様にして対応できることは言うまでもない。
【０１１６】
さらに、上述のコンテンツ処理装置で実行される処理方法を、プログラムとして提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）およびメモリカードなどのコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【０１１７】
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記録された記録媒体とを含む。
【０１１８】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０１１９】
【図１】実施の形態にかかるビューワ１００の構成の具体例を示す図である。
【図２】文字属性情報の具体例を示す図である。
【図３】第１の実施の形態にかかる状態遷移表の具体例を示す図である。
【図４】第１の実施の形態にかかる状態遷移表の具体例を示す図である。
【図５】カーソルモードでマスクを作成する処理を示すフローチャートである。
【図６】状態遷移の具体例を示す図である。
【図７】状態遷移の具体例を示す図である。
【図８】状態遷移の具体例を示す図である。
【図９】状態遷移の具体例を示す図である。
【図１０】状態遷移の具体例を示す図である。
【図１１】状態遷移の具体例を示す図である。
【図１２】フォーカス移動のパターンを具体的に示す図である。
【図１３】決定キー押下時のアクション候補を具体的に示す図である。
【図１４】状態遷移の具体例を示す図である。
【図１５】状態遷移の具体例を示す図である。
【図１６】状態遷移の具体例を示す図である。
【図１７】状態遷移の具体例を示す図である。
【図１８】状態遷移の具体例を示す図である。
【図１９】状態遷移の具体例を示す図である。
【図２０】フォーカス移動のパターンを具体的に示す図である。
【図２１】状態遷移の具体例を示す図である。
【図２２】状態遷移の具体例を示す図である。
【図２３】第１の実施の形態にかかる状態遷移表の具体例を示す図である。
【図２４】第１の実施の形態にかかる状態遷移表の具体例を示す図である。
【図２５】状態遷移の具体例を示す図である。
【図２６】状態遷移の具体例を示す図である。
【図２７】第２の実施の形態にかかるビューワ１００での、マスク付加を付加するときの処理を示すフローチャートである。
【図２８】マスク範囲に含まれる文字列の具体例を示す図である。
【図２９】マスク範囲の具体例を示す図である。
【図３０】アクションイベントが含まれるコンテンツ表示の具体例を示す図である。
【図３１】アクションイベントが含まれるコンテンツ表示の具体例を示す図である。
【図３２】画像が含まれるコンテンツ表示の具体例を示す図である。
【図３３】フォーカス移動のパターンを具体的に示す図である。
【図３４】決定キー押下時のアクション候補を具体的に示す図である。
【図３５】決定キー押下時のアクション候補を具体的に示す図である。
【図３６】決定キー押下時のアクション候補を具体的に示す図である。
【図３７】決定キー押下時のアクション候補を具体的に示す図である。
【図３８】フォーカス移動のパターンを具体的に示す図である。
【図３９】決定キー押下時のアクション候補を具体的に示す図である。
【符号の説明】
【０１２０】
１００  ビューワ、１０１  データ受信部、１０２  外部記憶部、１０３  電子書籍データ記憶部、１０４  操作部、１０５  制御部、１０６  表示部、１０７  文字属性記憶部、１０８  状態遷移表記憶部。
【図１】
2006209614.tif 000003
【図２】
2006209614.tif 000004
【図３】
2006209614.tif 000005
【図４】
2006209614.tif 000006
【図５】
2006209614.tif 000007
【図６】
2006209614.tif 000008
【図７】
2006209614.tif 000009
【図８】
2006209614.tif 000010
【図９】
2006209614.tif 000011
【図１０】
2006209614.tif 000012
【図１１】
2006209614.tif 000013
【図１２】
2006209614.tif 000014
【図１３】
2006209614.tif 000015
【図１４】
2006209614.tif 000016
【図１５】
2006209614.tif 000017
【図１６】
2006209614.tif 000018
【図１７】
2006209614.tif 000019
【図１８】
2006209614.tif 000020
【図１９】
2006209614.tif 000021
【図２０】
2006209614.tif 000022
【図２１】
2006209614.tif 000023
【図２２】
2006209614.tif 000024
【図２３】
2006209614.tif 000025
【図２４】
2006209614.tif 000026
【図２５】
2006209614.tif 000027
【図２６】
2006209614.tif 000028
【図２７】
2006209614.tif 000029
【図２８】
2006209614.tif 000030
【図２９】
2006209614.tif 000031
【図３０】
2006209614.tif 000032
【図３１】
2006209614.tif 000033
【図３２】
2006209614.tif 000034
【図３３】
2006209614.tif 000035
【図３４】
2006209614.tif 000036
【図３５】
2006209614.tif 000037
【図３６】
2006209614.tif 000038
【図３７】
2006209614.tif 000039
【図３８】
2006209614.tif 000040
【図３９】
2006209614.tif 000041