EPUB出力プラグイン/テーマ(その3)

2013年1月22日

EPUB3を出力するプラグインを公開しました。
そちらをご利用ください。

EPUB出力プラグイン/テーマの3回目として、テーマのカスタマイズ方法を解説します。

1.テーマを構成するテンプレート

EPUB用のテーマには、以下の5つのインデックステンプレートが含まれます。

テンプレート出力するファイル
メインページ表紙のページ
目次目次のページ
スタイルシートEPUBの各ページに適用するスタイルシート
content.opfEPUB全体の情報や、EPUBに含むファイルの情報等が入ったXMLファイル
toc.ncx目次データが入ったXMLファイル

また、以下の2つのアーカイブテンプレートも含まれます。

テンプレート出力するファイル
ブログ記事個々のページ
カテゴリ別ブログ記事リスト章の見出しのページ(カテゴリを章として使う場合)

2.テンプレートのカスタマイズ

メインページ/目次/ブログ記事/カテゴリ別ブログ記事リストの各テンプレートをカスタマイズすることで、EPUBの各ページのXHTMLの構造を変えることができます。
EPUBのXHTMLは、XHTML1.1とほぼ同じ書き方をすることができます。
EPUBで使える要素や、通常のHTMLと違う要素については、OPS2.0のドキュメントに仕様が出ています。
このドキュメントの日本語訳もあります。

また、スタイルシートのテンプレートをカスタマイズすることで、EPUBの各ページのデザインを変えることもできます。
EPUBのスタイルシートは、CSS2とほぼ同じ書き方をすることができます。
OPS2.0のドキュメントには、EPUBで使えるCSSのプロパティの仕様も出ています(日本語訳もあります)。

ただし、一般のWebブラウザと同様に、EPUBリーダーごとに、XHTML/CSSを仕様通りに正しく解釈しない不具合もあります。
そのため、EPUBリーダーによっては、思った通りの表示が得られないこともあります。

3.カスタマイズ禁止の箇所

各テンプレートの出力ファイル名/アーカイブマッピングは、変更しないでください。
また、content.opfおよびtoc.ncxのテンプレートは、原則として書き換えないでください。
これらを変更すると、EPUB出力時に問題が起こります。

4.テーマのエクスポート

カスタマイズしたテーマをエクスポートして、配布していただくこともできます。
ただし、テーマのtheme.yamlファイルを一部書き換える必要があります。

theme.yamlファイルの中で、「elements:」の行の前に、以下の2行を追加してください。
これらの行がないと、プラグインにEPUB用テーマとして認識されません。

required_components: 
  MTePub: 1.00

5.EPUB出力プラグイン/テーマ関係の記事の一覧

EPUB出力プラグイン/テーマ関係のその他の記事は、以下のリンクから参照できます。