電子ブックを簡単に作る方法 — markdown から epub を作る

飲食店用のメニューをタブレットで作って欲しいと個人的な依頼があった。どんな料理?と、よく聞かれるので写真を見せたいということだった。ただ、注文までは必要なく、メニューブックのかわりということだ。

どのように表示させるか

とりあえず手持ちの端末は、iPad、kindle fire だったが追加で、ZenPad 8.0を購入して評価した。

google photo のアルバムを公開する、google document を公開する、WEBサイトに掲載する、など考えた。
しかし、お客さんが自由に触れる端末なので、セキュリティ上、使えるアプリを制限したい。
また、使えるアプリが制限されているほうが、スタッフさんやお客さんにもわかりやすいだろう。

そこで考えたのが、電子ブック(epub)化することだ。本と同じなので、メニューブックとほとんど同じ感じで扱えるだろう。

ZenPad には、キッズモードというのが付いており、起動できるアプリを制限することができるので、お客さんが使う時はキッズモードを有効にする。

電子ブックリーダーとして、ローカルの epub ファイルを読み出すことができ、広告も挿入されない Android 用の Lithium というアプリを使うこととした。

epub を作る

さて、epub ファイルを作る方法だが、iBooks Author、google document、calibreなどがある。

iBooks AUthor は、私には少し難しすぎるし、テキストの入力が煩雑に思えた。

google document はまあ使える。epub 出力して、さらに、calibre でカバーページなどを追加する。この方法で初期バージョンを作成した。写真の横幅を15cm程度に縮めておかないと、画像が次のページにはみだしてしまうようだった。その手間さえ面倒でなければ、割と誰でもできるのではないかと思う。今のところ、「美味しそう」と好評だ。

本題だが、さらにネット検索と試行錯誤をしてみたところ、calibre には markdown 形式のドキュメントを epub に変換する機能があった。markdown 形式のドキュメントと画像等を zip に圧縮して calibre に登録して変換するとよい。

この変換の結果できたファイルを bluetooth や、google drive などで端末に送ればよい。

markdown を使う時の注意点

google document を使う方法で悩まされた問題は、画像が ZenPad だと正しく表示されるが、スマートフォンだとはみ出て見えることだ。markdown もそのまま使うとそうなるのだが、html で書くこともできるので、画像を img タグで記述して width を % で指定するとどの端末でもうまく収まってくれるようだ。chrome 拡張の markdown preview plus などを入れておくとよいだろう。

改ページは、

<hr style="page-break-before:always;display:none;"/>

のように書くと calibre は改ページと認識するようで、そこでファイルが分割されている。
calibre ドキュメントの Replace scene breaks の項も参考。

先頭に

[TOC]

を入れておくと目次が生成されると同時にナビゲーション(というのかどうか知らないが、右端から左にスワイプすると表示されるメニュー)も生成されるようだ。calibre の書籍編集機能を使って目次ページを削除すれば、目次は消えるが、ナビゲーションは残るようである。

ビデオを入れることも可能なようだ。video タグが使える。ただし、ZenPad など Android 端末の場合は mp4 から webm 形式に変換しておく必要がある。video タグは以下のように。

<video controls>
  <source src="movie/tmrz-1518447087.webm" type="video/webm">
</video>

mac の iBook でしか確認していないが、以下も可能そうだ。

<video controls>
  <source src="movie/tmrz-1518447087.webm" type="video/webm">
  <source src="movie/tmrz-1518447087.MP4" type="video/mp4">
</video>

以上、ご参考に。