EPUBのベストプラクティス EPUB2用の目次NCXの出力はまだ必要か?

EPUB2では、目次にNCXという形式のファイルを使っていました。NCXはDAISY Consortiumによって標準化されたANSI/NISO Z39.86-2005, Specifications for the Digital Talking Bookという仕様の一部です[1]。

EPUB3では、NAV形式のXHTMLファイルを目次に使うことになっており、NCX形式の目次をEPUB2のリーダのために含めておいても良いことになっています[2]。

したがって、EPUB3リーダ専用のEPUBであればNCXを含む必要はありません。そこで、最近アップデートされたEPUB3リーダを対象として、NCXとNAV形式の両方の目次をもつEPUB3とNAV形式の目次のみ(NCXを含んでいない)もつEPUB3を作って、目次が表示されるかどうかについて比較してみました。

結果は次の表のとおりです。

(1) iBooks3.0、Kobo、ReadiumはNAVの目次を表示します。NCXの目次は必要としません。
(2) Adobe Digital Editions 2.0は、NCXの目次がないと目次が表示されないようです。
(3) なお、KindleのKF8形式については、「Kindle Publishing Guide」ではNCXが必須とされており、HTML形式の目次も必要とされています。実際の結果は後述の「Paperwhiteでの確認結果」をご覧ください(11/25追記)。

ということで、まだNCXを全廃というわけにはいかないようです。

表1 NCXとNAVの両方を含むEPUBと、NAVしか含まないEPUBの目次はどうなるか?

NCXとNAV NAVのみ
Readium 0.5 表示する 表示する
Adobe Digital Editions 2.0 表示する 表示しない
iBooks 3.0 表示する 表示する
Kobo 2.1.4 表示する 表示する
Kindle 2.71 NCXは必須と説明されている XHTMLの目次が必要とされている

表示する:目次が表示されるという意味。
表示しない:目次が表示されないという意味。

●Kindle Paperwhiteでの確認結果

1.NAVのみでNCXが存在しないEPUB3をKindleGen(2.7)でmobiに変換すると、「移動」メニュー「表紙」と「最後のページ」の間にグレー(無効)の「目次」が表示されます。NAVの内容は無視されているようです。
2.NAVとNCXと両方が存在するEPUB3をKindleGen(2.7)でmobiに変換すると、「移動」メニューの「表紙」と「最後のページ」の間に目次項目が表示されます。
3.1.と2.からKindle Paperwhiteは、NCXの内容を「移動」の目次項目として表示していることがわかります。
4.HTMLの目次[3]は、「表紙」の次の単独ページに表示されます。さらにHTMLの目次ページをガイドに登録すると「移動」の目次としても使われます。(ガイドの内容が「移動」の目次に表示されるのであれば、HTML形式の目次を用意した場合、NCXの目次は不要なのかもしれません。)

図1 HTML目次

図2 移動メニュー (頁の上部にポップアップ)

図3 「移動」メニューの内容

[1] Open Packaging Format (OPF) 2.0.1 v1.0.1 Recommended Specification September 4, 2010
[2] EPUB Content Documents 3.0 Recommended Specification 11 October 2011
EPUB Navigation Documents
[3] CAS-UBのKindle生成メニューでは、EPUB3のNAV.htmlにスタイルシートを設定して、HTML形式の目次として作成し、先頭ページに登録します。