ストアの画面に出るエラーメッセージは、たいてい曖昧です。「ファイルに問題があります」としか書かれていないこともあります。
そこで最初にやるべきなのが、EPUBCheckという検証ツールにかけることです。W3Cが配布している公式ツールで、無料で使えます。オンラインで検証できるサービスもあります。
このツールは「どのファイルの何行目に、どういう問題があるか」を具体的に指摘してくれます。 ストアのエラーメッセージより、はるかに原因にたどり着きやすくなります。
EPUBCheckでエラーが出ないのにストアで弾かれる場合は、EPUBの規格の問題ではなくストア固有の要件を満たしていない可能性が高いです。後述の章を参照してください。
個人でEPUBを作る場合、遭遇するエラーはある程度決まっています。
EPUBファイルの中には mimetype という小さなファイルがあり、これはZIPの先頭に、圧縮せずに格納するという決まりがあります。
普通の圧縮ソフトでフォルダをZIPにすると、この条件を満たせません。手作業でEPUBを組んだときに、最も多く発生する問題です。
EPUBに含まれるファイルは、すべて content.opf の <manifest> に登録されている必要があります。
画像を追加したのに登録を忘れた、逆に登録されているファイルが実際には存在しない、という食い違いでエラーになります。
EPUB 3では、次の情報が必須とされています。
・dc:title(書名)
・dc:language(言語。日本語なら ja)
・dc:identifier(識別子)
・dcterms:modified(更新日時)
目次(nav.xhtml)から張られているリンクの先に、ファイルが存在しない状態です。章を削除したのに目次を更新していない、といった場合に起きます。
EPUBの本文はXHTMLで書かれており、普通のHTMLより厳密な書き方が求められます。 タグの閉じ忘れや、<br> のような書き方(正しくは <br />)でエラーになります。
原稿にHTMLタグを直接書き込んでいる場合に起きやすい問題です。
EPUBCheckでエラーゼロなのにストアで弾かれる場合、規格の問題ではなくストア固有の要件です。
各ストアの入稿要件は、更新されることがあります。最新の情報は必ず、そのストアの公式ヘルプで確認してください。
この記事を含め、第三者がまとめた情報は古くなっている可能性があります。エラーメッセージに書かれた文言をそのまま公式ヘルプで検索するのが、いちばん確実です。
Amazonは取り込んだEPUBを自社形式に変換します。この変換の段階で問題が出ることがあるため、入稿前にKindle Previewerで確認しておくと、原因の切り分けが早くなります。
Previewerで開けるのに入稿で弾かれるなら、ファイル自体ではなく登録情報や審査の問題である可能性が高くなります。
EPUBCheckの出力は英語ですが、読み方さえ分かれば難しくありません。
| 表示 | 意味 |
|---|---|
| FATAL | 致命的。ファイルとして成立していない |
| ERROR | 規格違反。直す必要がある |
| WARNING | 警告。動くが推奨されない |
| INFO | 情報。対応不要なことが多い |
まずFATALとERRORだけを見てください。 WARNINGは、多くの場合そのままでも配信できます。
数十件のエラーが並ぶと絶望的に見えますが、たいていは1つの原因から派生しています。
たとえばmanifestの記述が1行おかしいだけで、そこから参照される全ファイルがエラーになる、といった具合です。上から順に、最初の1件だけを直して再検証すると、一気に減ることがよくあります。
ツールで生成したEPUBを手作業で編集して壊してしまった場合、元の原稿から作り直すほうが早いことが多いです。エラーを1つずつ潰すより、原稿を直して再変換するほうが確実です。