緊デジフィックス型EPUB3用XHTML生成スクリプト
2012/10/30 前回のエントリに引き続き、緊デジ用のスクリプトを公開します。そもそもこちらのスクリプトはスタジオ・ポットSDの日高さんの制作されたPHPスクリプトです(いきなり送られてきて割とびっくりしました(汗))。これはあらかじめPHPソース「mk-epub-fixed.php」を開いて出力する総ページ数を書き換え、同じく「source.xhtml」内の書籍タイトル名を書き換えた上でターミナル(Windowsの場合はコマンドプロンプト)からスクリプトを実行すると、xhtmlフォルダ内に連番でリネームされたxhtmlファイルが生成されるというものです。
あとはimageフォルダ内にスキャン済の各ページの画像を入れ、OPFファイルや目次を整えれば緊デジフィックス型EPUB3の必要ファイルが一通り整います。
なかなか便利そうなスクリプトと思いましたので、先方の許可をいただいて私のブログで公開させていただくことにしました。
なお、WindowsのコマンドプロンプトでPHPのプログラムを実行するには、あらかじめPHPのプログラムをインストールし、パスを通しておく必要があります。こちらやこちらなどを参考に、PHPの実行環境を整えておいてください。ちなみに私の環境では、XAMPPをインストールした上で環境変数の末尾に「;C:\xampp\php」と追加してパスを通すことでOKになりました(コマンドプロンプト画面で「php -v」と入力し、PHPのバージョンが表示されればOKです)。
Mac OS Xに関してはもともとシステムにPHPがプリインストールされています。私の手元の環境で確認した限りではMac OS X 10.6/10.7では問題なく実行できるようです。ただ、私の制作しましたGUI版のプログラム版を実行する場合、引数に日本語を指定する関係上、ターミナルの言語環境が「日本語(Mac OS)」などになっていると正常にファイルが生成されないことがあるようです。あらかじめターミナルの「環境設定」メニュー「詳細」タブで、文字エンコーディングを「Unicode(UTF-8)」に設定した上でスクリプトを実行してください。
1 ファイル出力フォルダを整える
こちらのスクリプトは緊デジフィックス型EPUB専用のファイル生成スクリプトで、「item」フォルダ内に「xhtml」フォルダがあることを前提に連番のxhtmlファイルを生成します。この条件を満たすためにあらかじめフォルダ構成を整えておく必要があります。Finder上でゼロからフォルダを作るなら「item」フォルダを新規に作成し、「mk-epub-fixed.php」及び「source.xhtml」のファイルをコピーして、「xhtml」フォルダを作成してください。緊デジのテンプレートを元にしてももちろん問題ありません。
2 「source.xhtml」内のタイトル名を書き換える
「source.xhtml」をテキストエディタで開き、「〓タイトル〓」の部分を書籍の題名に合わせて書き換え、セーブします。
3 「source.xhtml」内の短辺のピクセル数を書き換える
さらに、「source.xhtml」内の、「〓短辺ピクセル数〓」の部分(3ヶ所)をスキャン画像の短辺のピクセル数に合わせて書き換え、セーブします。なお、緊デジフィックス型(電書協EPUB3ガイド仕様)の場合、全ての画像の縦横のピクセル数を統一することが規定されています。緊デジの規定では長辺のピクセル数は1536ピクセル固定です。
4 「mk-epub-fixed.php」内の出力ページ数を書き換える
同じく「mk-epub-fixed.php」をテキストエディタで開き、「$counter = XXX;」のXXXの部分に出力ページ数を入力します。なお、ページ数を引数で入力できるようにしたバージョン(mk-epub-fixed-pagenumimport.php)では、こちらのステップは必要ありません。
5 コマンドプロンプト/ターミナルからスクリプトを実行します
まず、「CD “itemフォルダ名へのパス”」と入力し、カレントディレクトリを切り替えてから(CD+半角スペース入力後にFinderからitemフォルダをターミナルにドラッグ&ドロップ、リターン)、「php mk-epub-fixed.php」と入力してスクリプトを実行すると、xhtmlフォルダ内に指定したページ数のXHTMLファイルが生成されます。なお、ページ数を引数で入力できるようにしたバージョンを使用する場合には、「php mk-epub-fixed-pagenumimport.php xxx」の形で指定してください(xxxの部分にページ数を入力)。
ダウンロードは以下からどうぞ。
mk-epub-fixed
1 file(s) 3.00 KB
mk-epub-fixed-pagenumimport
1 file(s) 4.36 KB
Mac/Winのターミナル/コマンドプロンプトで使用。
XHTMLファイル生成(緊デジフィックス型用).app
1 file(s) 201.77 KB
(ユニバーサルバイナリでビルド、Mac OS X 10.6/10.7にて起動確認済。Mac OS X 10.5でも起動自体は可能ですが、実行時にエラーが出ました。おそらくプリインストールされているPHPのバージョンの問題と思われます。こちらあたりを参考にPHPのバージョンを5に上げれば動作するのではないかと思うのですが未検証です。)
なお、こちらのアプリを利用したことによって生じた損害等に関しまして、私として一切の責任は負いかねますので、あくまで自己責任でご利用ください。
(2012.10.30)
日高さんの所属を「スタジオ・ポットSD」に修正しました。また、コンテンツによってそれぞれ画像の短辺サイズ指定値を変える必要があるとのご指摘をいただき、表記を修正いたしました。コマンドライン/ターミナル用スクリプト及びMac用GUIプログラムも同様に修正しました。
(2012.10.30追記)