|| top ||

EPUB3版テンプレートの使い方
(2013年版)

*** こちらは2013年に公開したページです。
*** 現在のEPUB3仕様とはやや異ってきているため、
*** なるべく『EPUB3テンプレート 第三版(電書協仕様準拠版)』の使用をお勧めします。
*** 解説ページは『EPUB3テンプレートの使い方 第三版(電書協仕様準拠版)』へ。
*** サンプルページは『リーディングシステムによる表示サンプル 第三版(電書協仕様準拠版)』へ。

EPUB3テンプレートを使ってご自分の書籍を作成するための編集方法です。
行程は長めですが、順を追って作業しながらご自分の書籍情報や文章を入れ替えていくだけです。
テンプレートは《テンプレート1》の「dc_template_01_winered_ep3.epub」を例に解説しています。
EPUB編集ソフトは『Sigil』、電子書籍ビュアーは『Adobe Digital Editions』、各ファイルの編集には文字コードが「UTF-8」で保存できるエディタを使用します。
あらかじめこれらを《使用ツール/参考ツール》の項目を参考にインストールしておいてください。

  1. EPUBファイルを解凍する
  2. 本文ページを整理する
    1. 不要なページを削除する
    2. 各ファイルの書籍名を差し替える
    3. 前付/後付の各ページの情報を差し替える
      1. 〈cover.xhtml - 表紙ページ〉
      2. 〈titlepage.xhtml - 扉ページ〉
      3. 〈dedication.xhtml - 献辞ページ〉
      4. 〈characters.xhtml - 登場人物ページ〉
      5. 〈preface.xhtml - まえがきページ〉
      6. 〈colophon.xhtml - 奥付ページ〉
      7. 〈afterword.xhtml - あとがきページ〉
      8. 〈その他の前付/後付ページ〉
    4. 本文を整形する
    5. 本文ファイルを編集する
  3. 画像ファイルを差し替える
  4. 目次ファイル「navigation.xhtml」を編集する
  5. ナビゲーション用ファイル「toc.xhtml」を編集する
    1. 「目次」部分を編集する
    2. 「ガイド」部分を編集する
  6. 「content.opf」ファイルを編集する
    1. UUIDを変更する
    2. 書籍情報を編集する
    3. <manifest>〜</manifest>内のxhtmlファイル情報を編集する
    4. <manifest>〜</manifest>内の画像ファイル情報を編集する
    5. <spine>〜</spine>内のファイルリストを編集する
    6. <guide>〜</guide>内を編集する
  7. 編集したファイルをEPUBに再圧縮する
  8. ナビゲーション用ファイル「toc.ncx」を作成する(EPUB2互換用)
    1. ファイルの仮編集をする
    2. 「toc.ncx」ファイルを仮作成する
    3. 「toc.ncx」ファイルの内容をコピーする
    4. UUIDと書籍名を変更する
  9. EPUBファイルをビュアーで確認する
  10. 「EpubCheck」で検証する
  11. 《「EpubCheck」についての注意事項》
  12. 《制作のヒント》
  13. 《その他の注意》
  14. 《使用ツール/参考ツール》
  15. 《参照サイト》
  16. 《改訂記録》

1. EPUBファイルを解凍する

  • 「dc_template_01_winered_ep3.epub」ファイルの拡張子epubをzipに変えて、各ファイルを解凍します。ここでは例として、Cドライブの「ebook」フォルダに「dc_template_01_winered.epub」ファイルを置き、ここに「files」フォルダを作ってその中に解凍するものとします。ファイル構成は以下のようになります。
            C:.
            └─ebook
                │  dc_template_01_winered_ep3.epub
                │
                └─files
                    │  mimetype
                    │
                    ├─META-INF
                    │      container.xml
                    │
                    └─OEBPS
                        │  content.opf ---- Package Document
                        │  toc.ncx -------- EPUB2ナビゲーション用
                        │
                        ├─Images(画像)
                        │      cover_01.jpg -------- 表紙
                        │      cover_02.jpg -------- 裏表紙
                        │      deco_l.png ------- 扉ページワンポイント(大)
                        │      deco_s.png ------- 奥付ページワンポイント(小)
                        │      old_paper.jpg ------- 挿絵
                        │      ornament_l.png ------ 扉/奥付ページ共用ライン(下)
                        │      ornament_u.png ------ 扉/奥付ページ共用ライン(上)
                        │
                        ├─Styles(スタイルシート)
                        │      ebook_fix_style.css ------- 固定レイアウト用
                        │      ebook_horizontal.css ------ 横書き表示用
                        │      ebook_style.css ----------- 縦書き/横書き表示共用
                        │      ebook_vertical.css -------- 縦書き表示用
                        │
                        └─Text(本文ページ/ページ順)
                                cover.xhtml -------------- 表紙
                                titlepage.xhtml ---------- 扉
                                dedication.xhtml --------- 献辞
                                navigation.xhtml --------- 目次
                                illustration.xhtml ------- 挿絵
                                characters.xhtml --------- 登場人物
                                preface.xhtml ------------ まえがき
                                prologue.xhtml ----------- プロローグ
                                chapter001.xhtml --------- 第一章
                                section001.xhtml ---------   第一節
                                section002.xhtml ---------   第二節
                                epilogue.xhtml ----------- エピローグ
                                afterword.xhtml ---------- あとがき
                                colophon.xhtml ----------- 奥付
                                backcover.xhtml ---------- 裏表紙
                                toc.xhtml ---------------- ナビゲーション用
        
  • なお、以下の解説で枠内に表示されているコードは、基本的に枠内をダブルクリックするとすべて選択状態となり、そのままコピーできます。

2. 本文ページを整理する

  • 『Adobe Digital Editions』を起動して「dc_template_01_winered_ep3.epub」ファイルをドラッグして開き、それぞれのページがどのように表示されているかを確認しておきます。
a. 不要なページを削除する
  • 「Text」フォルダ内にあるxhtmlファイルのうち、「献辞」「挿絵」「登場人物」「まえがき」など、使用しないページのファイルを削除します。「裏表紙」も不要であれば削除し、第一章第二節のダミーページ「section002.xhtml」も削除します。ただし、「献辞」ページは「謝辞」や「引用」等、「挿絵」は「口絵」等にも応用できるので、それらのページを作成するのであれば該当ページはとりあえず残しておいてください。また、ページを増やす作業は後の解説で行います。
b. 各ファイルの書籍名を差し替える
  • それぞれのxhtmlファイルにはタイトルとして書籍名が入っています。各ファイルをエディタで開き、9行目にある<title>〜</title>の書籍名をご自分の書籍名に差し替えます。これを「Text」フォルダに入っているすべてのxhtmlファイルに対して行います。以下は「まえがき」ページ(preface.xhtml)の例です。なお、この部分は「まえがき」「プロローグ」といった各ページのタイトルまでいちいち入れなければならないという決まりはないので、面倒であれば書籍名だけでかまいません。ここでは例として、「EPUB3版テンプレートの使い方」という書籍名に変更しています。
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE html>
          <html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xml:lang="ja">
            <head>
              <meta charset="UTF-8" />
              <link href="../Styles/ebook_style.css" rel="stylesheet" type="text/css" />
              <link class="vertical" href="../Styles/ebook_vertical.css" rel="stylesheet" title="縦組" type="text/css" />
              <link class="horizontal" href="../Styles/ebook_horizontal.css" rel="alternate stylesheet" title="横組" type="text/css" />
            <title>銀色の獅子〈1〉- まえがき</title>
          </head>
        
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE html>
          <html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xml:lang="ja">
            <head>
              <meta charset="UTF-8" />
              <link href="../Styles/ebook_style.css" rel="stylesheet" type="text/css" />
              <link class="vertical" href="../Styles/ebook_vertical.css" rel="stylesheet" title="縦組" type="text/css" />
              <link class="horizontal" href="../Styles/ebook_horizontal.css" rel="alternate stylesheet" title="横組" type="text/css" />
            <title>EPUB3版テンプレートの使い方</title>
          </head>
        
c. 前付/後付の各ページの情報を差し替える
  • 「Text」フォルダ内の各xhtmlファイルに入っている、前付(まえづけ)/後付(あとづけ)の各ページをそれぞれ差し替えます。以下が差し替えるファイルと差し替える箇所の例です。メインの本文やこれ以外のファイルについては後で作業しますのでそのままにしておきます。また、「目次」も後でまとめて作り直します。
〈cover.xhtml - 表紙ページ〉
  • 書籍名の部分のみ差し替えます。
            <div>
              <img alt="銀色の獅子〈1〉:表紙" class="cover_img" src="../Images/cover_01.jpg" />
            </div>
        
            <div>
              <img alt="EPUB3版テンプレートの使い方:表紙" class="cover_img" src="../Images/cover_01.jpg" />
            </div>
        
〈titlepage.xhtml - 扉ページ〉
  • 書籍名、副題、著者名を差し替えます。一行が長い場合は適当な箇所で<br />で改行し、副題がない時は以下の差し替え後のように副題部分を削除します。
          <div class="ornament_align_t">
            <img alt="画像:オーナメント" src="../Images/ornament_u.png" /><br />
            <p class="title">銀色の獅子〈1〉</p>
            <p class="fukudai">−完全版−</p>
            <img alt="画像:オーナメント" src="../Images/deco_l.png" /><br />
            <p class="author">Dark Currant</p>
            <img alt="画像:オーナメント" src="../Images/ornament_l.png" />
          </div>
        
          <div class="ornament_align_t">
            <img alt="画像:オーナメント" src="../Images/ornament_u.png" /><br />
            <p class="title">EPUB3版テンプレートの使い方</p>
            <p class="fukudai"></p>
            <img alt="画像:オーナメント" src="../Images/deco_l.png" /><br />
            <p class="author">騨亜九 加蘭戸(著者)<br />
              Dark Currant(原作者)</p>
            <img alt="画像:オーナメント" src="../Images/ornament_l.png" />
          </div>
        
〈dedication.xhtml - 献辞ページ〉
  • 基本的に文章を<p>〜</p>の間に入れ、<br />で改行します。
          <div class="dedication">
            <p>
              執筆の時間を与えてくれた家族と、<br />
              この小説を書き始めてから虹の橋へ旅立った三匹と、<br />
              今もそばで和ませてくれている五匹の猫たちへ
            </p>
          </div>
        
          <div class="dedication">
            <p>
              すべての本好きへ捧ぐ
            </p>
          </div>
        
〈characters.xhtml - 登場人物ページ〉
  • 基本的に名前と説明を差し替えるだけです。グループ分けしない時は以下の「差し替え後」の例を参照してください。
            <div class="characters">
              <ul>
                <li>デルフィンデル王国
                  <ul>
                    <li>ガーランド……国王/先王オデイルの第一子</li>
                    <li>エレンディア……ガーランドの妃</li>
                             ------------
        
            <div class="characters_no_mark">
              <ul>
                <li>登場人物A……本編の主人公</li>
                <li>登場人物B……主人公の妻</li>
                <li>登場人物C……主人公の父</li>
                             ------------
        
〈preface.xhtml - まえがきページ〉
  • 基本的に文章を<p>〜</p>の間に入れ、<br />で改行します。
          <div class="preface">
            <p>
              聖レヴェリオスよ<br />
              我等が神、我等がすべての戦いを司る神よ<br />
              あなたの御名において、我はここに誓う<br />
              あなたの御心に従い、決してあなたの御名を汚さぬことを
            </p>
            <p><br /></p>
            <p class="signature_2em">
              ――神書による〈剣の誓い〉の言葉より
            </p>
          </div>
        
          <div class="preface">
            <p>
              テンプレートの例では最後に引用元が入っています<br />
              引用元は下揃えで後ろ二文字空きになります<br />
              横書き表示の場合は右揃えで右二文字空きです。<br />
              引用元等がない場合はこのようになります
            </p>
          </div>
        
〈colophon.xhtml - 奥付ページ〉
  • 「書籍情報」「副題」「著者名」「著作権情報」「発行日」「制作社(制作者)」「制作社情報(制作者情報)」を入れ替えます。「著者」などの項目の後で段落したい場合、または一行が長い場合は適当な箇所で<br />で改行し、副題がない時は以下の差し替え後のように副題部分を削除します。
          <div class="ornament_align_c">
            <img alt="画像:オーナメント" src="../Images/ornament_u.png" /><br />
            <p class="col_title">銀色の獅子〈1〉</p>
            <p class="col_fukudai">−完全版−<br />
              [template edition 1]</p>
            <img alt="画像:オーナメント" src="../Images/deco_s.png" /><br />
            <p>著者 Dark Currant</p>
            <p class="col_rights">© 2013 Dark Currant. All Rights Reserved.</p>
            <p>発行日 2013年4月29日 初版</p>
            <p>EPUB版制作/発行</p>
            <p>『Dark Currant's Novels Site』</p>
            <p><a href="http://www.darkcurrant.com/">http://www.darkcurrant.com/</a></p>
            <img alt="画像:オーナメント" src="../Images/ornament_l.png" />
          </div>
        
          <div class="ornament_align_c">
            <img alt="画像:オーナメント" src="../Images/ornament_u.png" /><br />
            <p class="col_title">EPUB3版テンプレートの使い方</p>
            <p class="col_fukudai"></p>
            <img alt="画像:オーナメント" src="../Images/deco_s.png" /><br />
            <p>著者<br />
              騨亜九 加蘭戸</p>
            <p class="col_rights">© 2013 hogehoge DC. All Rights Reserved.</p>
            <p>発行日 2013年5月25日 初版</p>
            <p>EPUB版制作/発行</p>
            <p>騨亜九 加蘭戸社</p>
            <p><a href="http://www.hogehoge_dc.com/">東京都騨亜区加蘭戸町1-1-1</a></p>
            <img alt="画像:オーナメント" src="../Images/ornament_l.png" />
          </div>
        
〈afterword.xhtml - あとがきページ〉
  • 基本的に文章を<p>〜</p>の間に入れ、<br />で改行していきます。このテンプレートでは「あとがき」ページにコーディング例が載っていますが、その部分はすべて削除し内容をご自分のものに差し替えます。文章が長い場合は、次の『2-d. 本文を整形する』で文章を整形してから入れてください。
〈その他の前付/後付ページ〉
  • 前付/後付ページには他に以下のような種類があります。いずれも「献辞」「まえがき」「挿絵」ページの体裁を応用できるので、該当ファイルをコピーし、別名を付けて必要ページを作成してから、これまでと同じ要領で内容を入れ替えてください。
  • 「(巻頭や本文の前に入れる)口絵(frontispiece)」
    「(本文中に入れる)挿絵(illustration)」
    「(著者以外による)前書き(foreword)」
    「(著者による)前書き(preface)」
    「献辞(dedication)」
    「謝辞(acknowledgement)」
    「引用(epigraph)」
d. 本文を整形する
  • まず、ご自分で使用する本文が入ったファイルをエディタで開き、テンプレートの本文ファイルの内容を参考にしながら整形します。本文は一段落ごとに「<p>〜</p>」で囲み、一行空きには「<p><br /></p>」を入れていきます。エディタの置換機能を利用して一括で変換することをお勧めします。下の例では2、4、6行に空の段落が入っていますが、これは見やすくするための見かけ上の段落なので入れても入れなくても仕上がりには影響しません。また、本文を一から作成する場合も同様の体裁で入力してください。
          <p> デルフィンデル王国で行われる剣闘大会は、アスティニアでは最も人気のある行事のひとつだった。</p>

          <p> 希望すれば誰でも参加を許される。それは国の内外を問わず広く優秀な人材を集めようとするガーランド王の意向の表れでもあった。</p>

          <p><br /></p>

          <p> この剣闘大会での規則はただひとつ、相手を殺さぬこと――ただそれのみだった。剣闘大会でその腕を認められれば傭兵として高額で雇われることも可能である。</p>
        
  • または、『Sigil』の自動整形機能を利用してコピーする方法もあります。『EPUB2版テンプレートの使い方』ページの『06-b. 第一節ページを編集する』の項目を参照してください。本文中のルビや傍点、アンダーライン、字下げ等のコーディングに関しては、あとがきページ「afterword.xhtml」にまとめて解説してあります。
e. 本文ファイルを編集する
  • 本文の整形がすべて終わったら、まず章のタイトルを変更します。エディタで第一章ページ「chapter001.xhtml」ファイルを開き、第一章または第一章に相当するタイトルをご自分のものに差し替えます。ここでは例として、「その一」という章のタイトルに変更しています。
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE html>
          <html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xml:lang="ja">
            <head>
              <meta charset="UTF-8" />
              <link href="../Styles/ebook_style.css" rel="stylesheet" type="text/css" />
              <link class="vertical" href="../Styles/ebook_vertical.css" rel="stylesheet" title="縦組" type="text/css" />
              <link class="horizontal" href="../Styles/ebook_horizontal.css" rel="alternate stylesheet" title="横組" type="text/css" />
              <title>EPUB3版テンプレートの使い方</title>
            </head>
            <body id="text">
              <section epub:type="chapter">

                <h2 class="chapter" id="mark_100">その一</h2>

              </section>>
            </body>
          </html>
        
  • 次に本文用のxhtmlファイルを用意します。まず、エディタで「section001.xhtml」ファイルを開き、第一節または第一節に相当するタイトルをご自分のものに差し替えてから、ダミーの本文をすべて削除して一度上書き保存します。このファイルを元に第一章分のファイルを必要な数だけコピーし、ファイル名を「section002.xhtml」「section003.xhtml」「section004.xhtml」……と揃えていきます。次に第二章が続く場合はもうひとつ多くファイルをコピーし、第二章用本文のコピー元として残しておきます。下の例では、第一節のタイトルを「ファイルの解凍」としています。
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE html>
          <html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xml:lang="ja">
            <head>
              <meta charset="UTF-8" />
              <link href="../Styles/ebook_style.css" rel="stylesheet" type="text/css" />
              <link class="vertical" href="../Styles/ebook_vertical.css" rel="stylesheet" title="縦組" type="text/css" />
              <link class="horizontal" href="../Styles/ebook_horizontal.css" rel="alternate stylesheet" title="横組" type="text/css" />
              <title>EPUB3版テンプレートの使い方</title>
            </head>
            <body id="text">
              <section epub:type="bodymatter">

                <h3 class="section" id="mark_101">ファイルの解凍</h3>

                       〜〜 この間のダミー本文を削除する 〜〜

              </section>
            </body>
          </html>
        
  • 再度「section001.xhtml」ファイルをエディタで開き、ご自分の第一章第一節分に相当する本文をコピーして、上の「〜〜 この間のダミー本文を削除する 〜〜」部分にペーストしてから保存します。
  • 次に「section002.xhtml」を開きます。「section001.xhtml」と同様に第二節または第二節分に相当するタイトルを変更し、本文をコピー&ペーストしますが、今度は見出し用のアンカー名(「id="xxxxx"」の「xxxxx」部分)も変更します。アンカー名は必ずしも連番になっている必要はなく、半角英数字であれば自由に付けられますが、ひとつのファイルの中で同じアンカー名を違う箇所に指定しないようにします。
              <body id="text">
                <section epub:type="bodymatter">

                  <h3 class="section" id="mark_102">ファイルの編集</h3>

                  <p> アンカー名は必ずしも連番になっている必要はなく、半角英数字であれば自由に付けられます。</p>

              </section>
            </body>
          </html>
        
  • 同様にして、第二章分、第三章分……と必要なファイルを作成していきます。また、「プロローグ」「エピローグ」ページも本文と同様の作業で文章を入れ替えます。ページの構成をすべて整えた後で、それに合わせて見出しとアンカー名も揃えます。
  • このテンプレートの例では見出し用のアンカー名が以下のようなナンバリングになっています。「プロローグ」と「エピローグ」ページはメインの本文の一部として扱っていますが、ナンバリングの便宜上、ここでは第一章から「id="mark_x00"」のように番号を振っています。ご自分の書籍の内容に合わせて増減、または変更してください。
            id="mark_001"〜 本文より前にあるページ
            id="mark_100" 本文の第一章
              id="mark_101"、"mark_102"、"mark_103"〜 第一節、第二節、第三節〜
            id="mark_200" 本文の第二章
              id="mark_201"、"mark_202"、"mark_203"〜 第一節、第二節、第三節〜
                    ------------
            id="mark_900"〜 本文より後にあるページ
          

3. 画像ファイルを差し替える

  • 必要であれば、表紙、扉、奥付ページに使用している画像ファイルをご自分のものに差し替えます。ファイル名を同じにしておけば天地左右のサイズが違っても記述を書き換える必要はなく、差し替えるだけでOKです。挿絵用のサンプル画像「old_paper.jpg」は差し替えるか削除し、本文中に使用する画像があればそのファイルもすべて「Images」フォルダにコピーします。
  • ただし、裏表紙だけは固定レイアウトを使用してサイズをファイル内に記述しているため、天地左右のサイズが違う裏表紙に差し替える場合はファイル内の数値も変更する必要があります。その場合は「backcover.xhtml」ファイルの以下の行の天地左右サイズを三箇所、ご自分の使用する画像サイズの数値に変更してください。以下は裏表紙に1128×1692ピクセルの画像ファイルを使用した例です。
          <?xml version="1.0" encoding="utf-8"?>
          <!DOCTYPE html>
          <html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xml:lang="ja">
            <head>
              <meta charset="UTF-8" />
              <meta name="viewport" content="width=1128, height=1692" />
              <link href="../Styles/ebook_fix_style.css" rel="stylesheet" type="text/css" />
              <title>EPUB3版テンプレートの使い方</title>
            </head>
            <body>
              <section epub:type="backmatter">

                <div id="mark_902">
                  <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="100%" height="100%" viewBox="0 0 1128 1692">
                    <image width="1128" height="1692" xlink:href="../Images/cover_02.jpg"/>
                  </svg>
                </div>

              </section>
            </body>
          </html>
        

4. 目次ファイル「navigation.xhtml」を編集する

  • 書籍の一部として表示させるこの目次ページは不要であれば削除することもできます。削除した場合はこの項目は飛ばしてください。
  • まず、目次をどのように表示させるかを決めます。『Adobe Digital Editions』上で目次ページ「navigation.xhtml」を確認すると、目次の各項目の上に黒丸や白丸、あるいは数字を付けたり、何も付けないといった6パターンの例を載せているので、それを参考にしながら好みのパターンを一つのみ残し、他の5パターンは削除します。また、「<h5>〜</h5>」で囲まれた説明文も削除します。
  • 黒丸・白丸・黒四角のマークは指定するだけで自動的に付きますが、各項目の上に連番で数字を付ける機能は縦書き表示には対応していないので、数字を付けたい場合は手動でひとつひとつ入れていく必要があります。
  • なお、組み合わせは、<ol class="mark_xxxx">の「xxxx」部分を以下のように変更することで入れ替えられますが、マークが自動的に入るものと入らないものの組み合わせを選ぶと見かけ上の字下げ文字数が少なくなることがあるので、気になる場合は直接cssを編集して好みの形にしてください。
  • mark_disk……黒丸
    mark_circle……白丸
    mark_square……黒四角
    mark_none……マークなし
  • 次に表示させる項目を決めます。「navigation.xhtml」は書籍中で目次ページとして内容が表示されるファイルなので、目次ページの中に「目次」自体の項目は含めません。「navigation.xhtml」ファイルをエディタで開き、17行目以下の項目を編集して、表示させたいページのみリストに載せます。また、ファイル名にはアンカー名(“#”以下の半角英数字)を併記します。以下は「Text」フォルダの中のファイル(再生順)と、「navigation.xhtml」の記述例です。この例では「表紙」と「裏表紙」を含めていませんが、お好みで入れてください。
         └─Text(本文ページ/ページ順)
                 cover.xhtml -------------- 表紙
                 titlepage.xhtml ---------- 扉
                 navigation.xhtml --------- 目次(※このファイル)
                 prologue.xhtml ----------- プロローグ
                 chapter001.xhtml --------- 第一章
                 section001.xhtml ---------   第一節
                 section002.xhtml ---------  第二節
                 section003.xhtml ---------   第三節
                 section004.xhtml ---------   第四節
                 chapter002.xhtml --------- 第二章
                 section005.xhtml ---------   第一節
                 section006.xhtml ---------   第二節
                 afterword.xhtml ---------- あとがき
                 colophon.xhtml ----------- 奥付
                 backcover.xhtml ---------- 裏表紙
                 toc.xhtml ---------------- ナビゲーション用(※表示させない)
        
            <body id="toc">
              <section epub:type="toc">

                <h2 class="section" id="mark_003">目次</h2>

                <div class="navigation">
                  <ol class="mark_disk">
                    <li><a href="../Text/titlepage.xhtml#mark_001">扉</a></li>
                    <li><a href="../Text/prologue.xhtml#mark_007">プロローグ</a></li>
                    <li>
                      <a href="../Text/chapter001.xhtml#mark_100">その一</a>
                      <ol class="mark_circle">
                        <li><a href="../Text/section001.xhtml#mark_101">ファイルの解凍</a></li>
                        <li><a href="../Text/section002.xhtml#mark_102">ファイルの編集</a></li>
                        <li><a href="../Text/section003.xhtml#mark_103">ファイルの削除</a></li>
                        <li><a href="../Text/section004.xhtml#mark_104">ファイルの追加</a></li>
                      </ol>
                    </li>
                    <li>
                      <a href="../Text/chapter002.xhtml#mark_200">その二</a>
                      <ol class="mark_circle">
                        <li><a href="../Text/section005.xhtml#mark_201">目次ファイルの編集</a></li>
                        <li><a href="../Text/section006.xhtml#mark_202">ファイルの圧縮</a></li>
                      </ol>
                    </li>
                    <li><a href="../Text/afterword.xhtml#mark_900">あとがき</a></li>
                    <li><a href="../Text/colophon.xhtml#mark_901">奥付</a></li>
                  </ol>
                </div>

              </section>
            </body>
          </html>
        

5. ナビゲーション用ファイル「toc.xhtml」を編集する

  • 「toc.xhtml」はEPUB3で移動メニューなどから使用されるナビゲーション用のファイルで、書籍中に表示する目次ページ「navigation.xhtml」が不要な場合でも、「toc.xhtml」は必ず作成する必要があります。また、見栄えや簡略化といった理由から「navigation.xhtml」では表示させなかった項目(ページ)もここには省略せずにすべて記述します。
  • 「toc.xhtml」自体を書籍中に目次ページとして表示することもできますが、説明が煩雑になるため、ここでは「toc.xhtml」をナビゲーション専用に使用するものとして解説します。
a. 「目次」部分を編集する
  • まず、目次の部分を編集します。基本的な形式は「navigation.xhtml」の項目とほぼ同じなので、最初に「navigation.xhtml」の編集を行っている場合は、「navigation.xhtml」の「<ol class="mark_xxxx">〜</ol>」ではさまれた部分(4の例では18〜37行目の部分)を丸ごとコピーし、「<h2>目次</h2>」以下の「<ol>〜</ol>」内に貼り付けます。これに「目次」の項目を一行追加し、「<ol class="mark_xxxx">」の部分をすべて「<ol>」のみにします。
  • 以下は「扉」項目と「プロローグ」項目との間に「目次」ページの項目を追加し、さらに5の編集で「navigation.xhtml」には含めていない「表紙」と「裏表紙」の項目を追加した例です。
  • ただし、最終出力形態がKindle版(mobiファイル)の場合、「toc.ncx」ファイル及び「toc.xhtml」ファイルの「目次」内に「表紙ページ」を含めないでください。mobiファイル変換ツール『KindleGen』がv2.8よりEPUB3用ナビゲーションドキュメントに対応したのに伴い、「表紙」の扱いが変わりました。「toc.ncx」ファイル及び「toc.xhtml」ファイルの「目次」内に「表紙ページ」へのリンクが含まれているとエラーのためmobiファイルが作成されません。
              <nav epub:type="toc" id="toc">
                <h2>目次</h2>
                <ol>
                  <li><a href="../Text/cover.xhtml">表紙</a></li>
                  <li><a href="../Text/titlepage.xhtml#mark_001">扉</a></li>
                  <li><a href="../Text/navigation.xhtml#mark_003">目次</a></li>
                  <li><a href="../Text/prologue.xhtml#mark_007">プロローグ</a></li>
                  <li>
                    <a href="../Text/chapter001.xhtml#mark_100">その一</a>
                    <ol>
                      <li><a href="../Text/section001.xhtml#mark_101">ファイルの解凍</a></li>
                      <li><a href="../Text/section002.xhtml#mark_102">ファイルの編集</a></li>
                      <li><a href="../Text/section003.xhtml#mark_103">ファイルの削除</a></li>
                      <li><a href="../Text/section004.xhtml#mark_104">ファイルの追加</a></li>
                    </ol>
                  </li>
                  <li>
                    <a href="../Text/chapter001.xhtml#mark_200">その二</a>
                    <ol>
                      <li><a href="../Text/section005.xhtml#mark_201">目次ファイルの編集</a></li>
                      <li><a href="../Text/section006.xhtml#mark_202">ファイルの圧縮</a></li>
                    </ol>
                  </li>
                  <li><a href="../Text/afterword.xhtml#mark_900">あとがき</a></li>
                  <li><a href="../Text/colophon.xhtml#mark_901">奥付</a></li>
                  <li><a href="../Text/backcover.xhtml#mark_902">裏表紙</a></li>
                </ol>
              </nav>
        
b. 「ガイド」部分を編集する
  • ガイド(ランドマーク)はEPUB3で参照される部分です。「content.opf」ファイル内の「guide>〜</guide>」に記述されているものと機能的には同じですが、ランドマーク内で記述されている時は、「content.opf」ファイル内のガイドに記述されている同指定は無視されることがあります。
  • 「toc.xhtml」ファイルの「<h2>ガイド</h2>」以下の内容を必要に応じて書き換えます。「本文」に相当するページは「content.opf」ファイル内の「<guide>〜</guide>」に指定したものと同じページを指定します。
  • このテンプレートの例では、「表紙」「目次」「扉」「本文」の最低限のページのみ指定していますが、他にも"dedication"(献辞)、"preface"(まえがき)といった指定もできます。「epub:type」に指定できるその他の値については、『EPUB 3 Structural Semantics Vocabulary(日本語訳版)』を参照してください。
  • 以下は「本文」に相当するページに第一章のページ「chapter001.xhtml」を指定した例です(行数表示はオリジナル時のものです)。
          <nav epub:type="landmarks" id="landmarks">
            <h2>ガイド</h2>
            <ol>
              <li><a epub:type="cover" href="../Text/cover.xhtml">表紙</a></li>
              <li><a epub:type="toc" href="../Text/navigation.xhtml#mark_003">目次</a></li>
              <li><a epub:type="titlepage" href="../Text/titlepage.xhtml#mark_001">扉</a></li>
              <li><a epub:type="bodymatter" href="../Text/chapter001.xhtml#mark_100">本文</a></li>
            </ol>
          </nav>
        

6. 「content.opf」ファイルを編集する

  • すべての必要なファイルが整ったら、その内容に合わせて「content.opf」ファイルの記述を変更します。
a. UUIDを変更する
  • 「content.opf」ファイル内のUUID(Unique User ID) を変更します。UUIDはその書籍固有の識別子で、ここでは『Sigil』を利用してUUIDを自動生成します。
  • 『Sigil』を起動し、左の「Book Browser」にツリー表示されているファイルから「content.opf」をダブルクリックしてコードを表示させ、UUID をコピーしておきます。UUIDは「新規作成」する度に違うものが自動的に生成されます。以下の例では「f8ede0d6-7f20-41c5-a191-39162b4eaa83」がUUIDとなります。
          <?xml version="1.0" encoding="utf-8" standalone="yes"?>
          <package xmlns="http://www.idpf.org/2007/opf" unique-identifier="BookId" version="2.0">
            <metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:opf="http://www.idpf.org/2007/opf">
              <dc:identifier id="BookId" opf:scheme="UUID">urn:uuid:f8ede0d6-7f20-41c5-a191-39162b4eaa83</dc:identifier>
            </metadata>
            <manifest>
              <item href="toc.ncx" id="ncx" media-type="application/x-dtbncx+xml" />
              <item href="Text/Section0001.xhtml" id="Section0001.xhtml" media-type="application/xhtml+xml" />
            </manifest>
            <spine toc="ncx">
              <itemref idref="Section0001.xhtml" />
            </spine>
            <guide />
          </package>
        
  • 「dc_template_01_winered_ep3.epub」を解凍してできた「content.opf」ファイルをエディタで開き、5行目のUUID「cc9fce31-939f-41be-85ec-8d2d651a836」を先ほどコピーしておいたUUID(例では「f8ede0d6-7f20-41c5-a191-39162b4eaa83」)と差し替えます。複数の書籍を制作する場合は、書籍ごとに違うUUIDを付けてください。
          <?xml version="1.0" encoding="utf-8"?>
          <package xmlns="http://www.idpf.org/2007/opf" prefix="rendition: http://www.idpf.org/vocab/rendition/#" unique-identifier="BookID" version="3.0" xml:lang="ja">
            <metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
          <!-- unique identifier -->
              <dc:identifier id="BookID">urn:uuid:f8ede0d6-7f20-41c5-a191-39162b4eaa83</dc:identifier>
              <meta refines="#BookID" property="identifier-type">uuid</meta>
        
b. 書籍情報を編集する
  • 「content.opf」ファイルの8行目の「書籍名」、12行目の「著者名」、15行目の「書籍内容」、17行目の「ジャンル」、19行目の「出版社」、21行目の「著作権情報」、23行目の「発行日」、25行目の「更新日」(ファイルの最終更新日)の書籍情報をご自分のものに変更します。
          <?xml version="1.0" encoding="utf-8"?>
          <package xmlns="http://www.idpf.org/2007/opf" prefix="rendition: http://www.idpf.org/vocab/rendition/#" unique-identifier="BookID" version="3.0" xml:lang="ja">
            <metadata xmlns:dc="http://purl.org/dc/elements/1.1/">
          <!-- unique identifier -->
              <dc:identifier id="BookID">urn:uuid:f8ede0d6-7f20-41c5-a191-39162b4eaa83d</dc:identifier>
              <meta refines="#BookID" property="identifier-type">uuid</meta>
          <!-- title -->
              <dc:title id="title0">銀色の獅子 -完全版-〈1〉 [template 1]</dc:title>
          <!-- language -->
              <dc:language id="language0">ja</dc:language>
          <!-- creator -->
              <dc:creator id="creator0">Dark Currant</dc:creator>
              <meta refines="#creator0" property="role">aut</meta>
          <!-- description -->
              <dc:description id="description0">アスティニア三国の緩衝地帯ともいうべきファルナハトを支配する盗賊の首領、銀の獅子。復讐を糧として生き延びた彼は、死刑執行人の異名を受け、己が望まぬままに多くの血を流し続ける。彼が行き着く先は死か、狂気か、それとも――。中世時代のヨーロッパを模した架空の王国を舞台とした長編ファンタジー「銀色の獅子」。本編 プロローグ+第一章〔完全版〕+web未公開掌編 二編</dc:description>
          <!-- category -->
              <dc:type id="type0">ファンタジー</dc:type>
          <!-- publisher -->
              <dc:publisher id="publisher0">Dark Currant's Novels Site</dc:publisher>
          <!-- rights -->
              <dc:rights id="rights0">Copyright 2013 Dark Currant. All Rights Reserved.</dc:rights>
          <!-- date -->
              <dc:date>2013-04-29T00:00:00Z</dc:date>
          <!-- modified -->
              <meta property="dcterms:modified">2013-04-28T00:00:00Z</meta>
          <!-- meta for the cover -->
              <meta name="cover" content="cover_01.jpg" />
          <!-- fixed-layout options -->
              <meta property="rendition:layout">reflowable</meta>
              <meta property="rendition:spread">none</meta>
            </metadata>
        
c. <manifest>〜</manifest>内のxhtmlファイル情報を編集する
  • 「content.opf」ファイルの32行目以下の、<manifest>〜</manifest>内を編集します。39行目の「<!-- xhtml -->」以下にあるファイルリストの内容を「Text」フォルダの中にあるxhtmlファイルの内容に合わせて追加、削除します。以下はファイルを整理した後の「Text」フォルダの中のファイルと、それに合わせて増減した「content.opf」内のxhtmlファイルリストの例です。なお、<manifest>〜</manifest>内で記述するファイルの並び順は順不同でかまいません。また、裏表紙ページ「backcover.xhtml」とナビゲーション用ファイル「toc.xhtml」は記述が他と違うので注意してください。
          └─Text(本文ページ/ページ順)
                  cover.xhtml -------------- 表紙
                  titlepage.xhtml ---------- 扉
                  navigation.xhtml --------- 目次
                  prologue.xhtml ----------- プロローグ
                  chapter001.xhtml --------- 第一章
                  section001.xhtml ---------   第一節
                  section002.xhtml ---------   第二節
                  section003.xhtml ---------   第三節
                  section004.xhtml ---------   第四節
                  chapter002.xhtml --------- 第二章
                  section005.xhtml ---------   第一節
                  section006.xhtml ---------   第二節
                  afterword.xhtml ---------- あとがき
                  colophon.xhtml ----------- 奥付
                  backcover.xhtml ---------- 裏表紙
                  toc.xhtml ---------------- ナビゲーション用
        
            <manifest>
          <!-- navigation -->
              <item href="toc.ncx" id="ncx" media-type="application/x-dtbncx+xml" />
              <item href="Text/toc.xhtml" id="nav" media-type="application/xhtml+xml" properties="nav" />
          <!-- xhtml -->
              <item href="Text/cover.xhtml" id="cover.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/titlepage.xhtml" id="titlepage.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/navigation.xhtml" id="navigation.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/prologue.xhtml" id="prologue.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/chapter001.xhtml" id="chapter001.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/section001.xhtml" id="section001.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/section002.xhtml" id="section002.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/section003.xhtml" id="section003.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/section004.xhtml" id="section004.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/chapter002.xhtml" id="chapter002.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/section005.xhtml" id="section005.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/section006.xhtml" id="section006.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/afterword.xhtml" id="afterword.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/colophon.xhtml" id="colophon.xhtml" media-type="application/xhtml+xml" />
              <item href="Text/backcover.xhtml" id="backcover.xhtml" properties="svg" media-type="application/xhtml+xml" />
        
d. <manifest>〜</manifest>内の画像ファイル情報を編集する
  • xhtmlファイルと同様に、「content.opf」ファイルの57行目にある「<!-- images -->」以下(行数表示はオリジナル時のもので編集内容により変わります)にあるファイルリストの内容を「Images」フォルダの中にある画像ファイルの内容に合わせて追加、削除します。また、ファイルタイプに合わせて各行の「media-type」も変更します。以下はファイルを整理した後の「Images」フォルダの中のファイルと、それに合わせて増減した「content.opf」内の画像ファイルリストの例です。なお、ファイルの並び順は不同でかまいません。また、表紙用画像「cover_01.jpg」のみ記述が他と違うので注意してください。
          └─Images(画像)
                  cover_01.jpg -------- 表紙
                  cover_02.jpg -------- 裏表紙
                  deco_l.png ------- 扉ページワンポイント(大)
                  deco_s.png ------- 奥付ページワンポイント(小)
                  ornament_l.png ------ 扉/奥付ページ共用ライン(下)
                  ornament_u.png ------ 扉/奥付ページ共用ライン(上)
                  photo_01.jpg ------- 挿絵1
                  photo_02.jpg ------- 挿絵2
                  mark_01.gif ------- 挿絵3
        
          <!-- images -->
              <item href="Images/cover_01.jpg" id="cover_01.jpg" media-type="image/jpeg" properties="cover-image" />
              <item href="Images/cover_02.jpg" id="cover_01.jpg" media-type="image/jpeg" />
              <item href="Images/deco_l.png" id="deco_02_l.png" media-type="image/png" />
              <item href="Images/deco_s.png" id="deco_01_s.png" media-type="image/png" />
              <item href="Images/ornament_l.png" id="ornament_l.png" media-type="image/png" />
              <item href="Images/ornament_u.png" id="ornament_u.png" media-type="image/png" />
              <item href="Images/photo_01.jpg" id="photo_01.jpg" media-type="image/jpeg" />
              <item href="Images/photo_02.jpg" id="photo_02.jpg" media-type="image/jpeg" />
              <item href="images/mark_01.gif" id="mark_01.gif" media-type="image/gif" />
            </manifest>
        
e. <spine>〜</spine>内のファイルリストを編集する
  • 「content.opf」ファイルの66行目にある「<!-- spine -->」以下(行数表示はオリジナル時のもので編集内容により変わります)にあるファイルの並び順を、実際に書籍として表示させる順番に並べます。以下は「Text」フォルダの中のファイル(再生順)と、<spine>内のファイルリストの例です。なお、ナビゲーション用ファイルの「toc.xhtml」はナビゲーションに使用するのみで書籍内のページとして表示させることはないのでリストには入れません。また、裏表紙ページ「backcover.xhtml」のみ記述が他と違うので注意してください。
          └─Text(本文ページ/ページ順)
                  cover.xhtml -------------- 表紙
                  titlepage.xhtml ---------- 扉
                  navigation.xhtml --------- 目次
                  prologue.xhtml ---------- プロローグ
                  chapter001.xhtml -------- 第一章
                  section001.xhtml --------   第一節
                  section002.xhtml --------   第二節
                  section003.xhtml --------   第三節
                  section004.xhtml --------   第四節
                  chapter002.xhtml -------- 第二章
                  section005.xhtml --------   第一節
                  section006.xhtml --------   第二節
                  afterword.xhtml --------- あとがき
                  colophon.xhtml ---------- 奥付
                  backcover.xhtml --------- 裏表紙
                  toc.xhtml --------------- ナビゲーション用
        
          <!-- spine -->
            <spine page-progression-direction="rtl" toc="ncx">
              <itemref idref="cover.xhtml" linear="yes" />
              <itemref idref="titlepage.xhtml" linear="yes" />
              <itemref idref="navigation.xhtml" linear="yes" />
              <itemref idref="prologue.xhtml" linear="yes" />
              <itemref idref="chapter001.xhtml" linear="yes" />
              <itemref idref="section001.xhtml" linear="yes" />
              <itemref idref="section002.xhtml" linear="yes" />
              <itemref idref="section003.xhtml" linear="yes" />
              <itemref idref="section004.xhtml" linear="yes" />
              <itemref idref="chapter002.xhtml" linear="yes" />
              <itemref idref="section005.xhtml" linear="yes" />
              <itemref idref="section006.xhtml" linear="yes" />
              <itemref idref="afterword.xhtml" linear="yes" />
              <itemref idref="colophon.xhtml" linear="yes" />
              <itemref idref="backcover.xhtml" linear="yes" properties="rendition:layout-pre-paginated rendition:orientation-portrait rendition:page-spread-center" />
            </spine>
        
f. <guide>〜</guide>内を編集する
  • 「content.opf」ファイルの83行目にある「<!-- guide -->」以下(行数表示はオリジナル時のもので編集内容により変わります)の内容を必要に応じて書き換えます。
  • 「text(本文)」に相当するページは「献辞」や「まえがき」といった前付(まえづけ)を除いた“本文”の最初のページ、例えば「第一章」といったページを指定します。このテンプレートの例では「プロローグ」ページを指定していますが、以下は「第一章」ページに変更した例です。
          <!-- guide -->
            <guide>
              <reference href="Text/cover.xhtml" title="表紙" type="cover" />
              <reference href="Text/titlepage.xhtml" title="扉" type="title-page" />
              <reference href="Text/navigation.xhtml" title="目次" type="toc" />
              <reference href="Text/chapter001.xhtml" title="本文" type="text" />
            </guide>
          </package>
        
  • なお、「content.opf」ファイル内のguideの記述はEPUB2用ですが、ビュアーによりまだ使用するものがあるので残しておいた方が無難です。

7. 編集したファイルをEPUBに再圧縮する

  • 再圧縮の際には、アーカイブの先頭に未圧縮のmimetypeファイルを格納するという決まりがあるため、Windowsでは『ZIP』を用いてコマンドラインから作業します。
  • Info-ZIP』のサイトから『ZIP 3.0』をダウンロードし、適当なフォルダに解凍します。ここでは例として、Cドライブの「ebook」の下に「zip」というフォルダを作成し、そこにすべてのファイルを解凍してコピーしたとします。
            C:.
            └─ebook
                │  dc_template_01_winered_ep3.epub
                │
                ├─files   ←----   編集した各ファイル用フォルダ
                │
                └─zip     ←----   圧縮ツール用フォルダ
                      Contents
                      LICENSE
                      README
                      README.CR
                      WHATSNEW
                      WHERE
                      zip.exe
                      zip.txt
                      zip30.ann
                      zipcloak.exe
                      zipcloak.txt
                      zipnote.exe
                      zipnote.txt
                      zipsplit.exe
                      zipsplit.txt
        
  • 以下のテキストを丸ごとコピーし(枠内をダブルクリックするとコピーできる状態になります)、Cドライブの「ebook」の下に「makeepub.bat」という名前のファイルを作成してペーストし、保存します。ファイルの保存場所が例と違う場合はご自分の環境に合わせてパスを書き換えますが、パスが何だかよくわからないという方は例と同じフォルダとファイルの構成にしておけば後は何もいじる必要はありません。
          cd files
          c:\ebook\zip\zip -0 -X ..\sample.epub mimetype
          c:\ebook\zip\zip -r ..\sample.epub * -x mimetype
          cd ..
        
  • 「makeepub.bat」ファイルをダブルクリックして実行すると、「ebook」フォルダ内に「sample.epub」というファイルが作成されます。これが圧縮されたEPUB3ファイルです。このファイルは「makeepub.bat」ファイルを実行する度に上書きされてしまうので、必要な場合は名前を変えて保存しておきます。
            C:.
            └─ebook
                │  dc_template_01_winered_ep3.epub
                │  makeepub.bat   ←----   epub作成用バッチファイル
                │  sample.epub    ←----   作成されたEPUB3ファイル
                │
                ├─files      ←----   編集した各ファイル用フォルダ
                │
                └─zip        ←----   圧縮ツール用フォルダ
        

8. ナビゲーション用ファイル「toc.ncx」を作成する(EPUB2互換用)

  • 「toc.ncx」はEPUB2で移動メニューなどから使用されるナビゲーション用のファイルで、表示させる項目は「toc.xhtml」と同じにしますが、「toc.xhtml」とは記述が異なります。「toc.ncx」のファイルを開いて項目をひとつづつコピーしながら入れ替えていくか、『Sigil』の目次作成機能を利用して自動で項目を記述させ、後からアンカー名(“#”以下の半角英数字)のみ手動で追加していくという二通りの方法があります。どちらもそれなりに面倒なので、お好きな方法で編集してください。
  • ここでは『Sigil』の目次作成機能を使用して作成する方法を解説します。これまで編集したファイルを一度EPUBに再圧縮して「sample.epub」を作成し、『Sigil』で開いて作業しますが、現バージョンの『Sigil』ではEPUB2の形式で保存されてしまうため、ここで制作したものは一時的に使用するのみで編集が終わったら破棄します。
  • なお、『Sigil』では、「Book View」アイコン「Book View」(簡易ビュアー表示)と「Code View」アイコン「Code View」(コード表示)と切り替えられます。コードを編集する際には「Code View」(コード表示)で行ってください。
a. ファイルの仮編集をする
  • 7. 編集したファイルをEPUBに再圧縮する』で作成した「sample.epub」ファイルを『Sigil』で開き、表紙と裏表紙ページを見出しの項目に表示させるために仮編集します。左の「Book Browser」にツリー表示されている表紙ページ「cover.xhtml」をダブルクリックしてコードを表示させ、11行目を以下の通りに差し替えます。エディタで開いた時とは行数表示が違うので注意してください。
          <div>
        
          <div>
            <h2 class="no-optical">表紙</h2>
          </div>
          <div>
        
  • 次に裏表紙ページ「backcover.xhtml」を表示させ、11行目を以下の通りに差し替えます。
              <div id="mark_902">
        
              <div id="mark_902">
                <h2 class="no-optical">裏表紙</h2>
              </div>
              <div>
        
b. 「toc.ncx」ファイルを仮作成する
  • 『Sigil』の「Generate Table of Contents」アイコンアイコンをクリック、またはメニューから「Tools」→「Table Of Contents」→「Generate Table Of Contents...」をクリックします。
  • 「Generate Table Of Contents」ウィンドウが開いたら、左下の〈Select headings to include in TOC〉をクリックして、一番下の「All」をクリック。ここにはすべてのページのすべての見出しを省略せずに含めますが、項目リストの最後にある「目次」と「リスト」の二つだけはチェックをはずして表示させないようにします。項目リストに削除したページや追加したページの見出しがすべて含まれているのを確認してから、「OK」をクリックします。
  • ただし、最終出力形態がKindle版(mobiファイル)の場合、「toc.ncx」ファイル及び「toc.xhtml」ファイルの「目次」内に「表紙ページ」を含めないでください。mobiファイル変換ツール『KindleGen』がv2.8よりEPUB3用ナビゲーションドキュメントに対応したのに伴い、「表紙」の扱いが変わりました。「toc.ncx」ファイル及び「toc.xhtml」ファイルの「目次」内に「表紙ページ」へのリンクが含まれているとエラーのためmobiファイルが作成されません。
「Generate Table Of Contents」ウィンドウ
c. 「toc.ncx」ファイルの内容をコピーする
  • 左の「Book Browser」にツリー表示されている「toc.ncx」をダブルクリックしてコードを表示させ、2行目の<head>以下を最後まですべてコピーします。次に「dc_template_01_winered_ep3.epub」を解凍してできた「toc.ncx」ファイルをエディタで開き、6行目の<head>以下を最後まで先ほどコピーしておいたものとすべて差し替えます。7行目のUUIDと13行目の<title>〜</title>内の書籍名は、「content.opf」ファイルに指定したものに自動的に差し替えられているはずなので確認してください(もし変更されていなければ手動でコピーし直します)。
  • この後、ファイル名の後ろにアンカー名(“#”以下の半角英数字)を振り直します。面倒でも、アンカー名はできるだけ併記しておくことをお勧めします。
  • 『Sigil』のウィンドウで右側に表示されている「Table of Contents」の内容が、現在作成されているナビゲーション用の目次「toc.ncx」の状態です。各項目をクリックするとリンクされている各ファイル(アンカー名が指定されていれば各アンカー名が記述されている位置)に飛ぶので、各ページへのリンクが正しくされているかを確認するのにも利用できます。
          <?xml version="1.0" encoding="UTF-8"?>
          <ncx xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/"
            xmlns="http://www.daisy.org/z3986/2005/ncx/"
            version="2005-1"
            xml:lang="ja">
            <head>
              <meta content="urn:uuid:f8ede0d6-7f20-41c5-a191-39162b4eaa83" name="dtb:uid"/>
              <meta content="2" name="dtb:depth"/>
              <meta content="0" name="dtb:totalPageCount"/>
              <meta content="0" name="dtb:maxPageNumber"/>
            </head>
            <docTitle>
              <text>EPUB3版テンプレートの使い方</text>
            </docTitle>
            <navMap>
              <navPoint id="navPoint-1" playOrder="1">
                <navLabel>
                  <text>表紙</text>
                </navLabel>
                <content src="Text/cover.xhtml" />
              </navPoint>
              <navPoint id="navPoint-2" playOrder="2">
                <navLabel>
                  <text>扉</text>
                </navLabel>
                <content src="Text/titlepage.xhtml#mark_001" />
              </navPoint>
              <navPoint id="navPoint-3" playOrder="3">
                <navLabel>
                  <text>目次</text>
                </navLabel>
                <content src="Text/navigation.xhtml#mark_003" />
              </navPoint>
              <navPoint id="navPoint-4" playOrder="4">
                <navLabel>
                  <text>まえがき</text>
                </navLabel>
                <content src="Text/preface.xhtml#mark_006" />
              </navPoint>
                           ------------
              <navPoint id="navPoint-15" playOrder="15">
                <navLabel>
                  <text>奥付</text>
                </navLabel>
                <content src="Text/colophon.xhtml#mark_901" />
              </navPoint>
              <navPoint id="navPoint-16" playOrder="16">
                <navLabel>
                  <text>裏表紙</text>
                </navLabel>
                <content src="Text/backcover.xhtml#mark_902" />
              </navPoint>
            </navMap>
          </ncx>
        

9. EPUBファイルをビュアーで確認する

  • すべての編集が終わったら、「ebook」フォルダ内の「makeepub.bat」ファイルをダブルクリックして実行し、「sample.epub」ファイルを作成します。
  • 『Adobe Digital Editions』に「sample.epub」ファイルをドラッグして開き、それぞれのページが意図した通りに表示されているかを確認します。特に目次ページのリンクや、ナビゲーションパネル表示/非表示アイコン「ナビゲーションパネル表示/非表示」アイコンをクリックした時に表示される目次からのリンク、あとがき等に入れたURLは実際にクリックして該当ページ、該当サイトにジャンプするかどうかすべてチェックしてください。
  • 各xhtmlファイルの内容を修正してから再度、「sample.epub」ファイルを作成する時は、一度『Adobe Digital Editions』の「ライブラリへ戻る」アイコンをクリックしてライブラリ表示へ戻ります(開いたままの「sample.epub」はロックされていて上書きされません)。「sample.epub」ファイルを作成し直したら、左上に表示されている最後に開いた本の[読む]をクリックして本を開き直します。
  • なお、途中で「content.opf」ファイルの書籍情報を再度変更した場合、一度読み込んだ書籍の書籍名は『Adobe Digital Editions』上では変更されません。ファイル名を変更して別の書籍として開くか、ウィンドウ右側の書籍一覧から該当書籍上で右クリック、「ライブラリから削除」→確認ウィンドウ上で「削除」をクリックして一度書籍をライブラリから削除し、再度ファイルをドラッグして読み込み直します。
  • フォントや行間、装飾画像とのバランス等、見た目の雰囲気は端末やビュアーにより違ってきますので、『Sigil』の簡易ビュアー表示や『Adobe Digital Editions』による表示が必ずしもすべての環境でそのまま再現されるわけではありません。端末やビュアーによる表示の違いについては『ビュアーによる表示サンプル』ページを参照してください。

10. 「EpubCheck」で検証する

  • 出来上がった「sample.epub」ファイルを検証ツール「EpubCheck」のエラーチェックにかけてエラーが指摘されなければ完成です。10MBまでのサイズであれば、『EPUB Validator (beta)』のサイトでも検証できますが、何度もチェックにかけるようであれば「EpubCheck」をインストールして使用します。
  • epubcheck』のサイトから最新版の「EpubCheck」(binariesと書いてある方)をダウンロードし、適当なフォルダに解凍します。ここでは例として、Cドライブの「ebook」の下に「epubcheck」というフォルダを作成し、そこに解凍したとします。
            C:.
            └─ebook
                │  dc_template_01_winered_ep3.epub
                │  makeepub.bat   ←----   epub作成用バッチファイル
                │  sample.epub    ←----   作成されたEPUB3ファイル
                │
                ├─epubcheck   ←----   epubcheckツール用フォルダ
                │  │  COPYING.txt
                │  │  epubcheck-3.0.jar
                │  │  epubchecklog.txt
                │  │  README.txt
                │  │  THIRD-PARTY.txt
                │  │
                │  ├─lib
                │  │      commons-compress-1.4.1.jar
                │  │      guava-13.0.1.jar
                │  │      jing-20120724.0.0.jar
                │  │      sac-1.3.jar
                │  │      saxon-9.1.0.8.jar
                │  │
                │  └─licenses
                │          Apache-2.0.txt
                │          BSD-3-Clause.txt
                │          MPL-1.0.txt
                │          W3C.txt
                │
                ├─files   ←----   編集した各ファイル用フォルダ
                │
                └─zip     ←----   圧縮ツール用フォルダ
        
  • 以下のテキストを丸ごとコピーし、Cドライブの「ebook」の下に「epubcheck.bat」という名前のバッチファイルを作成してペーストし、保存します。「epubcheck-3.0.jar」の数字の部分は「EpubCheck」のバージョンが変わった時にはファイル名(上のハイライトされた部分)が変わるので、それに合わせて書き換えます(現在のバージョンは3.0)。また、ファイルの保存場所が例と違う場合はご自分の環境に合わせてパスを書き換えますが、よくわからないという方は例と同じフォルダとファイルの構成にしておくことをおすすめします。
          cd epubcheck
          java -jar epubcheck-3.0.jar c:\ebook\sample.epub
          cd ..
          pause
        
  • 以下は「epubcheck.bat」ファイルを作成した後の状態です。
            C:.
            └─ebook
                │  dc_template_01_winered_ep3.epub
                │  epubcheck.bat  ←----   EpubCheck用バッチファイル
                │  makeepub.bat   ←----   epub作成用バッチファイル
                │  sample.epub    ←----   作成されたEPUB3ファイル
                │
                ├─epubcheck   ←----   epubcheckツール用フォルダ
                                  ------------
        
  • 「epubcheck.bat」ファイルをダブルクリックして実行すると、「sample.epub」ファイルの検証が始まります。最後に「No errors or warnings detected」と表示されれば検証をパスしています。コマンドプロンプトのウィンドウが閉じないのはエラー内容をスクロールして確認できるようにしてあるためです。ウィンドウを閉じるには適当なキーを押します。なお、エラーが表示された場合は、エラー箇所のファイル名と行数が表示されるのでそれを参考にして記述に間違いがないかを確認し、訂正してから再度実行します。タグの閉じ忘れや打ち間違い等のミスに注意してください。
  • 「EpubCheck」で確認中に、突然以下のようなエラーが表示されるようになって原因がわからないという場合、一度、前回分の「sample.epub」を削除してから「EPUB圧縮」→「EpubCheck」とやり直すことでエラーを回避できることがあります。
  •           ERROR: c:/ebook/sample.epub: Extra field length for first filename must be 0, but was 17
            

《「EpubCheck」についての注意事項》

  • 「EpubCheck」を使用するにはJava の1.5以上のバージョンが必要です。インストールされているJavaのバージョンは以下のようにして確認します。
    1. [ウィンドウズ]キーと[R]キーを押し、「ファイル名を指定して実行」ウィンドウが表示されたら「名前」欄に「cmd」と入力して[リターン]キーを押します。
    2. 「コマンドプロンプト」ウィンドウが表示されたら、「java -version」と入力して[リターン]キーを押します。
    3. 最初の行に表示されているのが現在インストールされているJavaのバージョンです。確認が終わったらこの「コマンドプロンプト」ウィンドウは右上の[×]を押して閉じてください。
    4. もしバージョンが1.5よりも古い場合、最新の「java」をこちらからインストールしてください。

《制作のヒント》

  • テンプレートは基本的にリフロー型で構成していますが、裏表紙のみ固定レイアウトを使用しています(主にKindle用の措置です)。目的によりリフロー型と固定レイアウト型の混在は対応していないという場合は裏表紙を削除してください。
  • 本文内に組み込まれる目次では体裁重視のため、項目にアンダーラインが付かない指定(カーソルを近づけた場合のみ文字が反転する)にしています。目次にもアンダーラインを付けたい場合はあとがきや奥付と同じ指定にするなど変更してください。
  • EPUB3に完全準拠させる場合、「toc.ncx」ファイルは不要となります。削除する場合は「content.opf」ファイル内の該当記述箇所も削除してください。なお、下記の行数表示はオリジナル時のもので、編集後の内容により違ってきますので注意してください。ただし、端末やビュアーによりまだ「toc.ncx」ファイルを参照するものが少なくないため、EPUB2/3混在として残しておいた方が無難です。
          <item href="toc.ncx" id="ncx" media-type="application/x-dtbncx+xml" />
        
          <spine page-progression-direction="rtl" toc="ncx">
        
          <spine page-progression-direction="rtl">
        

《その他の注意》

  • テンプレートの内容については適宜見直しを行っているため、解説に使用している画像の細部やコードについては一部実際のものと違っている場合があります。
  • この制作方法は筆者が主にKindle用に作成したEPUBを元に記述しており、内容が必ずしも正しいとは限りません。また、ここで紹介したツールや参考サイトに関しても、安全性や正確さを保証するものではありません。利用される際は自己責任でお願い致します。
  • テンプレートに関する使用上の注意、利用規定等に関しては『EPUBテンプレート』のページをご覧ください。

《使用ツール/参考ツール》

  • Google『Sigil』
     『sigil - The EPUB Editor
  • Adobe『Adobe Digital Editions』
     『Digital publishing for professionals | Adobe Digital Editions Home
  • Google『EpubCheck』(EPUBの整合性チェックツール)
     『epubcheck - Validation tool for EPUB - Google Project Hosting
  • Greg Roelofs.『ZIP 3.0』(圧縮ツール)
     『Info-ZIP
  • Amazon『Kindleプレビューツール』&『KindleGen』(Kindle用/KDPツール)
     『KDPツールとリソース
  • エディタ(できれば文字コード「UTF-8(BOMなし)」、改行コード「LF」で保存できるもの)
    Windowsに付属の『Notepad(メモ帳)』で代用する場合は、一度「ファイル」→「名前を付けて保存」を選び、「ANSI」となっている文字コードを「UTF-8」に変更してから保存してください(ただし文字コード「UTF-8(BOMあり)」、改行コード「CR+LF」となります)。

《参照サイト》

《改訂記録》

  • 2013/04/28 初稿
     『Sigil』 v0.7.2/『Adobe Digital Editions』 v2.0.67532/『EpubCheck』 v3.0 で作成