以下、書籍管理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、ページに配置され得る素材の管理情報、および電子書籍用のページ関連定義情報を格納しており、二次元に配置される電子書籍のページを出力する書籍管理装置について説明する。なお、ここで、電子書籍用のページ関連定義情報は、二次元に配置される3以上のページの関係を示す情報、ページに配置される素材を定義する素材配置情報を有する。
また、本実施の形態において、電子書籍用のページ関連定義情報、および印刷書籍用のページ関連定義情報を有し、電子書籍または印刷書籍のいずれかを選択することにより、選択に対応する書籍情報を出力する書籍管理装置について説明する。
図1は、本実施の形態における書籍管理装置1のブロック図である。
書籍管理装置1は、素材格納部10、第一ページ関連定義情報格納部11、第二ページ関連定義情報格納部12、受付部13、ページ生成部14、出力部15、および処理部16を備える。
第一ページ関連定義情報格納部11は、第一配置関係定義情報格納手段111、第一素材配置情報格納手段112を備える。
第二ページ関連定義情報格納部12は、第二配置関係定義情報格納手段121、第二素材配置情報格納手段122を備える。
書籍管理装置1を構成する素材格納部10は、ページに配置され得る1以上の素材を格納し得る。素材とは、いわゆるオブジェクト、データと言っても良く、電子書籍または/および印刷用の書籍のページを構成するものである。また、素材のデータ構造は問わない。素材は、通常、文字列、静止画であるが、構造化されたデータ、動画、音声等でも良い。構造化されたデータとは、例えば、XMLやHTML等の記述言語で記述されたデータである。
第一ページ関連定義情報格納部11は、第一ページ関連定義情報を格納し得る。第一ページ関連定義情報は、電子書籍用のページに関する定義を行う情報である。第一ページ関連定義情報は、通常、後述する第一配置関係定義情報および第一素材配置情報を有する。
第一ページ関連定義情報格納部11を構成する第一配置関係定義情報格納手段111は、第一配置関係定義情報を格納し得る。第一配置関係定義情報は、二次元に配置される3以上のページの二次元における配置関係を定義する情報である。なお、二次元に配置されている3以上のページの全体の外観を、電子書籍装置で出力される必要はない。つまり、二次元の配置とは、論理的な二次元の配置でも良く、物理的に二次元に配置されている態様が出力される必要はない。また、ここで、例えば、二次元における中心となる横方向のページを主ページ、主ページに対して縦方向のページをスプレッドという。また、各主ページの縦方向におけるが有するスプレッドの数は異なっても良い。また、スプレッドは、通常、主ページの下に配置されるが、上に配置されても良い。さらに、横と縦を逆にし、二次元における中心となる縦方向のページを主ページ、主ページに対して横方向のページをスプレッドとしても良い。
なお、スプレッドは、主ページの内容を、さらに詳細に説明するような内容であることは好適である。そして、電子書籍は主ページとスプレッドの両方を有し、印刷用書籍は主ページのみを有することは好適である。
第一配置関係定義情報の第一の例を図2に示す。図2において、スプレッドは、主ページの下にのみ配置されている。また、第一配置関係定義情報の第二の例を図3に示す。図3において、スプレッドは、主ページの下および上に配置されている。なお、図2、図3は、第一ページ関連定義情報の概念的な情報である。つまり、第一ページ関連定義情報は、図2、図3に示す非正規の表でも良いし、主ページとスプレッドとのリンクを有するツリー構造で実現されても良い。つまり、第一ページ関連定義情報のデータ構造は問わないことは言うまでもない。また、図2、図3において、スプレッド「1−1」は主ページ「1」と同じであり、スプレッド「2−1」は主ページ「2」と同じであり、スプレッド「3−1」は主ページ「3」と同じであり、スプレッド「4−1」は主ページ「4」と同じである。また、図3の「フラグ」は、スプレッドと主ページの配置関係を示すフラグであり、スプレッドと主ページの上に配置される場合はフラグが「1」、下に配置される場合はフラグが「0」、スプレッドと主ページが同じ場合はフラグが「−(NULL)」である、とする。そして、図2の第一ページ関連定義情報を用いて、ページを二次元に配置した場合、図4のようなページの配置となる。また、図3の第一ページ関連定義情報を用いて、ページを二次元に配置した場合、図5のようなページの配置となる。
第一素材配置情報格納手段112は、各ページに配置される1以上の素材を定義する第一素材配置情報を格納し得る。第一素材配置情報は、ページを識別するページ識別子および素材を識別する1以上の素材識別子を有する。第一素材配置情報は、ページ識別子と1以上の素材識別子に加えて、各素材のページ内での位置を示す位置情報(例えば、素材が配置される左上座標)を有することは好適である。なお、第一素材配置情報が位置情報を有さず、ページ識別子と2以上の素材識別子を有する場合、例えば、2以上の素材は、第一素材配置情報内で定義されている順に出力される。なお、ここでページとは、主ページ、スプレッドの両方を含む概念である、とする。また、ページは、表紙、目次、裏表紙等を含んでも良い。
第二ページ関連定義情報格納部12は、第二ページ関連定義情報を格納し得る。第二ページ関連定義情報は、印刷用の書籍のページに関する定義である。第二ページ関連定義情報は、通常、後述する第二配置関係定義情報および第二素材配置情報を有する。ただし、第二ページ関連定義情報は、第二素材配置情報のみでも良い。印刷用の書籍のページは、通常、一次元上に並んでいるからである。
第二配置関係定義情報格納手段121は、第二配置関係定義情報を格納し得る。第二配置関係定義情報は、一次元上に並ぶ2以上のページであり、印刷用書籍のページの配置関係を定義する情報である。第二配置関係定義情報は、例えば、「1,2,3・・・,N(Nは自然数)」である。また、第二配置関係定義情報は、例えば、「表紙,目次,1,2,3・・・,N(Nは自然数)」等でも良い。第二配置関係定義情報が有する「1」あ、1ページ目を示す。
第二素材配置情報格納手段122は、印刷用書籍の各ページに配置される1以上の素材を定義する第二素材配置情報を格納し得る。第二素材配置情報は、ページを識別するページ識別子および素材を識別する1以上の素材識別子を有する。第二素材配置情報は、ページ識別子と1以上の素材識別子に加えて、各素材のページ内での位置を示す位置情報(例えば、素材が配置される左上座標)を有することは好適である。なお、第二素材配置情報が位置情報を有さず、ページ識別子と2以上の素材識別子を有する場合、例えば、2以上の素材は、第二素材配置情報内で定義されている順に出力される。さらに、ここでのページも、表紙、目次、裏表紙等を含んでも良い。
また、第二素材配置情報は、第一素材配置情報の一部であることは好適である。また、特に、第一素材配置情報は、第一の方向(例えば、横方向)のページおよび第二の方向(例えば、縦方向)のページにより、二次元にページが配置された電子書籍を構成する情報であり、第二素材配置情報は、第一の方向のページのうちの一行または一列、または前記第二の方向のページのうちの一行または一列のページに配置される1以上の素材を定義する情報であることは好適である。つまり、例えば、第二素材配置情報は、図2、図3の主ページに該当する最初のスプレッドのみであることは好適である。かかる場合、例えば、第二素材配置情報は、スプレッド「1−1」「2−1」「3−1」「4−1」・・・等に対応する素材の配置情報となる。また、スプレッド「1−1」「2−1」「3−1」「4−1」・・・は、ページ「1」「2」「3」「4」・・・と同じである、とする。
受付部13は、電子書籍の作成を指示する第一指示、または印刷用書籍の作成を指示する第二指示のいずれかを受け付ける。また、受付部13は、他の指示やデータを受け付けても良い。なお、データとは、例えば、素材、第一ページ関連定義情報、第二ページ関連定義情報等である。また、受付部13は、素材格納部10の素材を編集する指示、第一ページ関連定義情報を編集する指示、第二ページ関連定義情報を編集する指示である編集指示を受け付けても良い。
また、ここで受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。
第一指示等の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。受付部13は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
ページ生成部14は、第一ページ関連定義情報を用いて、素材格納部10の1以上の素材を3以上のページに配置し、3以上のページを生成する。
ページ生成部14は、第一配置関係定義情報を用いて、3以上の各ページを二次元に配置し、かつ、第一素材配置情報を用いて、各ページに1以上の素材を配置し、3以上のページを構成する。なお、ここで構成したページは電子書籍を構成するページである。
ページ生成部14は、第二素材配置情報を用いて、各ページに1以上の素材を配置し、1以上のページを構成する。なお、ここで構成したページは印刷用の書籍を構成するページである。
ページ生成部14は、第二配置関係定義情報を用いて、1以上の各ページを配置し、かつ、第二素材配置情報を用いて、各ページに1以上の素材を配置し、1以上のページを構成しても良い。なお、ここで構成したページは印刷用の書籍を構成するページである。
ページ生成部14は、受付部13が第一指示を受け付けた場合、第一配置関係定義情報を用いて、3以上の各ページを二次元に配置し、かつ、第一素材配置情報を用いて、各ページに1以上の素材を配置し、3以上のページを構成する。また、ページ生成部14は、受付部13が第二指示を受け付けた場合、第二素材配置情報を用いて、各ページに1以上の素材を配置し、1以上のページを構成する。つまり、ページ生成部14は、受付部13が第一指示を受け付けた場合、電子書籍を生成し、受付部13が第二指示を受け付けた場合、印刷用書籍を生成する。
出力部15は、ページ生成部14が生成した3以上のページ(電子書籍のページ)を出力する。また、出力部15は、ページ生成部14が生成した1以上のページ(印刷用書籍のページ)を出力する。なお、出力部15における、ページの出力態様は問わない。例えば、出力部15は、ページ生成部14が生成した3以上のページのうちの一のページを出力しても良いし、すべてのページを出力しても良いし、すべてのページのサムネイルを出力しても良い。また、ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。また、出力部15は、例えば、画面に表示するとともに、図示しない記録媒体に、ページ生成部14が生成した1以上のページを蓄積しても良い。なお、出力部15が出力するページは、通常、平面であるが、立体であっても良い。例えば、ページに配置されているデータが6つのタグを有する構造化データ(例えば、XMLで記述されたデータ)である場合、ページは立方体でも良い。つまり、出力部15は、6つのタグを有する構造化データの「6」から、立方体を構成し、立方体の各面に6との各タグに対応するデータを配置しても良い。また、例えば、ページに配置されているデータが4つのタグを有する構造化データ(例えば、XMLで記述されたデータ)である場合、出力部15は、4つのタグを有する構造化データの「4」から、4面体を構成し、4面体の各面に4との各タグに対応するデータを配置しても良い。
出力部15は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部15は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
処理部16は、受付部13が編集指示を受け付けた場合、当該編集指示に対応する素材、第一ページ関連定義情報、または第二ページ関連定義情報等を変更する。なお、素材等を変更する技術は公知技術であるので詳細な説明を省略する。また、ユーザからの編集指示により素材を変更するので、一の編集指示により、電子書籍と印刷用書籍の両方のデータが一度に修正可能となる。
素材格納部10、第一ページ関連定義情報格納部11、第一配置関係定義情報格納手段111、第一素材配置情報格納手段112、第二ページ関連定義情報格納部12、第二配置関係定義情報格納手段121、第二素材配置情報格納手段122は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
素材格納部10等に素材等が記憶される過程は問わない。例えば、記録媒体を介して素材等が素材格納部10等で記憶されるようになってもよく、通信回線等を介して送信された素材等が素材格納部10等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された素材等が素材格納部10等で記憶されるようになってもよい。
ページ生成部14、および処理部16は、通常、MPUやメモリ等から実現され得る。ページ生成部14等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、書籍管理装置1の動作について図6のフローチャートを用いて説明する。
(ステップS601)受付部13は、電子書籍の作成を指示する第一指示を受け付けたか否かを判断する。第一指示を受け付ければステップS602に行き、第一指示を受け付けなければステップS604に行く。
(ステップS602)ページ生成部14は、第一指示に応じて、電子書籍を生成する電子書籍生成処理を行う。電子書籍生成処理について、図7のフローチャートを用いて説明する。
(ステップS603)出力部15は、ページ生成部14が生成した3以上のページのうち、1以上のページを出力する。なお、ここでのページの出力態様は問わない。ステップS601に戻る。
(ステップS604)受付部13は、印刷用書籍の作成を指示する第二指示を受け付けたか否かを判断する。第二指示を受け付ければステップS605に行き、第二指示を受け付けなければステップS607に行く。
(ステップS605)ページ生成部14は、第二指示に応じて、印刷用書籍を生成する印刷用書籍生成処理を行う。印刷用書籍生成処理について、図8のフローチャートを用いて説明する。
(ステップS606)出力部15は、ページ生成部14が生成した1以上のページのうち、1以上のページを出力する。なお、ここでのページの出力態様は問わない。ステップS601に戻る。
(ステップS607)受付部13は、編集指示を受け付けたか否かを判断する。編集指示を受け付ければステップS608に行き、編集指示を受け付けなければステップS609に行く。
(ステップS608)処理部16は、受付部13が編集指示に応じて、素材、第一ページ関連定義情報、または第二ページ関連定義情報等を変更する。ステップS601に戻る。
(ステップS609)受付部13は、他の指示を受け付けたか否かを判断する。他の指示を受け付ければステップS610に行き、他の指示を受け付けなければステップS601に戻る。
(ステップS610)処理部16は、受付部13が受け付けた他の指示に応じた処理を行う。ステップS601に戻る。
なお、図6のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、ステップS602の電子書籍生成処理について、図7のフローチャートを用いて説明する。
(ステップS701)ページ生成部14は、カウンタiに1を代入する。
(ステップS702)ページ生成部14は、i番目の主ページが第一配置関係定義情報の中に存在するか否かを判断する。i番目の主ページが存在すればステップS703に行き、存在しなければステップS709に行く。
(ステップS703)ページ生成部14は、第一配置関係定義情報を用いて、i番目の主ページを配置する。なお、ページ生成部14は、通常、i番目の主ページを(i−1)番目の主ページの隣になるように配置する。ここで、隣とは、通常、横(左横または右横)であるが、上または下でも良い。
(ステップS704)ページ生成部14は、カウンタjに1を代入する。
(ステップS705)ページ生成部14は、第一配置関係定義情報を用いて、i番目の主ページに対応するj番目のスプレッドが存在するか否かを判断する。なお、ここでのスプレッドは、主ページではないスプレッドである。j番目のスプレッドが存在すればステップS706に行き、j番目のスプレッドが存在しなければステップS708に行く。
(ステップS706)ページ生成部14は、j番目のスプレッドを配置する。なお、ページ生成部14は、例えば、j番目のスプレッドをi番目の主ページの隣に配置する。ここで、隣とは、通常、上または下であるが、横(左横または右横)でも良い。なお、ページ生成部14は、スプレッドに対応するフラグを読み出し、当該フラグを用いて、スプレッドを配置する位置を決定することは好適である。スプレッドを配置する位置は、上述したように、例えば、フラグが「0」の場合は主ページの下側、フラグが「1」の場合は主ページの上側である。また、例えば、一の主ページに対して、下に配置される複数のスプレッドが存在する場合、主ページの下方向に、順次、スプレッドが配置される。
(ステップS707)ページ生成部14は、カウンタjを1、インクリメントする。ステップS705に戻る。
(ステップS708)ページ生成部14は、カウンタiを1、インクリメントする。ステップS702に戻る。
(ステップS709)ページ生成部14は、カウンタiに1を代入する。
(ステップS710)ページ生成部14は、配置したページの中で、i番目のページが存在するか否かを判断する。i番目のページが存在すればステップS711に行き、i番目のページが存在しなければ上位処理にリターンする。なお、ここでページは、主ページまたはスプレッドである。
(ステップS711)ページ生成部14は、カウンタjに1を代入する。
(ステップS712)ページ生成部14は、第一素材配置情報を用いて、i番目のページに配置されるj番目の素材が存在するか否かを判断する。j番目の素材が存在すればステップS713に行き、j番目の素材が存在しなければステップS715に行く。
(ステップS713)ページ生成部14は、j番目の素材を、i番目のページに配置する。なお、第一素材配置情報の中にj番目の素材の位置情報が存在すれば、ページ生成部14は、当該位置情報に従って、j番目の素材を配置する。一方、第一素材配置情報の中にj番目の素材の位置情報が存在しなければ、ページ生成部14は、(j−1)番目の素材の隣にj番目の素材を配置する。なお、隣とは、左横、右横、下、上等である。
(ステップS714)ページ生成部14は、カウンタjを1、インクリメントする。ステップS712に戻る。
(ステップS715)ページ生成部14は、カウンタiを1、インクリメントする。ステップS710に戻る。
次に、ステップS605の印刷用書籍生成処理について、図8のフローチャートを用いて説明する。
(ステップS801)ページ生成部14は、カウンタiに1を代入する。
(ステップS802)ページ生成部14は、印刷用書籍のページの中で、i番目のページが存在するか否かを判断する。i番目のページが存在すればステップS803に行き、i番目のページが存在しなければ上位処理にリターンする。なお、ここでページは、印刷用書籍のページで、表紙や目次等であっても良い。
(ステップS803)ページ生成部14は、カウンタjに1を代入する。
(ステップS804)ページ生成部14は、第一素材配置情報を用いて、i番目のページに配置されるj番目の素材が存在するか否かを判断する。j番目の素材が存在すればステップS805に行き、j番目の素材が存在しなければステップS807に行く。
(ステップS805)ページ生成部14は、j番目の素材を、i番目のページに配置する。なお、第一素材配置情報の中にj番目の素材の位置情報が存在すれば、ページ生成部14は、当該位置情報に従って、j番目の素材を配置する。一方、第一素材配置情報の中にj番目の素材の位置情報が存在しなければ、ページ生成部14は、(j−1)番目の素材の隣にj番目の素材を配置する。なお、隣とは、左横、右横、下、上等である。
(ステップS806)ページ生成部14は、カウンタjを1、インクリメントする。ステップS804に戻る。
(ステップS807)ページ生成部14は、カウンタiを1、インクリメントする。ステップS802に戻る。
以下、本実施の形態における書籍管理装置1の具体的な動作について説明する。以下、2つの具体例を用いて説明する。
(具体例1)
具体例1において、一の表で、第一ページ関連定義情報と第二ページ関連定義情報とを管理している例を示す。また、本具体例1は、第二素材配置情報は、第一素材配置情報の一部である場合である。
今、素材格納部10は、図9に示す素材管理表を保持している。素材管理表は「素材識別子」「素材」を有するレコードを1以上管理している表である。「素材識別子」は素材の識別子である。「素材」はページに配置されるデータである。
また、図10は、第一ページ関連定義情報と第二ページ関連定義情報とを管理しているページ関連定義表である。つまり、第一ページ関連定義情報格納部11と第二ページ関連定義情報格納部12の中には、図10の情報が格納されている。図10のページ関連定義表は、「主ページ」「スプレッド」「素材識別子」を有するレコードを1以上管理している。「主ページ」は、印刷用書籍にも電子書籍にも使用されるページ(ここでの主ページ)の定義である。また、「スプレッド」は電子書籍にのみ使用されるページであり、ここでは、「スプレッド」の「1−1」「2−1」「3−1」等は、それぞれ主ページの「1」「2」「3」等と同一である、とする。また、図10において、「主ページ」「スプレッド」が第一配置関係定義情報である。また、図10において、各スプレッドに対応する「素材識別子」が第一素材配置情報である。また、図10において、「主ページ」が第二配置関係定義情報である。また、図10において、各主ページに対応する「素材識別子」が第二素材配置情報である。
かかる状況において、ユーザは、書籍管理装置1に対して、電子書籍の作成を指示する第一指示を入力した、とする。
次に、受付部13は、第一指示を受け付ける。そして、ページ生成部14は、第一指示に応じて、以下のように、電子書籍生成処理を行う。つまり、ページ生成部14は、図10の第一配置関係定義情報を用いて、すべての主ページを配置する。ここでは、主ページを横に左から右の方向に配置する。なお、この段階では、主ページ内には素材が配置されておらず、ページの枠のみが存在する。
次に、ページ生成部14は、図10の第一配置関係定義情報を用いて、各主ページに対応するすべてのスプレッドを配置する。ここでは、スプレッドを、主ページの下方向に、上から順に配置する。なお、この段階では、スプレッド内にも素材が配置されておらず、ページの枠のみが存在する。
次に、ページ生成部14は、図10の第一素材配置情報を用いて、各ページ(主ページもスプレッドも含まれる)に配置されるすべての素材を配置する。ここで、一のページに複数の素材が配置される場合、各素材をページの上から下に向かって、順に配置する、とする。
以上の処理により、ページ生成部14は、図11に示す複数のページからなる電子書籍を構成できた。なお、本電子書籍のページは、二次元上に配置されている。
次に、出力部15は、ページ生成部14が生成した1以上のページのうち、1以上のページを出力する。ここで、出力部15は、図11に示すような出力を行っても良いし、例えば、1ページ目(1−1のスプレッド)のみを出力しても良い。つまり、ページの出力態様は問わない。例えば、出力部15は、図13に示すように、複数のページの二次元上での配置関係のみを出力しても良い。
また、出力部15は、図11に示す複数のページからなる電子書籍を、図示しない記録媒体に蓄積しても良いことは言うまでもない。
さらに、次に、ユーザは、書籍管理装置1に対して、印刷用書籍の作成を指示する第二指示を入力した、とする。すると、受付部13は、第二指示を受け付ける。
次に、ページ生成部14は、第二指示に応じて、以下に示すような印刷用書籍生成処理を行う。
つまり、ページ生成部14は、図10の第一素材配置情報を用いて、各主ページに対応するすべての素材を、各主ページに配置する。そして、ページ生成部14は、図12に示す印刷用書籍の情報を得る。
次に、出力部15は、ページ生成部14が生成した1以上のページのうち、1以上のページを出力する。なお、ここで、例えば、出力部15は、ページ生成部14が生成したすべてのページを、図示しない記録媒体に蓄積する。
なお、具体例1において、第一指示は、図10の属性「スプレッド」の指示、第二指示は、図10の属性「主ページ」の指示でも良い。つまり、表形式で構成される第一ページ関連定義情報のうち、異なる属性を指示することにより、生成される書籍が異なる。生成される書籍とは、電子書籍または印刷用書籍である。
(具体例2)
具体例2において、第一ページ関連定義情報と第二ページ関連定義情報とは、別管理され、無関係である場合である。
今、素材格納部10は、図9に示す素材管理表を保持している。また、第一ページ関連定義情報格納部11は、図10に示す第一ページ関連定義情報表を格納している、とする。さらに、第二ページ関連定義情報格納部12は、図14に示す第二ページ関連定義情報表を格納している、とする。第二ページ関連定義情報表は、「ページ」「素材識別子」「位置情報」を有する。「ページ」は印刷用書籍のページ番号、「素材識別子」は素材の識別子、「位置情報」は素材のページ内での座標を示す。
かかる状況において、ユーザは、書籍管理装置1に対して、電子書籍の作成を指示する第一指示を入力した、とする。
すると、書籍管理装置1は、具体例1で説明した動作を行い、図11の電子書籍を構成する。そして、出力部15は、例えば、図11に示す複数のページを出力する。
次に、ユーザは、書籍管理装置1に対して、印刷用書籍の作成を指示する第二指示を入力した、とする。すると、受付部13は、第二指示を受け付ける。
次に、ページ生成部14は、第二指示に応じて、以下に示すような印刷用書籍生成処理を行う。
つまり、ページ生成部14は、図14の第二ページ関連定義情報表を用いて、各ページに対応するすべての素材を、各ページに配置する。そして、ページ生成部14は、図15に示す印刷用書籍の情報を得る。
次に、出力部15は、ページ生成部14が生成した1以上のページのうち、1以上のページを出力する。なお、ここで、例えば、出力部15は、ページ生成部14が生成したすべてのページを、図示しない記録媒体に蓄積する。
(具体例3)
具体例3において、電子書籍の二次元上へのページの配置に関して、主ページに対して2つの方向で、スプレッドが定義され得る場合である。
今、素材格納部10は、図9に示す素材管理表を保持している。また、図16は、第一ページ関連定義情報と第二ページ関連定義情報とを管理しているページ関連定義表である。つまり、第一ページ関連定義情報格納部11と第二ページ関連定義情報格納部12の中には、図16の情報が格納されている。図16のページ関連定義表は、「主ページ」「スプレッド」「素材識別子」「フラグ」を有するレコードを1以上管理している。「フラグ」は、スプレッドと主ページの配置関係を示すフラグであり、スプレッドと主ページの上に配置される場合はフラグが「1」、下に配置される場合はフラグが「0」、スプレッドと主ページが同じ場合はフラグが「−(NULL)」である、とする。
かかる状況において、ユーザは、書籍管理装置1に対して、電子書籍の作成を指示する第一指示を入力した、とする。
次に、受付部13は、第一指示を受け付ける。そして、ページ生成部14は、第一指示に応じて、以下のように、電子書籍生成処理を行う。つまり、ページ生成部14は、図16の第一配置関係定義情報を用いて、すべての主ページを配置する。ここでは、主ページを横に左から右の方向に配置する。また、ページ生成部14は、フラグを用いて、主ページと一致しないスプレッドについて、主ページの上側または下側に配置する。つまり、ページ生成部14は、「フラグ=0」のスプレッドは主ページの下側に配置し、「フラグ=1」のスプレッドは主ページの上側に配置する。
次に、ページ生成部14は、図16の第一素材配置情報を用いて、各ページ(主ページもスプレッドも含まれる)に配置されるすべての素材を配置する。ここで、一のページに複数の素材が配置される場合、各素材をページの上から下に向かって、順に配置する、とする。
以上の処理により、ページ生成部14は、図17に示す複数のページからなる電子書籍を構成できた。なお、本電子書籍のページは、二次元上に配置されている。
次に、出力部15は、ページ生成部14が生成した1以上のページのうち、1以上のページを出力する。ここで、出力部15は、図17に示すような出力を行っても良いし、例えば、1ページ目(1−1のスプレッド)のみを出力しても良い。つまり、ページの出力態様は問わない。
さらに、次に、ユーザは、書籍管理装置1に対して、印刷用書籍の作成を指示する第二指示を入力した、とする。すると、受付部13は、第二指示を受け付ける。
次に、ページ生成部14は、第二指示に応じて、具体例1で説明した印刷用書籍生成処理を行う。そして、ページ生成部14は、図12に示す印刷用書籍の情報を得る。
次に、出力部15は、ページ生成部14が生成した1以上のページのうち、1以上のページを出力する。
以上、本実施の形態によれば、二次元上に配置される3以上のページを有する電子書籍を効率的に作成できる。なお、本電子書籍は、印刷用書籍では実現できなかった書籍であり、電子書籍の新しいモデルを提案するものである。
また、本実施の形態によれば、ページ構成が異なる、電子書籍で使用する素材と印刷用書籍で使用する素材との共通化を図り、効率的に電子書籍と印刷用書籍とを作成できる。つまり、本実施の形態によれば、第一ページ関連定義情報と第二ページ関連定義情報という書籍の特性を十二分に考慮したフィルタを用いて、素材群から、電子書籍および印刷用書籍を、効率的に生成できる。なお、本フィルタを書籍生成フィルタと呼んでも良い。
また、本実施の形態における書籍管理装置1は、印刷用書籍のページは、電子書籍のページの一部となり、電子書籍の主要ページからなる印刷用書籍を生成できる。かかることは、1冊1冊の重量があるが、取り出しやすいという印刷用書籍と、データなので1冊の重量が0であり、データ表現上の工夫がしやすいが、1冊をオープンするまで時間がかかるという電子書籍の特性を考慮した、2種類の書籍の構築方法を提案するものである。
なお、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体に、ページに配置され得る1以上の素材を格納し得る素材格納部と、電子書籍用のページに関する定義である第一ページ関連定義情報を格納し得る第一ページ関連定義情報格納部とを具備し、前記第一ページ関連定義情報格納部は、二次元に配置される3以上のページの二次元における配置関係を定義する情報である第一配置関係定義情報を格納し得る第一配置関係定義情報格納手段と、各ページに配置される1以上の素材を定義する第一素材配置情報を格納し得る第一素材配置情報格納手段とを具備し、コンピュータを、前記ページ関連定義情報を用いて、前記素材格納部の1以上の素材を3以上のページに配置し、3以上のページを生成するページ生成部と、前記ページ生成部が生成した3以上のページを出力する出力部として機能させ、前記ページ生成部は、前記第一配置関係定義情報を用いて、3以上の各ページを二次元に配置し、かつ、前記第一素材配置情報を用いて、各ページに1以上の素材を配置し、3以上のページを構成するものとして、コンピュータを機能させるプログラム、である。
記録媒体に、印刷用の書籍のページに関する定義である第二ページ関連定義情報を格納し得る第二ページ関連定義情報格納部をさらに具備し、前記第二ページ関連定義情報格納部は、各ページに配置される1以上の素材を定義する第二素材配置情報を格納し得る第二素材配置情報格納手段を具備し、上記プログラムにおいて、前記ページ生成部は、前記第二素材配置情報を用いて、各ページに1以上の素材を配置し、1以上のページを構成するものとして、コンピュータを機能させることは好適である。
上記プログラムにおいて、コンピュータを、電子書籍の作成を指示する第一指示、または印刷用書籍の作成を指示する第二指示のいずれかを受け付ける受付部としてさらに機能させ、前記ページ生成部は、前記受付部が第一指示を受け付けた場合、前記配置関係定義情報を用いて、3以上の各ページを二次元に配置し、かつ、前記第一素材配置情報を用いて、各ページに1以上の素材を配置し、3以上のページを構成し、前記受付部が第二指示を受け付けた場合、前記第二素材配置情報を用いて、各ページに1以上の素材を配置し、1以上のページを構成するものとして、コンピュータを機能させることは好適である。
上記プログラムにおいて、前記第二素材配置情報は、前記第一素材配置情報の一部であるものとして、コンピュータを機能させることは好適である。
上記プログラムにおいて、前記第一素材配置情報は、第一の方向のページおよび第二の方向のページにより、二次元にページが配置された電子書籍を構成する情報であり、前記第二素材配置情報は、前記第一の方向のページのうちの一行または一列、または前記第二の方向のページのうちの一行または一列のページに配置される1以上の素材を定義する情報であるものとして、コンピュータを機能させることは好適である。
(実施の形態2)
本実施の形態において、上下方向、左右方向の指示により、二次元上に配置されたページが切り替わる電子書籍装置について説明する。電子書籍装置は、電子書籍を閲覧する装置である。
図18は、本実施の形態における電子書籍装置2のブロック図である。電子書籍装置2は、ページ格納部21、電子書籍受付部22、ページ出力部23を備える。
ページ格納部21は、1以上の素材が配置されている3以上のページであり、論理的に二次元に配置される3以上のページを格納し得る。ページ格納部21には、書籍管理装置1が生成し、蓄積した3以上のページが蓄積されている、とする。
ページ格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。書籍管理装置1の処理により、ページ格納部21に3以上のページの情報が記憶された、とする。
電子書籍受付部22は、上下方向、および左右方向の指示を受け付ける。指示の入力手段は、タッチパネルやキーボードやマウスやメニュー画面によるもの等、何でも良い。電子書籍受付部22は、タッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
ページ出力部23は、3以上のページのうちの一のページを出力する。また、ページ出力部23は、ページ出力部23が出力している一のページに対して、電子書籍受付部22が受け付けた指示の方向に配置されるページを、ページ格納部21から取得し、出力する。つまり、電子書籍受付部22が上、下、左、または右方向の指示(例えば、指によるスワイプまたはフリック)を受け付けた場合、ページ出力部23は、現在表示されているページに対して、下、上、右、または左のページを出力する。
ページ出力部23は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。ページ出力部23は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
以下、本実施の形態における電子書籍装置2の具体的な動作について説明する。なお、ここでの電子書籍装置2の画面はタッチパネルである、とする。
今、ページ格納部21は、図17に示す多数のページを有する電子書籍が格納されている、とする。
次に、ユーザが電子書籍装置2の起動指示を電子書籍装置2に入力した、とする。すると、電子書籍受付部22が起動指示を受け付け、電子書籍装置2が起動される。
次に、電子書籍装置2のページ出力部23が第1ページを出力する、とする。
そして、ユーザは、画面に対して右に指をスライドし、第1ページ(1−1)の左のページである2ページ目を表示しようとする。すると、電子書籍受付部22が右へのスライドの信号を受け付ける。次に、ページ出力部23は、1ページの左に存在する(図17参照)第2ページを読み出し、出力する。
次に、ユーザは、画面に対して上に指をスライドし、第2ページの下のページである(2−2)のスプレッドを表示しようとする。すると、電子書籍受付部22が上へのスライドの信号を受け付ける。次に、ページ出力部23は、第2ページの下に存在する(図17参照)(2−2)のスプレッドを読み出し、出力する。
以上、本実施の形態によれば、二次元上に配置される3以上のページを有する電子書籍を使用できる。
なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、記録媒体は、1以上の素材が配置されている3以上のページであり、論理的に二次元に配置される3以上のページを格納し得るページ格納部を具備し、コンピュータを、前記3以上のページのうちの一のページを出力するページ出力部と、上下方向、および左右方向の指示を受け付ける電子書籍受付部として機能させ、前記ページ出力部は、前記ページ出力部が出力している一のページに対して、前記電子書籍受付部が受け付けた指示の方向に配置されるページを、前記ページ格納部から取得し、出力するものとしてコンピュータを機能させるためのプログラム、である。
また、図19は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の書籍管理装置、電子書籍装置を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図9は、このコンピュータシステム300の概観図であり、図20は、システム300のブロック図である。
図19において、コンピュータシステム300は、CD−ROMドライブを含むコンピュータ301と、キーボード302と、マウス303と、モニタ304とを含む。
図20において、コンピュータ301は、CD−ROMドライブ3012に加えて、MPU3013と、バス3014と、ROM3015と、RAM3016と、ハードディスク3017とを含む。なお、バス3014は、MPU3013やCD−ROMドライブ3012に接続されている。また、ROM3015には、ブートアッププログラム等のプログラムが記憶されている。また、RAM3016は、MPU3013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのものである。また、ハードディスク3017は、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのものである。ここでは、図示しないが、コンピュータ301は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム300に、上述した実施の形態の書籍管理装置等の機能を実行させるプログラムは、CD−ROM3101に記憶されて、CD−ROMドライブ3012に挿入され、さらにハードディスク3017に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ301に送信され、ハードディスク3017に記憶されても良い。プログラムは実行の際にRAM3016にロードされる。プログラムは、CD−ROM3101またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ301に、上述した実施の形態の書籍管理装置等の機能を実行させるオペレーティングシステム、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム300がどのように動作するかは周知であり、詳細な説明は省略する。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。