情報処理装置、その表示制御方法、及び表示制御プログラム、並びに記録媒体
【課題】電子書籍の閲覧を行うに当たって、ユーザが直感的な操作を行うことができるようにする。
【解決手段】情報処理装置は、複数のページを有する電子書籍を表示処理する際に用いられる。情報処理装置は電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する。そして、情報処理装置は書籍表示領域にカーソルが位置するか否かを検出し、カーソルのついて所定の操作が行われると、書籍表示領域上におけるカーソルの位置に応じてページをめくるためのめくり形態を決定して、決定されためくり形態に応じて電子書籍のページめくりを行う。
【解決手段】情報処理装置は、複数のページを有する電子書籍を表示処理する際に用いられる。情報処理装置は電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する。そして、情報処理装置は書籍表示領域にカーソルが位置するか否かを検出し、カーソルのついて所定の操作が行われると、書籍表示領域上におけるカーソルの位置に応じてページをめくるためのめくり形態を決定して、決定されためくり形態に応じて電子書籍のページめくりを行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のページを有する電子書籍においてそのページを表示する際に用いられる情報処理装置、その表示制御方法、及び表示制御プログラム、並びに記録媒体に関する。
【背景技術】
【0002】
一般に、パソコン等の情報処理装置を用いて電子書籍を閲読又は閲覧することが行われている。そして、電子書籍を閲読又は閲覧する場合に、そのページを切り替える際には、実際の書籍と同様に、ページがめくられる様子を表す画像(以下切替画像と呼ぶ)を表示して、リアル性を付加するようにしている(例えば、特許文献1及び2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平1−158485号公報
【特許文献2】特開2006−72148号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、実際の書籍を閲読又は閲覧する際には、ユーザはページをつまむ箇所及びそのつまむ量を変えることによって、ページを少しだけめくって裏面又は後のページの内容の一部を確認することがある。
【0005】
さらには、ユーザは、まとまった量のページをめくりながら、前後のページの概要を確認することもある。そして、ユーザは場合によっては、一度に大量のページをめくることもある。
【0006】
ところが、電子書籍においては、実際の書籍を閲読又は閲覧する場合と比べて、ページのめくり操作が異なるため、ページをめくる際、ユーザは直感的な操作を行うことができず、電子書籍の閲読又は閲覧に当たって極めて不便である。
【0007】
そこで、本発明の目的は、電子書籍の閲覧を行うに当たって、ユーザが直感的な操作を行うことのできる情報処理装置、その表示制御方法、及び表示制御プログラム、並びに記録媒体を提供することにある。
【課題を解決するための手段】
【0008】
上記の目的を達成するため、本発明による情報処理装置は、複数のページを有する電子書籍を表示処理する際に用いられる情報処理装置において、前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示手段と、前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出手段と、前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定手段と、前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくり手段とを有することを特徴とする。
【0009】
本発明による表示制御方法は、複数のページを有する電子書籍を表示処理する際に用いられる表示制御方法において、前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを有することを特徴とする。
【0010】
本発明による表示制御プログラムは、複数のページを有する電子書籍を表示処理する際に用いられる表示制御プログラムにおいて、コンピュータに、前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを実行させることを特徴とする。
【0011】
本発明による記録媒体は、上記の表示制御プログラムが記録されたコンピュータに読み取り可能な記録媒体である。
【発明の効果】
【0012】
本発明によれば、ユーザは直感的な操作によって電子書籍のページをめくることができ、利便性が向上するという効果がある。
【図面の簡単な説明】
【0013】
【図1】本発明の第1の実施形態による情報処理装置の一例の構成を示すブロック図である。
【図2】図1に示す情報処理装置において、電子書籍の見開きページをCRTディスプレイに表示した様子の一例を示す図である。
【図3】図1に示す情報処理装置におけるページめくり処理の第1の例を説明するためのフローチャートである。
【図4】図3に示す単ページめくり処理を詳細に説明するためのフローチャートである。
【図5】図2に示す表示領域において右ページを1枚めくる際のページ表示の一例を示す図である。
【図6】図3に示すめくりページ数計算処理を詳細に説明するためのフローチャートである。
【図7】図6で説明しためくりページ数計算処理の結果得られた残りページ数の厚みの表示例を示す図である。
【図8】図3に示す複数ページ連続めくり処理を詳細に説明するためのフローチャートである。
【図9】図8で説明した連続めくり処理において、右ページを連続して5枚めくる際の表示の一例を示す図である。
【図10】図3に示す複数ページまとめめくり処理を詳細に説明するためのフローチャートである。
【図11】図10で説明したまとめめくり処理において、右ページ側に位置するページをまとめて際の表示の一例を示す図である。
【図12】図1に示す情報処理装置におけるページめくり処理の第2の例を説明するためのフローチャートである。
【図13】図1に示すCRTディスプレイに表示されるアルバム画面におけるめくり領域の一例を示す図である。
【図14】図12に示す表紙又は裏表紙めくり処理を詳細に説明するためのフローチャートである。
【図15】図12に示す本文めくり処理を詳細に説明するためのフローチャートである。
【図16】図13に示すアルバム画面におけるめくり基準点の一例を説明するための図である。
【図17】図13に示すアルバム画面における基準線の一例を説明するための図である。
【図18】図13に示すアルバム画面における角めくり領域の一例を説明するための図である。
【図19】図15に示すページ一部めくり処理を詳細に説明するためのフローチャートである。
【図20】図13に示すアルバム画面におけるページめくり及び折り返し点の一例を説明するための図であり、(a)は折り返し点がそれぞれページの右辺及び下辺にある状態の一例を示す図、(b)は折り返し点がそれぞれページの上辺及び下辺にある状態の第1の例を示す図、(c)は折り返し点がそれぞれページの上辺及び下辺にある状態の第2の例を示す図、(d)は折り返し点がそれぞれページの上辺及び下辺にある状態の第3の例を示す図である。
【図21】図13に示すアルバム画面のページめくりにおいてカーソル位置の座標の修正の一例を説明するための図であり、(a)は第1の例を説明するための図、(b)は第2の例を説明するための図、(c)は第3の例を説明するための図である。
【発明を実施するための形態】
【0014】
以下、本発明の実施の形態による情報処理装置の一例について図面を参照して説明する。
【0015】
図1は、本発明の第1の実施形態による情報処理装置100の一例の構成を示すブロック図である。
【0016】
図1を参照して、図示の情報処理装置100は、例えば、パソコンである。そして、この情報処理装置100は、CRT(Cathode Ray Tube)ディスプレイ101を有する。また、情報処理装置100は、VRAM(Video Random Access Memory)102、BMU(ビットムーブユニット)103を有する。さらに、情報処理装置100は、、キーボード104、PD(ポインティング・デバイス)105を有する。そして、情報処理装置100は、CPU106、ROM107、RAM108、HDD(ハード・ディスク・ドライブ)109、FDD(フレキシブル・ディスク・ドライブ)110、及びネットワークインターフェース(NETI/F)111を有している。そして、これら構成要素は、CPUバス112によって相互に接続されている。
【0017】
CRTディスプレイ101には、例えば、編集中の文書、図形、画像、その他の編集情報、アイコン、メッセージ、及びメニューその他のユーザインタフェース情報が表示される。
【0018】
VRAM102には、CRTディスプレイ101に表示するための画像データが描画(つまり、記憶)される。このVRAM102に描画された画像データは、所定の規定に応じてCRTディスプレイ101に転送され、これによって、CRTディスプレイ101に画像が表示される。
【0019】
BMU103は、例えば、メモリ間(ここでは、VRAM102と他のメモリとの間)のデータ転送、メモリと各I/Oデバイス(例えば、ネットワークI/F111)との間のデータ転送を制御する。
【0020】
キーボード104は、文書等を入力するための各種キーを有する入力装置である。PD105は、例えば、マウスであり、CRTディスプレイ101に表示されたアイコン、メニュー、及びその他のコンテンツを指示又はオブジェクトのドラッグドロップために用いられる。
【0021】
CPU106は、ROM107、HDD109、又はフレキシブルディスク(図示せず)に格納された制御プログラムに基づいて、各デバイスを制御する。ROM107には、各種制御プログラム及びデータが保存される。
【0022】
RAM108は、CPU106のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有している。HDD109は、情報処理装置100内で実行される各制御プログラム、コンテンツ、及びデータをハードディスクに格納する。
【0023】
FDD110は、フロッピー(登録商標)等に代表されるフレキシブルディスクに対するアクセスを制御する。
【0024】
ネットワークI/F111は、他の情報処理装置及びプリンタ等とネットワークを介して通信を行う。なお、CPUバス112には、アドレスバス、データバス及びコントロールバスが含まれている。
【0025】
CPU106に対する制御プログラムの提供は、ROM107、HDD109、FDD110から行うこともできる。さらには、ネットワークI/F111を介してネットワーク経由で他の情報処理装置等から、CPU106に対して制御プログラムを提供することができる。
【0026】
図示の情報処理装置100において、CPU106は、例えば、ハードディスクに保存された電子書籍を電子書籍データとして読み出す。そして、CPU106は、電子書籍を構成する複数のページのうち、見開きを構成する2つのページ(見開きページという)をCRTディスプレイ101に表示する。以下この見開きページが表示された領域を書籍表示領域と呼ぶことがある。
【0027】
図2は、図1に示す情報処理装置100において、電子書籍の見開きページをCRTディスプレイ101に表示した様子の一例を示す図である。
【0028】
図示のように、CRTディスプレイ101の表示領域200上には、本の形式の画像において、ページ201及び202が表示されるとともに、ページ201及び202の左右に小口203及び204が表示される。さらに、ページ201及び202の上下に天205及び地206が表示されている。また、表示領域200上の任意の点を指示できるカーソル207も、表示領域200に表示される。
【0029】
図2には示されていないが、ページ201には、見開きの左ページに該当する画像及び文字がレイアウトして表示されている。同様に、ページ202には、見開きの右ページに該当する画像及び文字がレイアウトして表示されている。
【0030】
小口203には、表紙から見開きページまでのページ数分に相当する厚みが表現されている。同様に、小口204には、見開きページから背表紙(裏表紙ともいう)までのページ数分に相当する厚みが表現されている。
【0031】
天205及び地206に関しても、小口203及び204と同様にページ数分に相当する厚みが表現されている。
【0032】
カーソル207は、図1で説明したPD(ポインティングデバイス)105の指示に伴って、表示領域200上の任意の場所を移動することができる。
【0033】
図示の例においては、ページを右から左にめくった際にページが順方向に進んだと定義して説明を行うが、めくりの方向が本発明を限定するものではない。
【0034】
次に、情報処理装置100において、ページをめくる様子を表示するための動作の一例を説明する。図3は図1に示す情報処理装置100におけるページめくりの処理の第1の例を説明するためのフローチャートである。
【0035】
図1〜図3を参照して、ページめくり処理が開始されると、CPU106は、表示領域200上でPD(ポインティングデバイス)105からクリック指示(カーソルについて所定の操作)があったか否かを判断する(ステップS301)。クリック指示がない場合(ステップS301において、NO)、ユーザが表示されたページを読んでいると判断して、CPU106は、表示領域200の表示を変化させない。そして、CPU106は、入力待ちの状態となる。
【0036】
一方、クリック指示があると(ステップS301においてYES)、CPU106はクリックの動作を感知して、電子書籍における全ページ数を示すページ数情報とクリックを受け付けた際の現在のページ位置を表すページ位置情報を取得する(ステップS302)。
【0037】
なお、上記のステップS301においては、ページめくり処理が行われている途中においても、ページがめくられている方向に応じた追加めくり以外の任意のページ操作に係る入力指示を受け付ける。
【0038】
続いて、CPU106は、カーソル207の位置情報をカーソルの位置(カーソル位置という)として取得する(ステップS303)。そして、CPU106はカーソル位置がページ201及び202の領域と重なっているか否かを判定する(ステップS304)。つまり、CPU106は、表示されている書籍表示領域とカーソル位置とが重なっているか否かについて判定することになる。ここでは、電子書籍全体を示す領域を書籍表示領域と呼び、ページ部分のみを表示する領域をページ表示領域と呼ぶことにする。
【0039】
ページ表示領域とカーソル位置とが重なっていないと判定すると(ステップS304において、NO)、CPU106は、カーソル位置が小口203及び204又は天205及び地206の領域と重なっているか否かについて判定する(ステップS305)。つまり、CPU106はカーソル位置が書籍表示領域の縁に位置するか否かについて判定することになる。
【0040】
そして、カーソル位置が小口203及び204又は天205及び地206の領域と重なっていない判定すると(ステップS305において、NO)、CPU106は、書籍表示領域外がクリックされたと判定して、ページめくり処理を行うことなく処理を終了する。
【0041】
ステップS304において、ページ表示領域とカーソル位置とが重なっていると判定すると(ステップS304において、YES)、CPU106は単ページめくり処理を実行する(ステップS306)。なお、単ページめくり処理とは、1枚のページを前後にめくる動処理をいう。
【0042】
図4は、図3に示す単ページめくり処理を詳細に説明するためのフローチャートである。
【0043】
図1、図2、及び図4を参照して、単ページめくり処理が開始されると、CPU106は、ページのめくり方向が順方向(つまり、ページ数が増加する方向)であるか否かについて判定する(ステップS401)。ここでは、CPU106はカーソル位置が、ページ表示領域の左ページ201上にあれば逆方法のめくり、右ページ202上にあれば順方向のめくりであると判定する。順方向のめくりであると判定すると(ステップS401において、YES)、CPU106は書籍表示領域において右ページを1枚めくって次のページを表示する(ステップS402)。そして、CPU106は、単ページめくり処理を終了する。
【0044】
図5は、図2に示す表示領域200において右ページを1枚めくる際のページ表示の一例を示す図である。図5に示すように、右ページを1枚めくると、右ページ202がめくられ、左ページ201側へと移動する様子が表示される。ここでは、右ページ202の裏側であるページ502が見え、さらには、右ページ202の下にあるページ503も見えている。
【0045】
つまり、めくられているページ202の内容を表示しつつ、めくり処理が行われて、これによって、ユーザに対してページめくりを行っているという感覚を与えることができる。
【0046】
なお、次のページが裏表紙であった場合には、CPU106はページめくり処理を実行しない。又はCPU106は裏表紙を閉じる表示を行うようにしてもよい。いずれにしても、表示処理の相違であって本発明を限定するものではない。
【0047】
一方、順方向のめくりではないと判定すると(ステップS401において、NO)、CPU106は左ページを1枚めくって前のページを表示する(ステップS403)。なお、図示はしないが、ステップS403においては、図5で説明した方向と逆の方向に単ページめくりが行われることになる。
【0048】
なお、この場合においても、前のページが表紙であった場合には、CPU106は裏表紙の場合と同様にページめくり処理を実行しない。又はCPU106は表紙を閉じる表示を行うようにしてもよい。いずれにしても、表示処理の相違であって本発明を限定するものではない。
【0049】
一方、カーソル位置が小口203及び204又は天205又は地206の領域と重なっていると判定すると(ステップS305において、YES)、CPU106は、カーソル位置に基づいて、前後にめくるページ数を計算する(ステップS307)。
【0050】
図6は、図3に示すめくりページ数計算処理S307を詳細に説明するためのフローチャートである。また、図7は図6で説明しためくりページ数計算処理の結果得られた残りページ数の厚みの表示例を示す図である。
【0051】
図1、図2、及び図6を参照して、ここでは、書籍表示領域の右側の小口204がクリックされた場合を例に挙げて説明する。なお、左側の小口203、天205の左右、又は地206の左右をクリックされた場合においても同様にしてめくりページ数の計算を行うことができる。
【0052】
めくりページ数計算処理が開始されると、CPU106は図3に示すステップS302において取得したページ数と現在のページ位置情報とに応じて、現在のページから背表紙までの実際の残りページ数の計算を行う(ステップS601)。
【0053】
ここで、実際の残りページ数をLとする。この残りページ数Lの厚みは、図7に示すように、厚み701で表される。そして、画面上に表示される厚み701をMとする。同様にして、天205又は地206の右側がクリックされた場合においても、実際の残りページ数Lと表示上の厚みMを計算することができる。
【0054】
また、左側の小口203、天205又は地206の左側をクリックされた場合には、図3に示すステップS302において取得した現在のページ位置情報に基づいて、CPU106は表紙までのページ数の計算を行う。そして、ここでは当該ページ数L、画面上表示される厚みをMとする。
【0055】
続いて、CPU106は、図3に示すステップS303で取得したカーソル位置情報に基づいて、図7に示す厚み702をNとする。ステップS601における処理と同様にして、天205又は地206の右側、左側の小口203、又は天205又は地206の左側をクリックされた場合においても、現在のページからカーソル位置までの厚みをNをする(ステップS602)。
【0056】
次に、CPU106は、上述のページ数L、厚みM、及び厚みNに基づいて、式(1)によって残りページ数を算出する(ステップS603)。そして、CPU106はめくりページ(めくるページともいう)数計算処理を終了する。
【0057】
【数1】
【0058】
なお、めくるページ数が割り切れない場合には、小数点以下第一位を四捨五入して、整数の値とする。このように、四捨五入して整数の値にする点は、本発明を限定するものではない。
【0059】
図1〜図3を参照して、続いて、CPU106は、ステップS307で得られためくりページ数と予め定められた閾値とを比較して、めくりページ数が閾値よりも大きいか否かについて判定する(ステップS308)。めくりページ数が閾値以下であると(ステップS308において、NO)、CPU106は複数ページ連続めくり処理を行う(ステップS309)。この複数ページ連続めくり処理は、複数のページを連続的に順次めくる処理である。
【0060】
一方、めくりページ数が閾値よりも大きいと(ステップS308において、YES)、CPU106は複数ページまとめめくり処理を行う(ステップS310)。この複数ページまとめめくり処理は、複数のページをまとめて一括してめくる処理である。
【0061】
ところで、上記の閾値は、めくり中のページを表示せずにまとめて目的とするページ近くまでめくってしまった方がより人間に対して直感的な感覚を与えるとされるページ数である。この閾値は、前述のように、情報処理装置100に予め設定される。なお、本全体のページ数に応じて本毎に閾値を算出するようにしてもよい。
【0062】
図8は、図3に示す複数ページ連続めくり処理(ステップS309)を詳細に説明するためのフローチャートである。
【0063】
図1、図2、及び図8を参照して、ここでは、書籍表示領域に表示された小口203又は204がクリックされた場合について説明するが、天205又は地206の左右がクリックされた場合においても同様にしてめくり処理が行われる。
【0064】
複数ページ連続めくり処理が開始されると、CPU106はめくり方向が順方向であるか否かについて判定する(ステップS801)。ここでは、CPU106は、図3に示すステップS303で取得したカーソル位置が、左の小口203上にあれば逆方向のめくり、右の小口204上にあれば順方向のめくりであると判定することになる。
【0065】
順方向のめくりであると判定すると(ステップS801において、YES)、CPU106は右側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけ連続してめくって、次のページを表示する(ステップS802)。
【0066】
図9は図8で説明した連続めくり処理において、右ページを連続して5枚めくる際の表示の一例を示す図である。
【0067】
図9に示すように、5ページ分の連続めくり処理を行うと、右ページ側にあった五枚分のページ902、903、904、905、及び906が連続してめくられ、左ページ側へと移動する様子が表示されることになる。そして、ページ906の次に位置するページ907が表示されることになる。なお、図9において、ページ902は図2に示すページ202の裏側のページを指している。
【0068】
この際に、めくられる五枚分のページ902、903、904、905、及び906の内容を表示しつつ、めくり処理が行われることになる。その結果、ユーザに対して連続してページめくりを行っている感覚を与えることができる。
【0069】
一方、順方向のめくりでないと判定すると(ステップS801において、NO)、CPU106は左側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけ連続してめくって、前のページを表示する(ステップS803)。
【0070】
なお、図示はしないが、ステップS803においては、図9で説明した方向と逆の方向に連続ページめくりが行われることになる。
【0071】
図10は、図3に示す複数ページまとめめくり処理(ステップS310)を詳細に説明するためのフローチャートである。
【0072】
図1、図2、及び図10を参照して、ここでも、書籍表示領域に表紙された小口203又は204がクリックされた場合について説明するが、天205又は地206の左右をクリックされた場合についても同様にしてめくり処理が行われる。
【0073】
連続ページまとめめくり処理が開始されると、CPU106はめくり方向が順方向であるか否かについて判定する(ステップS1001)。ここでは、CPU106は、図3に示すステップS303で取得したカーソル位置が、左の小口203上にあれば逆方向のめくり、右の小口204上にあれば順方向のめくりであると判定することになる。
【0074】
順方向のめくりであると判定すると(ステップS1001において、YES)、CPU106は右側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけまとめてめくって、次のページを表示する(ステップS1002)。そして、CPU106はまとめめくり処理を終了する。
【0075】
図11は図10で説明したまとめめくり処理において、右ページ側に位置するページをまとめてめくる際の表示の一例を示す図である。
【0076】
図11に示すように、まとめて連続めくり処理を行うと、右ページ側にあったページ群1102がまとめてめくられ、左ページ側へと移動する様子が表示されることになる。そして、ページ群1102の次のページ1103が表示される。なお、図示の例では、ページ群1102は5枚分のページ数で表示されているが、ページ群1102はページ数に対応した厚みで表示されることになる。
【0077】
この際、めくられるページ群1102における各ページの内容はめくり処理の際には表示されない。そして、まとめてめくったページ群1102の最後ページの内容のみが表示される。これによって、ユーザに対して目的近くまでまとめて移動するページめくりを行っている感覚を与えることができることになる。
【0078】
一方、順方向のめくりでないと判定すると(ステップS1001において、NO)、CPU106は左側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけまとめてめくって、前のページを表示する(ステップS1003)。そして、CPU106はまとめめくり処理を終了する。
【0079】
なお、図示はしないが、ステップS1003においては、図11で説明した方向と逆の方向にまとめページめくりが行われることになる。
【0080】
図12は、図1に示す情報処理装置100におけるページめくり処理の第2の例を説明するためのフローチャートである。なお、ここでは、電子書籍としてアルバムの閲覧を例に挙げて説明することにするが、アルバム以外の電子書籍である本・雑誌などの閲覧についても同様にして処理することができる。
【0081】
図1及び図12を参照して、前述したように、CPU106は見開きを構成する2つのページとともに書籍表示領域をCRTディスプレイ101に表示する。そして、CPU106は、PD105で操作されるカーソル位置を受け、カーソル位置を取得する(ステップS1201)。続いて、CPU106は、書籍表示領域(以下の説明ではアルバム画面とも呼ぶ)においてカーソル位置が、後述するめくり領域内にあるか否かについて判定する(ステップS1202)。
【0082】
図13は図1に示すCRTディスプレイ101に表示されるページ201および202におけるめくり領域1301の一例を示す図である。
【0083】
図13を参照すると、ここで、カーソル位置がめくり領域1301内にある際に、PD105においてボタンが押されるとページめくりが行われる。このめくり領域1301については、予めプログラムで指定される。
【0084】
図示の例では、アルバム画面1300を図中横方向に4分割し、左右両端からそれぞれ4分の1の範囲がめくり領域1301とされる。従って、図示の例では、第1及び第2のめくり領域1301が規定されていることになる。
【0085】
いま、アルバム画面1300の左上の座標を(0,0)とし、アルバム画面1300の横の長さをW、縦の長さをHとする。めくり領域1301は、縦の座標が0以上H以下で、かつ横の座標が0以上1/4W以下又は3/4W以上W以下の範囲にある。
【0086】
また、図中右端から4分の1の領域(第1のめくり領域1301)は、右から左にページをめくることが可能な領域であり、左端から4分の1の領域は、左から右にページをめくることが可能な領域(第2のめくり領域1301)であるとする。
【0087】
カーソル位置がめくり領域1301内にないと判定すると(ステップS1202において、NO)、CPU106はアルバム閲覧を終了するリクエストをキーボード104等から受けたか否かについて判定する(ステップS1203)。アルバム閲覧終了のリクエストを受けると(ステップS1203において、YES)、CPU106はアルバムの表示処理を全て終了する。
【0088】
一方、アルバム閲覧終了のリクエストを受けないと(ステップS1203において、NO)、CPU106はステップS1201に戻って処理を続行する。
【0089】
カーソル位置がめくり領域1301内にあると判定すると(ステップS1302において、YES)、CPU106はめくるページを決定する(ステップS1204)。ここでは、CPU106は、カーソル位置が図13の右端から4分の1の領域(つまり、第1のめくり領域1301)内にあれば右ページをめくると決定する。
【0090】
一方、カーソル位置が図13の左端から4分の1の領域(つまり、第2のめくり領域1301)内にあれば、CPU106は左ページをめくるページと決定する。
【0091】
続いて、CPU106はめくるページの属性を電子書籍を示すデータから取得する(ステップS1205)。ここで、ページの属性とは、例えば、当該ページがアルバムの表紙及び裏表紙であることを示す情報である。そして、CPU106はページ属性が表紙又は裏表紙であるか否かについて判定する(ステップS1206)。
【0092】
ページ属性が表紙又は裏表紙であると判定すると(ステップS1206において、YES)、CPU106は、後述する表紙又は裏表紙のめくり処理を行う(ステップS1207)。その後、CPU106は、ステップS1203に移行してアルバム閲覧を終了するリクエストを受けたか否かについて判定する。
【0093】
一方、ページ属性が表紙又は裏表紙でないと判定すると(ステップS1206において、NO)、CPU106は後述する本文めくり処理を行う(ステップS1208)。そして、CPU106はステップS1203に移行する。
【0094】
図14は、図12に示す表紙又は裏表紙めくり処理(ステップS1207)を詳細に説明するためのフローチャートである。
【0095】
図1及び図14を参照して、表紙又は裏表紙めくり処理が開始されると、CPU106はPD105のボタンが押されたか否かについて判定する(ステップS1401)。PD105のボタンが押されると(ステップS1401において、YES)、CPU106は表紙又は裏表紙をめくって、アルバム画面1300を表示することになる(ステップS1402)。そして、CPU106は表紙又は裏表紙めくり処理を終了する。
【0096】
一方、PD105のボタンが押されないと(ステップS1401において、NO)、CPU106は表紙又は裏表紙めくり処理を終了する。
【0097】
図15は、図12に示す本文めくり処理(ステップS1208)を詳細に説明するためのフローチャートである。
【0098】
図1及び図15を参照して、本文めくり処理が開始されると、CPU106は、めくり基準点を求める(ステップS1501)。
【0099】
図16は図13に示すアルバム画面1300におけるめくり基準点の一例を説明するための図である。めくり基準点とは、ページめくりの際に基準となる点である。そして、めくり基準点の部分がカーソル位置まで移動して、ページがめくられる。
【0100】
図16に示すように、ここでは、めくり領域1301を縦方向に3分割して、カーソル位置が上又は下の端から3分の1の範囲であると、めくり基準点は最も近い角の点とする。
【0101】
いま、カーソル位置の座標を(X,Y)とすると、Xが0以上1/4W以下で、かつYが0以上1/3H以下であればめくり基準点は座標(0,0)となる。
【0102】
同様に、Xが0以上1/4W以下で、かつYが2/3H以上H以下であれば、めくり基準点は座標(0,H)となる。また、Xが3/4W以上W以下で、かつYが0以上1/3H以下であれば、めくり基準点は座標(W,0)となる。そして、Xが3/4W以上W以下で、かつYが2/3H以上H以下であれば、めくり基準点は座標(W,H)となる。
【0103】
また、カーソル位置が上記の範囲以外のめくり領域1301にある場合には、図中左右の近い方の端に水平移動した点をめくり基準点とする。例えば、Xが0以上1/4W以下で、かつYが1/3Hより大きく2/3H未満であれば、めくり基準点は座標(0,Y)となる。また、Xが3/4W以上W以下で、かつYが1/3Hより大きく2/3H未満であればめくり基準点は座標(W,Y)となる。
【0104】
上述のようにして、めくり基準点を決定した後、CPU106はPD105のボタンが押されたか否かについて判定する(ステップS1502)。PD105のボタンが押されると(ステップS1502において、YES)、CPU106は、後述するページを一部めくる処理を行う(ステップS1503)。その後、CPU106はPD105のボタンが離されたか否かについて判定する(ステップS1504)。
【0105】
PD105のボタンが離されないと(ステップS1504において、NO)、CPU106は、ステップS1503に戻って処理を続行する。
【0106】
一方、PD105のボタンが離されたと判定すると、CPU106はカーソル位置がめくり領域1301内にあるかについて判定する(ステップS1505)。カーソル位置がめくり領域1301内にある判定すると(ステップS1505において、YES)、CPU106はアルバムを次のページにめくる(ステップS1506)。そして、CPU106は本文めくり処理を終了する。
【0107】
一方、カーソル位置がめくり領域1301内にないと判定すると、CPU106は、カーソル位置が後述する基準線を越えているか否かについて判定する(ステップS1507)。
【0108】
図17は、図13に示すアルバム画面1300における基準線1702の一例を説明するための図である。ここで、基準線1702とは、PD105のボタンを離した時点におけるカーソル位置が当該基準線1702を越えているかどうかによって、ページをめくるかについて判定する基準となる線である。
【0109】
図17に示す例では、右ページをめくっている際の基準線1702が示されている。そして、現在めくっているページの隣ページにおいて、アルバムの中心線から横方向に6分の1の垂直線が基準線1702とされている。そして、CPU106は、カーソル位置のX座標が5/12W以下であれば、カーソル位置が基準線1702を越えていると判定する。
【0110】
一方、カーソル位置のX座標が5/12Wより大きければ、CPU106はカーソル位置が基準線1702を越えていないと判定する。
【0111】
カーソル位置が基準線1702を越えていると判定すると(ステップS1507において、YES)、CPU106はステップS1506に移行してアルバムを次のページにめくる。カーソル位置が基準線1702を越えていないと判定すると(ステップS1507において、NO)、CPU106は途中までめくられているページを元に戻す(ステップS1508)。そして、CPU106は本文めくり処理を終了する。
【0112】
ステップS1502において、PD105のボタンが押されていないと判定すると(ステップS1502において、NO)、CPU106は、カーソル位置を取得する(ステップS1509)。そして、CPU106は、カーソル位置が後述する角めくり領域内であるか否かについて判定する(ステップS1510)。
【0113】
図18は、図13に示すアルバム画面1300における角めくり領域1803の一例を説明するための図である。ここで、角めくり領域1803とは、カーソル位置が当該角めくり領域1803内にあると、PD105のボタンが押されていなくてもページめくりを行う領域として規定されている。なお、角めくり領域1803は、予めプログラムによって指定される。
【0114】
図18に示す例では、図13に示すめくり領域1301の範囲において、さらに当該めくり領域1301が縦方向に3分割されて、上下両端から各々3分の1の範囲が角めくり領域1803とされる。図示の例では、角めくり領域1803は、アルバム画面1300の四隅に規定されている。
【0115】
図示の例では、角めくり領域1803は、縦の座標が0以上1/3H以下または2/3H以上H以下で、かつ横の座標が0以上1/4W以下または3/4W以上W以下の範囲である。
【0116】
カーソル位置が角めくり領域1803内にあると判定すると(ステップS1510において、YES)、CPU106はページを一部めくる処理を行う(ステップS1511)。そして、CPU106は、ステップS1502に戻って処理を続行する。
【0117】
一方、カーソル位置が角めくり領域1803内にないと判定すると(ステップS1510において、NO)、CPU106は、ページがめくられているか否かについて判定する(ステップS1512)。
【0118】
ページがめくられていると(ステップS1512において、YES)、CPU106はステップS1508に移行して、途中までめくられているページを元のページに戻す。そして、CPU106は本文めくり処理を終了する。また、ページがめくられていなければ(ステップS1512において、NO)、CPU106は本文めくり処理を終了する。
【0119】
図19は図15に示すページ一部めくり処理(ステップS1503及びS1511)を詳細に説明するためのフローチャートである。このページ一部めくり処理は、ページを部分的にめくる処理である。
【0120】
図1及び図19を参照して、ページ一部めくり処理が開始されると、CPU106はカーソル位置を取得する(ステップS1901)。続いて、CPU106は、後述するページの折り返し点を求める(ステップS1902)。
【0121】
図20は、図13に示すアルバム画面1300におけるページめくり及び折り返し点2001の一例を説明するための図である。そして、図20(a)は折り返し点2001がそれぞれページの右辺及び下辺にある状態の一例を示す図であり、図20(b)は折り返し点2001がそれぞれページの上辺及び下辺にある状態の第1の例を示す図である。また、図20(c)は折り返し点2001がそれぞれページの上辺及び下辺にある状態の第2の例を示す図であり、図20(d)は折り返し点2001がそれぞれページの上辺及び下辺にある状態の第3の例を示す図である。ここでは、折り返し点2001とは、ページをめくった際にできる折り返し線2002の両端の点と規定される。
【0122】
図20(a)〜(d)に示すように、折り返し線2002は、カーソル位置とめくり基準点とを結んだ線の垂直二等分線であり、折り返し点2001は折り返し線2002とアルバムの外枠との交点である。
【0123】
ここで、カーソル位置によっては、カーソル位置と折り返し点2001のカーソルに近い方の点との間の長さがアルバムの紙の長さを越えるという物理的に有り得ない事象が発生することがある。この際には、CPU106は、後述するようにして、カーソル位置の座標をプログラムに応じて修正してその後の処理を行うことになる。
【0124】
図21は、図13に示すアルバム画面1300のページめくりにおいてカーソル位置の座標の修正の一例を説明するための図である。ここで、図21(a)は第1の例を説明するための図であり、図21(b)は第2の例を説明するための図である。また、図21(c)は第3の例を説明するための図である。
【0125】
まず、図21(a)に示す修正は、めくり基準点がアルバム画面1300の上端(0,0)又は(W,0)にある際に用いられる。いま、カーソル位置が、点(1/2W,0)を中心とする半径1/2Wの円より外側にある場合に、カーソル位置の座標修正が行われる。カーソルの位置と点(1/2W,0)とを結んだ直線と円の円周との交点が、ページを一部めくる処理中におけるカーソル位置とされる。
【0126】
図21(b)に示す修正は、めくり基準点がアルバムの下端(0,H)又は(W,H)である場合に用いられる。カーソル位置が、点(1/2W,H)を中心とする半径1/2Wの円より外側にある場合に、カーソル位置の座標修正が行われる。カーソル位置と点(1/2W,H)とを結んだ直線と円の円周との交点が、ページを一部めくる処理中おけるカーソル位置とされる。
【0127】
図21(c)に示す修正は、めくり基準点が上述した以外の場合に用いられる。つまり、カーソル位置(X,Y)のY座標が1/3Hより大きく2/3H未満である場合に用いられる。
【0128】
カーソル位置が、点(1/2W,Y)を中心とする半径1/2Wの円より外側にある場合、カーソル位置の座標修正が行われることになる。カーソル位置と点(1/2W,Y)とを結んだ直線と円の円周との交点が、ページを一部めくる処理中におけるマウスカーソルの位置とされる。
【0129】
上述のようにして、ページの折り返し点2001を求めた後、CPU106は、現状のページの裏側のページ及び現状のページを規定する紙の次に位置するページ(下のページと呼ぶ)の形を求める(ステップS1903)。この際、めくり基準点及び折り返し点2001の座標よって、下のページの形が求められる。裏側のページは、下のページの形と等しい。
【0130】
続いて、CPU106は現状のページを表示する(ステップS1904)。そして、CPU106は下のページを表示する(ステップS1905)。続いて、CPU106は裏側のページを表示して(ステップS1906)、ページ一部めくり処理を終了する。
【0131】
この結果、いま、図20(a)〜(d)において、現状のページをA、裏側のページをB、下のページをCで表すと、前述のように、裏側のページB及び下のページCは、めくり基準点及び折り返し点2001(及び折り返し線2002)の座標によって決まる。アルバム画面1300において、現状のページA、下のページC、そして、裏側のページBの順番に表示されることになって、本をめくっているようにアルバムが表示されることになる。
【0132】
このようにして、上述の実施の形態による情報処理装置100では、ユーザが直感的な操作によって電子書籍(アルバム等も含む)のページをめくることができ、ユーザにとって利便性が向上することになる。
【0133】
上述の説明から明らかなように、上記の実施の形態では、CPU106における表示処理によって、CRTディスプレイ(表示手段)上に電子書籍が見開きで表示されることになる。そして、上記の実施の形態では、CPU106が上述したフローチャートに応じた処理を実行することになる。従って、CPU106がカーソル検出手段、決定手段、及びページめくり手段として機能することになる。また、CPU106はページ検出手段としても機能し、さらには、ページ数算出手段及び基準点設定手段としても機能する。
【0134】
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【0135】
例えば、上記の実施の形態の機能を表示制御方法として、この表示制御方法を、CPU106に実行させるようにしてもよい。さらに、上述の実施の形態の機能を有するプログラムを表示制御プログラムとして、この表示制御プログラムを、CPU106等のコンピュータに実行させるようにしてもよい。この際、表示制御方法及び表示制御プログラムは、少なくとも表示ステップ、カーソル検出ステップ、決定ステップ、及びページめくりステップを有することになる。
【0136】
また、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種のコンピュータに読み取り可能な記録媒体を介してシステム或いは装置に供給するようにしてもよい。そして、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理ようにしてもよい。
【符号の説明】
【0137】
101 CRTディスプレイ
102 VRAM
103 BMU
104 キーボード
105 PD
106 CPU
109 HDD
110 フレキシブルディスクドライブ
【技術分野】
【0001】
本発明は、複数のページを有する電子書籍においてそのページを表示する際に用いられる情報処理装置、その表示制御方法、及び表示制御プログラム、並びに記録媒体に関する。
【背景技術】
【0002】
一般に、パソコン等の情報処理装置を用いて電子書籍を閲読又は閲覧することが行われている。そして、電子書籍を閲読又は閲覧する場合に、そのページを切り替える際には、実際の書籍と同様に、ページがめくられる様子を表す画像(以下切替画像と呼ぶ)を表示して、リアル性を付加するようにしている(例えば、特許文献1及び2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平1−158485号公報
【特許文献2】特開2006−72148号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、実際の書籍を閲読又は閲覧する際には、ユーザはページをつまむ箇所及びそのつまむ量を変えることによって、ページを少しだけめくって裏面又は後のページの内容の一部を確認することがある。
【0005】
さらには、ユーザは、まとまった量のページをめくりながら、前後のページの概要を確認することもある。そして、ユーザは場合によっては、一度に大量のページをめくることもある。
【0006】
ところが、電子書籍においては、実際の書籍を閲読又は閲覧する場合と比べて、ページのめくり操作が異なるため、ページをめくる際、ユーザは直感的な操作を行うことができず、電子書籍の閲読又は閲覧に当たって極めて不便である。
【0007】
そこで、本発明の目的は、電子書籍の閲覧を行うに当たって、ユーザが直感的な操作を行うことのできる情報処理装置、その表示制御方法、及び表示制御プログラム、並びに記録媒体を提供することにある。
【課題を解決するための手段】
【0008】
上記の目的を達成するため、本発明による情報処理装置は、複数のページを有する電子書籍を表示処理する際に用いられる情報処理装置において、前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示手段と、前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出手段と、前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定手段と、前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくり手段とを有することを特徴とする。
【0009】
本発明による表示制御方法は、複数のページを有する電子書籍を表示処理する際に用いられる表示制御方法において、前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを有することを特徴とする。
【0010】
本発明による表示制御プログラムは、複数のページを有する電子書籍を表示処理する際に用いられる表示制御プログラムにおいて、コンピュータに、前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを実行させることを特徴とする。
【0011】
本発明による記録媒体は、上記の表示制御プログラムが記録されたコンピュータに読み取り可能な記録媒体である。
【発明の効果】
【0012】
本発明によれば、ユーザは直感的な操作によって電子書籍のページをめくることができ、利便性が向上するという効果がある。
【図面の簡単な説明】
【0013】
【図1】本発明の第1の実施形態による情報処理装置の一例の構成を示すブロック図である。
【図2】図1に示す情報処理装置において、電子書籍の見開きページをCRTディスプレイに表示した様子の一例を示す図である。
【図3】図1に示す情報処理装置におけるページめくり処理の第1の例を説明するためのフローチャートである。
【図4】図3に示す単ページめくり処理を詳細に説明するためのフローチャートである。
【図5】図2に示す表示領域において右ページを1枚めくる際のページ表示の一例を示す図である。
【図6】図3に示すめくりページ数計算処理を詳細に説明するためのフローチャートである。
【図7】図6で説明しためくりページ数計算処理の結果得られた残りページ数の厚みの表示例を示す図である。
【図8】図3に示す複数ページ連続めくり処理を詳細に説明するためのフローチャートである。
【図9】図8で説明した連続めくり処理において、右ページを連続して5枚めくる際の表示の一例を示す図である。
【図10】図3に示す複数ページまとめめくり処理を詳細に説明するためのフローチャートである。
【図11】図10で説明したまとめめくり処理において、右ページ側に位置するページをまとめて際の表示の一例を示す図である。
【図12】図1に示す情報処理装置におけるページめくり処理の第2の例を説明するためのフローチャートである。
【図13】図1に示すCRTディスプレイに表示されるアルバム画面におけるめくり領域の一例を示す図である。
【図14】図12に示す表紙又は裏表紙めくり処理を詳細に説明するためのフローチャートである。
【図15】図12に示す本文めくり処理を詳細に説明するためのフローチャートである。
【図16】図13に示すアルバム画面におけるめくり基準点の一例を説明するための図である。
【図17】図13に示すアルバム画面における基準線の一例を説明するための図である。
【図18】図13に示すアルバム画面における角めくり領域の一例を説明するための図である。
【図19】図15に示すページ一部めくり処理を詳細に説明するためのフローチャートである。
【図20】図13に示すアルバム画面におけるページめくり及び折り返し点の一例を説明するための図であり、(a)は折り返し点がそれぞれページの右辺及び下辺にある状態の一例を示す図、(b)は折り返し点がそれぞれページの上辺及び下辺にある状態の第1の例を示す図、(c)は折り返し点がそれぞれページの上辺及び下辺にある状態の第2の例を示す図、(d)は折り返し点がそれぞれページの上辺及び下辺にある状態の第3の例を示す図である。
【図21】図13に示すアルバム画面のページめくりにおいてカーソル位置の座標の修正の一例を説明するための図であり、(a)は第1の例を説明するための図、(b)は第2の例を説明するための図、(c)は第3の例を説明するための図である。
【発明を実施するための形態】
【0014】
以下、本発明の実施の形態による情報処理装置の一例について図面を参照して説明する。
【0015】
図1は、本発明の第1の実施形態による情報処理装置100の一例の構成を示すブロック図である。
【0016】
図1を参照して、図示の情報処理装置100は、例えば、パソコンである。そして、この情報処理装置100は、CRT(Cathode Ray Tube)ディスプレイ101を有する。また、情報処理装置100は、VRAM(Video Random Access Memory)102、BMU(ビットムーブユニット)103を有する。さらに、情報処理装置100は、、キーボード104、PD(ポインティング・デバイス)105を有する。そして、情報処理装置100は、CPU106、ROM107、RAM108、HDD(ハード・ディスク・ドライブ)109、FDD(フレキシブル・ディスク・ドライブ)110、及びネットワークインターフェース(NETI/F)111を有している。そして、これら構成要素は、CPUバス112によって相互に接続されている。
【0017】
CRTディスプレイ101には、例えば、編集中の文書、図形、画像、その他の編集情報、アイコン、メッセージ、及びメニューその他のユーザインタフェース情報が表示される。
【0018】
VRAM102には、CRTディスプレイ101に表示するための画像データが描画(つまり、記憶)される。このVRAM102に描画された画像データは、所定の規定に応じてCRTディスプレイ101に転送され、これによって、CRTディスプレイ101に画像が表示される。
【0019】
BMU103は、例えば、メモリ間(ここでは、VRAM102と他のメモリとの間)のデータ転送、メモリと各I/Oデバイス(例えば、ネットワークI/F111)との間のデータ転送を制御する。
【0020】
キーボード104は、文書等を入力するための各種キーを有する入力装置である。PD105は、例えば、マウスであり、CRTディスプレイ101に表示されたアイコン、メニュー、及びその他のコンテンツを指示又はオブジェクトのドラッグドロップために用いられる。
【0021】
CPU106は、ROM107、HDD109、又はフレキシブルディスク(図示せず)に格納された制御プログラムに基づいて、各デバイスを制御する。ROM107には、各種制御プログラム及びデータが保存される。
【0022】
RAM108は、CPU106のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有している。HDD109は、情報処理装置100内で実行される各制御プログラム、コンテンツ、及びデータをハードディスクに格納する。
【0023】
FDD110は、フロッピー(登録商標)等に代表されるフレキシブルディスクに対するアクセスを制御する。
【0024】
ネットワークI/F111は、他の情報処理装置及びプリンタ等とネットワークを介して通信を行う。なお、CPUバス112には、アドレスバス、データバス及びコントロールバスが含まれている。
【0025】
CPU106に対する制御プログラムの提供は、ROM107、HDD109、FDD110から行うこともできる。さらには、ネットワークI/F111を介してネットワーク経由で他の情報処理装置等から、CPU106に対して制御プログラムを提供することができる。
【0026】
図示の情報処理装置100において、CPU106は、例えば、ハードディスクに保存された電子書籍を電子書籍データとして読み出す。そして、CPU106は、電子書籍を構成する複数のページのうち、見開きを構成する2つのページ(見開きページという)をCRTディスプレイ101に表示する。以下この見開きページが表示された領域を書籍表示領域と呼ぶことがある。
【0027】
図2は、図1に示す情報処理装置100において、電子書籍の見開きページをCRTディスプレイ101に表示した様子の一例を示す図である。
【0028】
図示のように、CRTディスプレイ101の表示領域200上には、本の形式の画像において、ページ201及び202が表示されるとともに、ページ201及び202の左右に小口203及び204が表示される。さらに、ページ201及び202の上下に天205及び地206が表示されている。また、表示領域200上の任意の点を指示できるカーソル207も、表示領域200に表示される。
【0029】
図2には示されていないが、ページ201には、見開きの左ページに該当する画像及び文字がレイアウトして表示されている。同様に、ページ202には、見開きの右ページに該当する画像及び文字がレイアウトして表示されている。
【0030】
小口203には、表紙から見開きページまでのページ数分に相当する厚みが表現されている。同様に、小口204には、見開きページから背表紙(裏表紙ともいう)までのページ数分に相当する厚みが表現されている。
【0031】
天205及び地206に関しても、小口203及び204と同様にページ数分に相当する厚みが表現されている。
【0032】
カーソル207は、図1で説明したPD(ポインティングデバイス)105の指示に伴って、表示領域200上の任意の場所を移動することができる。
【0033】
図示の例においては、ページを右から左にめくった際にページが順方向に進んだと定義して説明を行うが、めくりの方向が本発明を限定するものではない。
【0034】
次に、情報処理装置100において、ページをめくる様子を表示するための動作の一例を説明する。図3は図1に示す情報処理装置100におけるページめくりの処理の第1の例を説明するためのフローチャートである。
【0035】
図1〜図3を参照して、ページめくり処理が開始されると、CPU106は、表示領域200上でPD(ポインティングデバイス)105からクリック指示(カーソルについて所定の操作)があったか否かを判断する(ステップS301)。クリック指示がない場合(ステップS301において、NO)、ユーザが表示されたページを読んでいると判断して、CPU106は、表示領域200の表示を変化させない。そして、CPU106は、入力待ちの状態となる。
【0036】
一方、クリック指示があると(ステップS301においてYES)、CPU106はクリックの動作を感知して、電子書籍における全ページ数を示すページ数情報とクリックを受け付けた際の現在のページ位置を表すページ位置情報を取得する(ステップS302)。
【0037】
なお、上記のステップS301においては、ページめくり処理が行われている途中においても、ページがめくられている方向に応じた追加めくり以外の任意のページ操作に係る入力指示を受け付ける。
【0038】
続いて、CPU106は、カーソル207の位置情報をカーソルの位置(カーソル位置という)として取得する(ステップS303)。そして、CPU106はカーソル位置がページ201及び202の領域と重なっているか否かを判定する(ステップS304)。つまり、CPU106は、表示されている書籍表示領域とカーソル位置とが重なっているか否かについて判定することになる。ここでは、電子書籍全体を示す領域を書籍表示領域と呼び、ページ部分のみを表示する領域をページ表示領域と呼ぶことにする。
【0039】
ページ表示領域とカーソル位置とが重なっていないと判定すると(ステップS304において、NO)、CPU106は、カーソル位置が小口203及び204又は天205及び地206の領域と重なっているか否かについて判定する(ステップS305)。つまり、CPU106はカーソル位置が書籍表示領域の縁に位置するか否かについて判定することになる。
【0040】
そして、カーソル位置が小口203及び204又は天205及び地206の領域と重なっていない判定すると(ステップS305において、NO)、CPU106は、書籍表示領域外がクリックされたと判定して、ページめくり処理を行うことなく処理を終了する。
【0041】
ステップS304において、ページ表示領域とカーソル位置とが重なっていると判定すると(ステップS304において、YES)、CPU106は単ページめくり処理を実行する(ステップS306)。なお、単ページめくり処理とは、1枚のページを前後にめくる動処理をいう。
【0042】
図4は、図3に示す単ページめくり処理を詳細に説明するためのフローチャートである。
【0043】
図1、図2、及び図4を参照して、単ページめくり処理が開始されると、CPU106は、ページのめくり方向が順方向(つまり、ページ数が増加する方向)であるか否かについて判定する(ステップS401)。ここでは、CPU106はカーソル位置が、ページ表示領域の左ページ201上にあれば逆方法のめくり、右ページ202上にあれば順方向のめくりであると判定する。順方向のめくりであると判定すると(ステップS401において、YES)、CPU106は書籍表示領域において右ページを1枚めくって次のページを表示する(ステップS402)。そして、CPU106は、単ページめくり処理を終了する。
【0044】
図5は、図2に示す表示領域200において右ページを1枚めくる際のページ表示の一例を示す図である。図5に示すように、右ページを1枚めくると、右ページ202がめくられ、左ページ201側へと移動する様子が表示される。ここでは、右ページ202の裏側であるページ502が見え、さらには、右ページ202の下にあるページ503も見えている。
【0045】
つまり、めくられているページ202の内容を表示しつつ、めくり処理が行われて、これによって、ユーザに対してページめくりを行っているという感覚を与えることができる。
【0046】
なお、次のページが裏表紙であった場合には、CPU106はページめくり処理を実行しない。又はCPU106は裏表紙を閉じる表示を行うようにしてもよい。いずれにしても、表示処理の相違であって本発明を限定するものではない。
【0047】
一方、順方向のめくりではないと判定すると(ステップS401において、NO)、CPU106は左ページを1枚めくって前のページを表示する(ステップS403)。なお、図示はしないが、ステップS403においては、図5で説明した方向と逆の方向に単ページめくりが行われることになる。
【0048】
なお、この場合においても、前のページが表紙であった場合には、CPU106は裏表紙の場合と同様にページめくり処理を実行しない。又はCPU106は表紙を閉じる表示を行うようにしてもよい。いずれにしても、表示処理の相違であって本発明を限定するものではない。
【0049】
一方、カーソル位置が小口203及び204又は天205又は地206の領域と重なっていると判定すると(ステップS305において、YES)、CPU106は、カーソル位置に基づいて、前後にめくるページ数を計算する(ステップS307)。
【0050】
図6は、図3に示すめくりページ数計算処理S307を詳細に説明するためのフローチャートである。また、図7は図6で説明しためくりページ数計算処理の結果得られた残りページ数の厚みの表示例を示す図である。
【0051】
図1、図2、及び図6を参照して、ここでは、書籍表示領域の右側の小口204がクリックされた場合を例に挙げて説明する。なお、左側の小口203、天205の左右、又は地206の左右をクリックされた場合においても同様にしてめくりページ数の計算を行うことができる。
【0052】
めくりページ数計算処理が開始されると、CPU106は図3に示すステップS302において取得したページ数と現在のページ位置情報とに応じて、現在のページから背表紙までの実際の残りページ数の計算を行う(ステップS601)。
【0053】
ここで、実際の残りページ数をLとする。この残りページ数Lの厚みは、図7に示すように、厚み701で表される。そして、画面上に表示される厚み701をMとする。同様にして、天205又は地206の右側がクリックされた場合においても、実際の残りページ数Lと表示上の厚みMを計算することができる。
【0054】
また、左側の小口203、天205又は地206の左側をクリックされた場合には、図3に示すステップS302において取得した現在のページ位置情報に基づいて、CPU106は表紙までのページ数の計算を行う。そして、ここでは当該ページ数L、画面上表示される厚みをMとする。
【0055】
続いて、CPU106は、図3に示すステップS303で取得したカーソル位置情報に基づいて、図7に示す厚み702をNとする。ステップS601における処理と同様にして、天205又は地206の右側、左側の小口203、又は天205又は地206の左側をクリックされた場合においても、現在のページからカーソル位置までの厚みをNをする(ステップS602)。
【0056】
次に、CPU106は、上述のページ数L、厚みM、及び厚みNに基づいて、式(1)によって残りページ数を算出する(ステップS603)。そして、CPU106はめくりページ(めくるページともいう)数計算処理を終了する。
【0057】
【数1】
【0058】
なお、めくるページ数が割り切れない場合には、小数点以下第一位を四捨五入して、整数の値とする。このように、四捨五入して整数の値にする点は、本発明を限定するものではない。
【0059】
図1〜図3を参照して、続いて、CPU106は、ステップS307で得られためくりページ数と予め定められた閾値とを比較して、めくりページ数が閾値よりも大きいか否かについて判定する(ステップS308)。めくりページ数が閾値以下であると(ステップS308において、NO)、CPU106は複数ページ連続めくり処理を行う(ステップS309)。この複数ページ連続めくり処理は、複数のページを連続的に順次めくる処理である。
【0060】
一方、めくりページ数が閾値よりも大きいと(ステップS308において、YES)、CPU106は複数ページまとめめくり処理を行う(ステップS310)。この複数ページまとめめくり処理は、複数のページをまとめて一括してめくる処理である。
【0061】
ところで、上記の閾値は、めくり中のページを表示せずにまとめて目的とするページ近くまでめくってしまった方がより人間に対して直感的な感覚を与えるとされるページ数である。この閾値は、前述のように、情報処理装置100に予め設定される。なお、本全体のページ数に応じて本毎に閾値を算出するようにしてもよい。
【0062】
図8は、図3に示す複数ページ連続めくり処理(ステップS309)を詳細に説明するためのフローチャートである。
【0063】
図1、図2、及び図8を参照して、ここでは、書籍表示領域に表示された小口203又は204がクリックされた場合について説明するが、天205又は地206の左右がクリックされた場合においても同様にしてめくり処理が行われる。
【0064】
複数ページ連続めくり処理が開始されると、CPU106はめくり方向が順方向であるか否かについて判定する(ステップS801)。ここでは、CPU106は、図3に示すステップS303で取得したカーソル位置が、左の小口203上にあれば逆方向のめくり、右の小口204上にあれば順方向のめくりであると判定することになる。
【0065】
順方向のめくりであると判定すると(ステップS801において、YES)、CPU106は右側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけ連続してめくって、次のページを表示する(ステップS802)。
【0066】
図9は図8で説明した連続めくり処理において、右ページを連続して5枚めくる際の表示の一例を示す図である。
【0067】
図9に示すように、5ページ分の連続めくり処理を行うと、右ページ側にあった五枚分のページ902、903、904、905、及び906が連続してめくられ、左ページ側へと移動する様子が表示されることになる。そして、ページ906の次に位置するページ907が表示されることになる。なお、図9において、ページ902は図2に示すページ202の裏側のページを指している。
【0068】
この際に、めくられる五枚分のページ902、903、904、905、及び906の内容を表示しつつ、めくり処理が行われることになる。その結果、ユーザに対して連続してページめくりを行っている感覚を与えることができる。
【0069】
一方、順方向のめくりでないと判定すると(ステップS801において、NO)、CPU106は左側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけ連続してめくって、前のページを表示する(ステップS803)。
【0070】
なお、図示はしないが、ステップS803においては、図9で説明した方向と逆の方向に連続ページめくりが行われることになる。
【0071】
図10は、図3に示す複数ページまとめめくり処理(ステップS310)を詳細に説明するためのフローチャートである。
【0072】
図1、図2、及び図10を参照して、ここでも、書籍表示領域に表紙された小口203又は204がクリックされた場合について説明するが、天205又は地206の左右をクリックされた場合についても同様にしてめくり処理が行われる。
【0073】
連続ページまとめめくり処理が開始されると、CPU106はめくり方向が順方向であるか否かについて判定する(ステップS1001)。ここでは、CPU106は、図3に示すステップS303で取得したカーソル位置が、左の小口203上にあれば逆方向のめくり、右の小口204上にあれば順方向のめくりであると判定することになる。
【0074】
順方向のめくりであると判定すると(ステップS1001において、YES)、CPU106は右側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけまとめてめくって、次のページを表示する(ステップS1002)。そして、CPU106はまとめめくり処理を終了する。
【0075】
図11は図10で説明したまとめめくり処理において、右ページ側に位置するページをまとめてめくる際の表示の一例を示す図である。
【0076】
図11に示すように、まとめて連続めくり処理を行うと、右ページ側にあったページ群1102がまとめてめくられ、左ページ側へと移動する様子が表示されることになる。そして、ページ群1102の次のページ1103が表示される。なお、図示の例では、ページ群1102は5枚分のページ数で表示されているが、ページ群1102はページ数に対応した厚みで表示されることになる。
【0077】
この際、めくられるページ群1102における各ページの内容はめくり処理の際には表示されない。そして、まとめてめくったページ群1102の最後ページの内容のみが表示される。これによって、ユーザに対して目的近くまでまとめて移動するページめくりを行っている感覚を与えることができることになる。
【0078】
一方、順方向のめくりでないと判定すると(ステップS1001において、NO)、CPU106は左側に位置するページについて、図3に示すステップS307で算出されためくりページ数だけまとめてめくって、前のページを表示する(ステップS1003)。そして、CPU106はまとめめくり処理を終了する。
【0079】
なお、図示はしないが、ステップS1003においては、図11で説明した方向と逆の方向にまとめページめくりが行われることになる。
【0080】
図12は、図1に示す情報処理装置100におけるページめくり処理の第2の例を説明するためのフローチャートである。なお、ここでは、電子書籍としてアルバムの閲覧を例に挙げて説明することにするが、アルバム以外の電子書籍である本・雑誌などの閲覧についても同様にして処理することができる。
【0081】
図1及び図12を参照して、前述したように、CPU106は見開きを構成する2つのページとともに書籍表示領域をCRTディスプレイ101に表示する。そして、CPU106は、PD105で操作されるカーソル位置を受け、カーソル位置を取得する(ステップS1201)。続いて、CPU106は、書籍表示領域(以下の説明ではアルバム画面とも呼ぶ)においてカーソル位置が、後述するめくり領域内にあるか否かについて判定する(ステップS1202)。
【0082】
図13は図1に示すCRTディスプレイ101に表示されるページ201および202におけるめくり領域1301の一例を示す図である。
【0083】
図13を参照すると、ここで、カーソル位置がめくり領域1301内にある際に、PD105においてボタンが押されるとページめくりが行われる。このめくり領域1301については、予めプログラムで指定される。
【0084】
図示の例では、アルバム画面1300を図中横方向に4分割し、左右両端からそれぞれ4分の1の範囲がめくり領域1301とされる。従って、図示の例では、第1及び第2のめくり領域1301が規定されていることになる。
【0085】
いま、アルバム画面1300の左上の座標を(0,0)とし、アルバム画面1300の横の長さをW、縦の長さをHとする。めくり領域1301は、縦の座標が0以上H以下で、かつ横の座標が0以上1/4W以下又は3/4W以上W以下の範囲にある。
【0086】
また、図中右端から4分の1の領域(第1のめくり領域1301)は、右から左にページをめくることが可能な領域であり、左端から4分の1の領域は、左から右にページをめくることが可能な領域(第2のめくり領域1301)であるとする。
【0087】
カーソル位置がめくり領域1301内にないと判定すると(ステップS1202において、NO)、CPU106はアルバム閲覧を終了するリクエストをキーボード104等から受けたか否かについて判定する(ステップS1203)。アルバム閲覧終了のリクエストを受けると(ステップS1203において、YES)、CPU106はアルバムの表示処理を全て終了する。
【0088】
一方、アルバム閲覧終了のリクエストを受けないと(ステップS1203において、NO)、CPU106はステップS1201に戻って処理を続行する。
【0089】
カーソル位置がめくり領域1301内にあると判定すると(ステップS1302において、YES)、CPU106はめくるページを決定する(ステップS1204)。ここでは、CPU106は、カーソル位置が図13の右端から4分の1の領域(つまり、第1のめくり領域1301)内にあれば右ページをめくると決定する。
【0090】
一方、カーソル位置が図13の左端から4分の1の領域(つまり、第2のめくり領域1301)内にあれば、CPU106は左ページをめくるページと決定する。
【0091】
続いて、CPU106はめくるページの属性を電子書籍を示すデータから取得する(ステップS1205)。ここで、ページの属性とは、例えば、当該ページがアルバムの表紙及び裏表紙であることを示す情報である。そして、CPU106はページ属性が表紙又は裏表紙であるか否かについて判定する(ステップS1206)。
【0092】
ページ属性が表紙又は裏表紙であると判定すると(ステップS1206において、YES)、CPU106は、後述する表紙又は裏表紙のめくり処理を行う(ステップS1207)。その後、CPU106は、ステップS1203に移行してアルバム閲覧を終了するリクエストを受けたか否かについて判定する。
【0093】
一方、ページ属性が表紙又は裏表紙でないと判定すると(ステップS1206において、NO)、CPU106は後述する本文めくり処理を行う(ステップS1208)。そして、CPU106はステップS1203に移行する。
【0094】
図14は、図12に示す表紙又は裏表紙めくり処理(ステップS1207)を詳細に説明するためのフローチャートである。
【0095】
図1及び図14を参照して、表紙又は裏表紙めくり処理が開始されると、CPU106はPD105のボタンが押されたか否かについて判定する(ステップS1401)。PD105のボタンが押されると(ステップS1401において、YES)、CPU106は表紙又は裏表紙をめくって、アルバム画面1300を表示することになる(ステップS1402)。そして、CPU106は表紙又は裏表紙めくり処理を終了する。
【0096】
一方、PD105のボタンが押されないと(ステップS1401において、NO)、CPU106は表紙又は裏表紙めくり処理を終了する。
【0097】
図15は、図12に示す本文めくり処理(ステップS1208)を詳細に説明するためのフローチャートである。
【0098】
図1及び図15を参照して、本文めくり処理が開始されると、CPU106は、めくり基準点を求める(ステップS1501)。
【0099】
図16は図13に示すアルバム画面1300におけるめくり基準点の一例を説明するための図である。めくり基準点とは、ページめくりの際に基準となる点である。そして、めくり基準点の部分がカーソル位置まで移動して、ページがめくられる。
【0100】
図16に示すように、ここでは、めくり領域1301を縦方向に3分割して、カーソル位置が上又は下の端から3分の1の範囲であると、めくり基準点は最も近い角の点とする。
【0101】
いま、カーソル位置の座標を(X,Y)とすると、Xが0以上1/4W以下で、かつYが0以上1/3H以下であればめくり基準点は座標(0,0)となる。
【0102】
同様に、Xが0以上1/4W以下で、かつYが2/3H以上H以下であれば、めくり基準点は座標(0,H)となる。また、Xが3/4W以上W以下で、かつYが0以上1/3H以下であれば、めくり基準点は座標(W,0)となる。そして、Xが3/4W以上W以下で、かつYが2/3H以上H以下であれば、めくり基準点は座標(W,H)となる。
【0103】
また、カーソル位置が上記の範囲以外のめくり領域1301にある場合には、図中左右の近い方の端に水平移動した点をめくり基準点とする。例えば、Xが0以上1/4W以下で、かつYが1/3Hより大きく2/3H未満であれば、めくり基準点は座標(0,Y)となる。また、Xが3/4W以上W以下で、かつYが1/3Hより大きく2/3H未満であればめくり基準点は座標(W,Y)となる。
【0104】
上述のようにして、めくり基準点を決定した後、CPU106はPD105のボタンが押されたか否かについて判定する(ステップS1502)。PD105のボタンが押されると(ステップS1502において、YES)、CPU106は、後述するページを一部めくる処理を行う(ステップS1503)。その後、CPU106はPD105のボタンが離されたか否かについて判定する(ステップS1504)。
【0105】
PD105のボタンが離されないと(ステップS1504において、NO)、CPU106は、ステップS1503に戻って処理を続行する。
【0106】
一方、PD105のボタンが離されたと判定すると、CPU106はカーソル位置がめくり領域1301内にあるかについて判定する(ステップS1505)。カーソル位置がめくり領域1301内にある判定すると(ステップS1505において、YES)、CPU106はアルバムを次のページにめくる(ステップS1506)。そして、CPU106は本文めくり処理を終了する。
【0107】
一方、カーソル位置がめくり領域1301内にないと判定すると、CPU106は、カーソル位置が後述する基準線を越えているか否かについて判定する(ステップS1507)。
【0108】
図17は、図13に示すアルバム画面1300における基準線1702の一例を説明するための図である。ここで、基準線1702とは、PD105のボタンを離した時点におけるカーソル位置が当該基準線1702を越えているかどうかによって、ページをめくるかについて判定する基準となる線である。
【0109】
図17に示す例では、右ページをめくっている際の基準線1702が示されている。そして、現在めくっているページの隣ページにおいて、アルバムの中心線から横方向に6分の1の垂直線が基準線1702とされている。そして、CPU106は、カーソル位置のX座標が5/12W以下であれば、カーソル位置が基準線1702を越えていると判定する。
【0110】
一方、カーソル位置のX座標が5/12Wより大きければ、CPU106はカーソル位置が基準線1702を越えていないと判定する。
【0111】
カーソル位置が基準線1702を越えていると判定すると(ステップS1507において、YES)、CPU106はステップS1506に移行してアルバムを次のページにめくる。カーソル位置が基準線1702を越えていないと判定すると(ステップS1507において、NO)、CPU106は途中までめくられているページを元に戻す(ステップS1508)。そして、CPU106は本文めくり処理を終了する。
【0112】
ステップS1502において、PD105のボタンが押されていないと判定すると(ステップS1502において、NO)、CPU106は、カーソル位置を取得する(ステップS1509)。そして、CPU106は、カーソル位置が後述する角めくり領域内であるか否かについて判定する(ステップS1510)。
【0113】
図18は、図13に示すアルバム画面1300における角めくり領域1803の一例を説明するための図である。ここで、角めくり領域1803とは、カーソル位置が当該角めくり領域1803内にあると、PD105のボタンが押されていなくてもページめくりを行う領域として規定されている。なお、角めくり領域1803は、予めプログラムによって指定される。
【0114】
図18に示す例では、図13に示すめくり領域1301の範囲において、さらに当該めくり領域1301が縦方向に3分割されて、上下両端から各々3分の1の範囲が角めくり領域1803とされる。図示の例では、角めくり領域1803は、アルバム画面1300の四隅に規定されている。
【0115】
図示の例では、角めくり領域1803は、縦の座標が0以上1/3H以下または2/3H以上H以下で、かつ横の座標が0以上1/4W以下または3/4W以上W以下の範囲である。
【0116】
カーソル位置が角めくり領域1803内にあると判定すると(ステップS1510において、YES)、CPU106はページを一部めくる処理を行う(ステップS1511)。そして、CPU106は、ステップS1502に戻って処理を続行する。
【0117】
一方、カーソル位置が角めくり領域1803内にないと判定すると(ステップS1510において、NO)、CPU106は、ページがめくられているか否かについて判定する(ステップS1512)。
【0118】
ページがめくられていると(ステップS1512において、YES)、CPU106はステップS1508に移行して、途中までめくられているページを元のページに戻す。そして、CPU106は本文めくり処理を終了する。また、ページがめくられていなければ(ステップS1512において、NO)、CPU106は本文めくり処理を終了する。
【0119】
図19は図15に示すページ一部めくり処理(ステップS1503及びS1511)を詳細に説明するためのフローチャートである。このページ一部めくり処理は、ページを部分的にめくる処理である。
【0120】
図1及び図19を参照して、ページ一部めくり処理が開始されると、CPU106はカーソル位置を取得する(ステップS1901)。続いて、CPU106は、後述するページの折り返し点を求める(ステップS1902)。
【0121】
図20は、図13に示すアルバム画面1300におけるページめくり及び折り返し点2001の一例を説明するための図である。そして、図20(a)は折り返し点2001がそれぞれページの右辺及び下辺にある状態の一例を示す図であり、図20(b)は折り返し点2001がそれぞれページの上辺及び下辺にある状態の第1の例を示す図である。また、図20(c)は折り返し点2001がそれぞれページの上辺及び下辺にある状態の第2の例を示す図であり、図20(d)は折り返し点2001がそれぞれページの上辺及び下辺にある状態の第3の例を示す図である。ここでは、折り返し点2001とは、ページをめくった際にできる折り返し線2002の両端の点と規定される。
【0122】
図20(a)〜(d)に示すように、折り返し線2002は、カーソル位置とめくり基準点とを結んだ線の垂直二等分線であり、折り返し点2001は折り返し線2002とアルバムの外枠との交点である。
【0123】
ここで、カーソル位置によっては、カーソル位置と折り返し点2001のカーソルに近い方の点との間の長さがアルバムの紙の長さを越えるという物理的に有り得ない事象が発生することがある。この際には、CPU106は、後述するようにして、カーソル位置の座標をプログラムに応じて修正してその後の処理を行うことになる。
【0124】
図21は、図13に示すアルバム画面1300のページめくりにおいてカーソル位置の座標の修正の一例を説明するための図である。ここで、図21(a)は第1の例を説明するための図であり、図21(b)は第2の例を説明するための図である。また、図21(c)は第3の例を説明するための図である。
【0125】
まず、図21(a)に示す修正は、めくり基準点がアルバム画面1300の上端(0,0)又は(W,0)にある際に用いられる。いま、カーソル位置が、点(1/2W,0)を中心とする半径1/2Wの円より外側にある場合に、カーソル位置の座標修正が行われる。カーソルの位置と点(1/2W,0)とを結んだ直線と円の円周との交点が、ページを一部めくる処理中におけるカーソル位置とされる。
【0126】
図21(b)に示す修正は、めくり基準点がアルバムの下端(0,H)又は(W,H)である場合に用いられる。カーソル位置が、点(1/2W,H)を中心とする半径1/2Wの円より外側にある場合に、カーソル位置の座標修正が行われる。カーソル位置と点(1/2W,H)とを結んだ直線と円の円周との交点が、ページを一部めくる処理中おけるカーソル位置とされる。
【0127】
図21(c)に示す修正は、めくり基準点が上述した以外の場合に用いられる。つまり、カーソル位置(X,Y)のY座標が1/3Hより大きく2/3H未満である場合に用いられる。
【0128】
カーソル位置が、点(1/2W,Y)を中心とする半径1/2Wの円より外側にある場合、カーソル位置の座標修正が行われることになる。カーソル位置と点(1/2W,Y)とを結んだ直線と円の円周との交点が、ページを一部めくる処理中におけるマウスカーソルの位置とされる。
【0129】
上述のようにして、ページの折り返し点2001を求めた後、CPU106は、現状のページの裏側のページ及び現状のページを規定する紙の次に位置するページ(下のページと呼ぶ)の形を求める(ステップS1903)。この際、めくり基準点及び折り返し点2001の座標よって、下のページの形が求められる。裏側のページは、下のページの形と等しい。
【0130】
続いて、CPU106は現状のページを表示する(ステップS1904)。そして、CPU106は下のページを表示する(ステップS1905)。続いて、CPU106は裏側のページを表示して(ステップS1906)、ページ一部めくり処理を終了する。
【0131】
この結果、いま、図20(a)〜(d)において、現状のページをA、裏側のページをB、下のページをCで表すと、前述のように、裏側のページB及び下のページCは、めくり基準点及び折り返し点2001(及び折り返し線2002)の座標によって決まる。アルバム画面1300において、現状のページA、下のページC、そして、裏側のページBの順番に表示されることになって、本をめくっているようにアルバムが表示されることになる。
【0132】
このようにして、上述の実施の形態による情報処理装置100では、ユーザが直感的な操作によって電子書籍(アルバム等も含む)のページをめくることができ、ユーザにとって利便性が向上することになる。
【0133】
上述の説明から明らかなように、上記の実施の形態では、CPU106における表示処理によって、CRTディスプレイ(表示手段)上に電子書籍が見開きで表示されることになる。そして、上記の実施の形態では、CPU106が上述したフローチャートに応じた処理を実行することになる。従って、CPU106がカーソル検出手段、決定手段、及びページめくり手段として機能することになる。また、CPU106はページ検出手段としても機能し、さらには、ページ数算出手段及び基準点設定手段としても機能する。
【0134】
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【0135】
例えば、上記の実施の形態の機能を表示制御方法として、この表示制御方法を、CPU106に実行させるようにしてもよい。さらに、上述の実施の形態の機能を有するプログラムを表示制御プログラムとして、この表示制御プログラムを、CPU106等のコンピュータに実行させるようにしてもよい。この際、表示制御方法及び表示制御プログラムは、少なくとも表示ステップ、カーソル検出ステップ、決定ステップ、及びページめくりステップを有することになる。
【0136】
また、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種のコンピュータに読み取り可能な記録媒体を介してシステム或いは装置に供給するようにしてもよい。そして、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理ようにしてもよい。
【符号の説明】
【0137】
101 CRTディスプレイ
102 VRAM
103 BMU
104 キーボード
105 PD
106 CPU
109 HDD
110 フレキシブルディスクドライブ
【特許請求の範囲】
【請求項1】
複数のページを有する電子書籍を表示処理する際に用いられる情報処理装置において、
前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示手段と、
前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出手段と、
前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域の上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定手段と、
前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくり手段とを有することを特徴とする情報処理装置。
【請求項2】
前記カーソル検出手段によって前記カーソルが前記書籍表示領域のページ表示領域の上に位置することが検出されると、前記決定手段は、前記めくり形態として1枚のページをめくる単ページめくりを行うと決定することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記書籍表示領域に表示されたページの前記電子書籍におけるページ位置を現在のページ位置情報として得るページ検出手段と、
前記カーソル検出手段によって前記カーソルが前記書籍表示領域において前記電子書籍の縁に位置することが検出されると、前記ページ位置情報と前記カーソルの位置とに応じてめくるべきページ数をめくりページ数として求めるページ数算出手段とを有し、
前記決定手段は、前記めくりページ数に応じて、複数のページを連続的に順次めくる連続ページめくり処理及び複数のページをまとめて一括してめくるまとめめくり処理のいずれか一方を前記めくり形態とすることを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記決定手段は、予め規定された閾値と前記めくりページ数とを比較して、前記めくりページ数が前記閾値より大きいと、前記まとめめくり処理を前記めくり形態として決定することを特徴とする請求項3記載の情報処理装置。
【請求項5】
前記決定手段は、前記書籍表示領域の上の前記カーソルの位置に応じて順方向及び逆方向のいずれに前記ページめくりを行うかを決定するようにしたことを特徴とする請求項2〜4いずれか1項記載の情報処理装置。
【請求項6】
前記カーソル検出手段によって検出された前記カーソルの位置が前記書籍表示領域の中の予め規定されためくり領域に位置すると、前記めくり実行手段は前記電子書籍のページめくりを行うことを特徴とする請求項1に記載の情報処理装置。
【請求項7】
前記カーソルの位置に応じためくり基準点を規定するめくり基準点設定手段を有し、
前記めくり実行手段は、前記めくり基準点を前記カーソルの位置に移動させて前記ページめくりを行うことを特徴とする請求項6記載の情報処理装置。
【請求項8】
前記決定手段は、前記ページ表示領域に表示されたページの属性に応じて前記めくり形態を決定するようにしたことを特徴とする請求項6又は7記載の情報処理装置。
【請求項9】
前記書籍表示領域の中心線から離れて予め規定された基準線を越えて前記カーソルの位置が検出されると、前記めくり実行手段は前記ページのめくりを行うことを特徴とする請求項6記載の情報処理装置。
【請求項10】
前記書籍表示領域の四隅には角めくり領域が設定されており、
前記めくり実行手段は、前記角めくり領域で前記カーソルの位置が検出されると、前記書籍表示領域に表示されたページを部分的にめくる一部めくりを行うことを特徴とする請求項6記載の情報処理装置。
【請求項11】
複数のページを有する電子書籍を表示処理する際に用いられる表示制御方法において、
前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、
前記ページ表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、
前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域の上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、
前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを有することを特徴とする表示制御方法。
【請求項12】
複数のページを有する電子書籍を表示処理する際に用いられる表示制御プログラムにおいて、
コンピュータに、
前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、
前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、
前記カーソルのついて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域の上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、
前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを実行させることを特徴とする表示制御プログラム。
【請求項13】
請求項12に記載の表示制御プログラムが記録されたコンピュータに読み取り可能な記録媒体。
【請求項1】
複数のページを有する電子書籍を表示処理する際に用いられる情報処理装置において、
前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示手段と、
前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出手段と、
前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域の上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定手段と、
前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくり手段とを有することを特徴とする情報処理装置。
【請求項2】
前記カーソル検出手段によって前記カーソルが前記書籍表示領域のページ表示領域の上に位置することが検出されると、前記決定手段は、前記めくり形態として1枚のページをめくる単ページめくりを行うと決定することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記書籍表示領域に表示されたページの前記電子書籍におけるページ位置を現在のページ位置情報として得るページ検出手段と、
前記カーソル検出手段によって前記カーソルが前記書籍表示領域において前記電子書籍の縁に位置することが検出されると、前記ページ位置情報と前記カーソルの位置とに応じてめくるべきページ数をめくりページ数として求めるページ数算出手段とを有し、
前記決定手段は、前記めくりページ数に応じて、複数のページを連続的に順次めくる連続ページめくり処理及び複数のページをまとめて一括してめくるまとめめくり処理のいずれか一方を前記めくり形態とすることを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記決定手段は、予め規定された閾値と前記めくりページ数とを比較して、前記めくりページ数が前記閾値より大きいと、前記まとめめくり処理を前記めくり形態として決定することを特徴とする請求項3記載の情報処理装置。
【請求項5】
前記決定手段は、前記書籍表示領域の上の前記カーソルの位置に応じて順方向及び逆方向のいずれに前記ページめくりを行うかを決定するようにしたことを特徴とする請求項2〜4いずれか1項記載の情報処理装置。
【請求項6】
前記カーソル検出手段によって検出された前記カーソルの位置が前記書籍表示領域の中の予め規定されためくり領域に位置すると、前記めくり実行手段は前記電子書籍のページめくりを行うことを特徴とする請求項1に記載の情報処理装置。
【請求項7】
前記カーソルの位置に応じためくり基準点を規定するめくり基準点設定手段を有し、
前記めくり実行手段は、前記めくり基準点を前記カーソルの位置に移動させて前記ページめくりを行うことを特徴とする請求項6記載の情報処理装置。
【請求項8】
前記決定手段は、前記ページ表示領域に表示されたページの属性に応じて前記めくり形態を決定するようにしたことを特徴とする請求項6又は7記載の情報処理装置。
【請求項9】
前記書籍表示領域の中心線から離れて予め規定された基準線を越えて前記カーソルの位置が検出されると、前記めくり実行手段は前記ページのめくりを行うことを特徴とする請求項6記載の情報処理装置。
【請求項10】
前記書籍表示領域の四隅には角めくり領域が設定されており、
前記めくり実行手段は、前記角めくり領域で前記カーソルの位置が検出されると、前記書籍表示領域に表示されたページを部分的にめくる一部めくりを行うことを特徴とする請求項6記載の情報処理装置。
【請求項11】
複数のページを有する電子書籍を表示処理する際に用いられる表示制御方法において、
前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、
前記ページ表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、
前記カーソルについて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域の上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、
前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを有することを特徴とする表示制御方法。
【請求項12】
複数のページを有する電子書籍を表示処理する際に用いられる表示制御プログラムにおいて、
コンピュータに、
前記電子書籍を見開き状態で書籍表示領域として表示するとともにカーソルを表示する表示ステップと、
前記書籍表示領域に前記カーソルが位置するか否かを検出するカーソル検出ステップと、
前記カーソルのついて所定の操作が行われると、前記カーソル検出手段で検出された前記書籍表示領域の上における前記カーソルの位置に応じて前記ページをめくるためのめくり形態を決定する決定ステップと、
前記決定手段によって決定されためくり形態に応じて電子書籍のページめくりを行うページめくりステップとを実行させることを特徴とする表示制御プログラム。
【請求項13】
請求項12に記載の表示制御プログラムが記録されたコンピュータに読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2011−186904(P2011−186904A)
【公開日】平成23年9月22日(2011.9.22)
【国際特許分類】
【出願番号】特願2010−53142(P2010−53142)
【出願日】平成22年3月10日(2010.3.10)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年9月22日(2011.9.22)
【国際特許分類】
【出願日】平成22年3月10日(2010.3.10)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]