現在、CHiLOリーダー用のEPUB(Embedded CHiLO Book)のテスト版をちょくちょくと作っているのですが、このリーダー用EPUB、現行のCHiLO-Producerで出力すると、どうしてもOPFファイル(EPUB パッケージドキュメント)の記述に不足が出て、EPUB検証ソフト(EpubCheck)を通したときにエラーが出てしまいます。
そこで出来上がったEPUBを一旦展開してOPFファイルを修正し、再圧縮するのですが、EPUBの圧縮には特殊なルールがあり、OS標準の機能では、圧縮は不可能(Windows)か、何回かコマンドを打たなければなりません(Mac,Linux)。
何か楽な方法は無いかなと調べていたところ、EpubCheckにEPUB作成機能があることを知りました。
EpubCheckならJavaで作成されているので、Windowsでも、MacやLinuxでも動作可能です。
コマンドは以下のようになります。
java -jar (epubcheck本体へのパス) (EPUB展開フォルダへのフルパス) -mode exp -save
EpubCheckとEPUBを展開したフォルダが一緒の階層にある場合はこんな感じになります。
java -jar epubcheck-3.0.1\epubcheck-3.0.1.jar C:\Users\UserName\epubsample\ -mode exp -save
ひとつ注意点として、EPUBを展開したフォルダのパスはフルパスで書かなければなりません。
EpubCheckのバージョンが3.0だったころのブログ記事などを見ると、相対パスでも大丈夫だったようですが、java8 + 3.0.1の環境では、フルパスでないと駄目でした。
そのような注意点はあるとはいえ、どのOSでもコマンド一発でEPUBが出来上がり、そのうえ検証までしてくれるのは大変に楽チンです。やったね。