(1)epubのファイル構成

EPUBは、ツリー構造になったファイルから構成されています。それをzipでアーカイブ化したものがEPUBなのです。ネット書房のTONBOを使うと、このファイル構造が次のように左フレームに表示されます。

.epubとあるのは、実際のファイルではなく、epubのrootフォルダと考えてください。トップフォルダのすぐ下に、二つのフォルダ(OEBPSとMETA-INF)と一つのファイルmimetyepがあります。

《mimetyep》

まず、このmimetype をクリックしてみてください。そこにはただ、

application/epub+zip

とだけ、このepubファイルのmimetypeが記載してあるだけです。

これは、このファイルがepubという規則でパッケージ化されていることの宣言です。1つにパッケージ化されたepub ファイルは、冒頭の31バイト目からmimetypeという文字が始まり、その直後に、このapplication/epub+zipが記載されていなければならないとなっています。

epubは、私たちが用いるzipフォーマットで複数のファイルを1つにパッケージ化するのですが、ただ、zipすふのではなく、上記のように冒頭にmimetype がくることを必須条件としています。

とても面倒なことですが、TONBOを使う限りこのようなことを意識する必要はありません。TONBOが自動的にこのルールに従うようにパッケージ化します。

mimetypeファイルは、epubという家の「表札」だと考えればよいでしょう。

《META-INFとcontainer.xml》

META-INFフォルダは、epubにはなくてはならない必須のフォルダで、その中にあるcontainer.xmlも必須ファイルです。META-INFフォルダには、container.xml以外にも、暗号化に関する情報、digital rights management (DRM)についての情報を置くことができますが、ここではTONBOが唯一使用しているcontainer.xmlについてだけ説明します。

私たちのepubでは、左クリックで表示させるとわかるように、container.xmlは次のようになっています。(—の連続ハイフンは含みません、以下同じ)

—————————————————-
<?xml version=”1.0″?>
<container version=”1.0″ xmlns=”urn:oasis:names:tc:opendocument:xmlns:container”>   <rootfiles>
<rootfile full-path=”OEBPS/content.opf”                                media-type=”application/oebps-package+xml” />
</rootfiles>
</container>
—————————————————-

この中で最も重要な情報は、full-pathで示しているopfファイルの位置と名前です。opfファイルが、root直下のOEBPSフォルダの下にあるcontent.opfファイルであることが記述されています。

このopfファイルは、パッケージドキュメントと呼ばれ、電子書籍のタイトル/カバーなどの基本情報、テキスト/画像/ナビゲーション情報などの内容と一覧、それらの表示様式と順序などを記述している最も重要なドキュメントです。これについて次節で説明しましょう。

manifest.xmlも、パッケージドキュメントも、xmlというタグ構造をもった文書で記載されていますが、これについては、必要な場合に説明を加えることにして、まず、なんとなく構造を見ておくにとどめておいてかまいません。

rootの直下にある最後のOEBPSは必須フォルダではありません。別の名前でもかまわないし、なくてもかまいません。通常よく用いられるフォルダですから、TONBOでも本書でもこれを用います。

ファイル/フォルダ構成上、以上の他にあるのは、OEBPSフォルダの中にある「文書」「画像」、「スタイル」の三つのフォルダで、さらに、その下にいくつかファイルが置かれています。

「文書」フォルダには、書籍のテキストファイルが置かれます。そこに置かれているhello.tonboは、hello.xhtmlファイルに変換されて、epubに組み込まれます。nav.xhtmlファイルについては別に説明します。

「画像」フォルダは、画像ファイルを入れておくフォルダです。TONBOでは、パソコンにある画像を、dragアンドdropで、当該電子書籍に組み込むことができます。

「スタイル」フォルダは、xhtmlのcssファイル、tonboタグのtssファイルを入れておくフォルダです。これらは、文章の構造をより詳細に記述するためのものです。tonboタグ用のスタイルファイルtssファイルは、epub作成時にcssファイルに変換されます。

nsepub.cssは、tonbo日本語タグに関わるスタイルファイルで、ユーザーは変更できません。cssファイルやtssファイルは、ユーザーが追加することができます。あとで追加された定義が優先されるので、nsepub.cssで定義されたものを書き換えることも実質できないことではありません。