この連載は、『PythonでMarkdownからEPUBをつくろう』を一部抜粋して編集したものです。
本編には、全てのソースコードや、生成する原稿のサンプルが付属しています。ぜひ、こちらもご購入ください。
姉妹版の『PythonとPygameで作る レトロ風RPG 全コード』もあります。
≫ 目次に戻る作成するプログラムのファイル構成を示します。
gen-epub/main.py …… プログラムの開始点config.yaml …… プログラム自体の設定epub/ …… EPUBのテンプレートitem/image/xhtml/cover.xhtml …… 表紙ページのテンプレートtoc.xhtml …… 目次ページの中身のテンプレートcontent.opf …… 収録内容情報のテンプレートMETA-INF/container.xml …… メタ情報mimetype …… ファイル種別情報mod/ …… プログラムの各処理loader.py …… 設定読み込みbuilder.py …… EPUB構築doc/ …… 文書変換epub/ …… EPUB内の各ファイル作成pack/ …… EPUBパッケージ化toc/ …… 目次作成util/ …… 各種処理プログラムの流れは次の通りです。
01_md/config.yamlを読み込みます。gen-epub/epubを出力先02_epub/epubに複製します。cssやimageの中身を、出力先02_epub/epub/item/xhtmlに複製します。.md形式のファイルをXHTML形式に変換します。02_epub/epub/item/xhtmlに複製します。02_epub/epubを、EPUBに準拠したZIP形式で圧縮して02_epub/py-md-epub.epubを作ります。おこなっていることはそれほど複雑ではなく、テンプレートを複製してCSSや画像を複製して、Markdown形式のファイルを変換したあとZIP形式で圧縮しているだけです。
1つ1つの処理はシンプルですが、手作業でおこなうと時間がかかるのでプログラムで自動化するメリットがあります。
この連載は、『PythonでMarkdownからEPUBをつくろう』を一部抜粋して編集したものです。
本編には、全てのソースコードや、生成する原稿のサンプルが付属しています。ぜひ、こちらもご購入ください。
姉妹版の『PythonとPygameで作る レトロ風RPG 全コード』もあります。