6章 kindle本制作の実際
著者:梅谷 武
作成:2013-09-18
更新:2013-09-19
 ktexは32bit Windowsのコンソール上で動作する。ktexでkindle本をつくるには次のものが必要になる。
  1. ktex.exe
  2. nmake.exe
  3. zip.exe
  4. kindlegen.exe
  5. ktex-template(ktex雛形)
  6. Kindleプレビューア
  7. テキストエディタ(UTF-8で編集できるもの)
 ktex実行ファイルであり、ベクターから無償で入手できる。
 nmakeはUNIXのmakeのWindows版であり、Microsoftのサイトから無償で入手できる。nmakeリファレンスも同社サイトにある。
 メイクファイルと呼ばれる、作るファイルとそれを作るために必要なファイルとの関係を表わす記述ブロックの集まりから成るテキストファイルの情報を元にして自動的にコンソール操作を行なうソフトである。
 記述ブロックは次のように先頭行から始まるターゲットと':'で区切られた0個以上の空白文字で区切られた依存ファイル列から成る依存関係行とコマンドブロックから成る。
<ターゲット>: <依存ファイル>
    <コマンドブロック>
ターゲットが存在しないか、ターゲットのタイムスタンプが依存ファイルのタイムスタンプより古いときにコマンドブロックが実行される。
 圧縮ツールzipのwin32版(DOS版とは異なる)。無償で入手できる。Info-ZIPを推奨する。
 ktexで作成したepub形式ファイルをmobi形式に変換してKindleプレビューアで表示できるようにする。amazonのKDPサイトから無償で入手できる。
 mobi形式ファイルがkindleでどのように表示されるかを確認するためのツール。amazonのKDPサイトから無償で入手できる。
 使い慣れたものがあればそれを使うのがよい。
 新しく使い始める場合は、長時間使う道具なので使いやすいものを選ぶ。
 実行ファイルktex.exe, nmake.exe, zip.exe, kindlegen.exeは、例えばc:\usr\local\binにコピーし、Pathにc:\usr\local\binを追加する。
 ktex雛形は例えばc:\workingにコピーする。
 Kindleプレビューアとテキストエディタはそれぞれ付属インストーラでインストールする。
 ktex雛形は次のような構造になっている。これはePub3標準にほぼ準拠するものであるが、一部がkindle向け仕様になっている。パッケージドキュメント(package.opf)とナビゲーションドキュメント(nav.xhtml)の書き方についてはePub3標準を読む必要がある。ePub3標準(英文)やその日本語による解説がインターネット上で公開されている。
    / ─┬─ mimetype (固定)
       │
       ├─ META-INF/ (固定)
       │     │
       │     └─ container.xml (固定)
       │
       └─ OEBPS/ (固定)
              │
              ├─ nav.xhtml		ナビゲーションドキュメント
              │
              ├─ package.opf		パッケージドキュメント
              │
              ├─ image/ (固定)
              │    │
              │    ├─ cover.jpg	表紙(1600×2400px)
              │    │
              │    :
              │    
              ├─ style/ (固定)
              │    │
              │    ├─ fonts/		画像フォント
              │    │
              │    └─ kindle.css	スタイルファイル
              │
              └─ text/ (固定)
                    │
                    ├─ makefile.mak		メイクファイル
                    │
                    ├─ filelist.txt		ファイルリスト
                    │
                    ├─ 1. 本扉(titlepage)	001_title.xhtml
                    │
                    ├─ 2. 注意(notice)	002_notice.xhtml
                    │
                    ├─ 3. 序文(preface)	003_preface.xhtml
                    │
                    ├─ 4. 目次(toc)		004_toc.xhtml
                    │
                    ├─ 5. 本文(text)		100.xhtml ~ 899.xhtml
                    │
                    ├─ 6. 参照(reference)	901_reference.xhtml
                    │
                    ├─ 7. 索引(index) 	902_index.xhtml
                    │
                    ├─ 8. 後書(afterword)	903_afterword.xhtml
                    │
                    └─ 9. 奥付(colophon)	904_colophon.xhtml
 ktex雛形をメイクするには、コンソールを起動してtext/ディレクトリに入る。
C:\>cd C:\Working\ktex-manual\OEBPS\text
 
C:\Working\ktex-manual\OEBPS\text>
ここで次のようにすれば\Workingにepub形式とmobi形式ファイルが作られる。
C:\Working\ktex-manual\OEBPS\text>nmake -f makefile.mak
 メイクファイル(makefile.mak)は次のようなものである。
TITLE = ktex-template-tate
XHTMLS = 001_title.xhtml 003_preface.xhtml \
         101.xhtml 102.xhtml \
         904_colophon.xhtml \
 
SYS = ../package.opf ../nav.xhtml ../style/kindle.css ../image/cover.jpg
 
all: ../../../$(TITLE).mobi
 
../../../$(TITLE).mobi: ../../../$(TITLE).epub
	cd ..
	cd ..
	cd ..
	del $(TITLE).mobi
	kindlegen $(TITLE).epub
	cd $(TITLE)
	cd OEBPS
	cd text
 
../../../$(TITLE).epub: $(SYS) $(XHTMLS) 004_toc.xhtml 902_index.xhtml
	cd ..
	cd ..
	cd ..
	del $(TITLE).epub
	cd $(TITLE)
	zip -0 -X ../$(TITLE).epub mimetype
	zip -r ../$(TITLE).epub META-INF/*
	zip -r ../$(TITLE).epub OEBPS/* -x *.ftx *.mak *.txt
	cd OEBPS
	cd text
 
004_toc.xhtml: $(XHTMLS)
	ktex -c filelist.txt 004_toc.xhtml
 
902_index.xhtml: $(XHTMLS)
	ktex -i filelist.txt 902_index.xhtml
 
.SUFFIXES:	.ftx .xhtml
.ftx.xhtml:
	ktex $< $@
 epub形式ファイルは標準的なEPUB Validatorで検証する。
 mobi形式ファイルはコンソール出力にメイク時のメッセージが表示されるのでまずそれを確認する。うまくメイクされているときはKindleプレビューアにドラッグして表示を確認する。
クリエイティブ・コモンズ・ライセンス
梅谷武『ktexマニュアル』はクリエイティブ・コモンズ 表示 3.0 非移植 ライセンスで利用できます。