« 2010年3月 | トップページ | 2010年12月 »

2010年11月

2010/11/30

青空キンドルを自分でやってみたPartⅡ

自分で出来るといろいろやりたくなってみるもので、今回は少し凝ってみる。
青空文庫は基本的に画像が入っていないテキスト中心なんだけど、本家(?)ともいうべきプロジェクトグーデンベルグには著作権が切れた画像付きのファイルが多数ある。
で、これを私的に利用するのは問題ないので、何個かやってみた。

まず一番簡単な方法(といってもかなり面倒だけど)

1. プロジェクトグーデンベルグから、原書のHTML文書を表示し、欲しい画像をローカルに保存する。今回はとりあえずガリバー旅行記をやってみた。

2. ダウンロードした画像をTexで扱い易いEPS形式に変更する。今回はEPS-convというソフトを使用させて頂いた。

3. az2tex で作った gulliver_ryokoki.tex をテキストエディタで開いて英語原文と見比べながら図を入れる箇所を探す。例として20行目からの


  第一、小人国(リリパット)

の後にmap01.epsを入れてみる。入れる前はこんな感じ。


Gulliver_before

aozora.sty では画像を単純に表示する方法として、\sashie という命令が定義されている。この命令は画像を単純にページ幅一杯(8cm)に拡大して挿入してくれる。問題は今回のような縦長の画像の場合は横幅基準で拡大すると切れてしまうこと。なので、

  第一、小人国(リリパット)
 
\sashie{map01.eps}

とするのではなく、

  第一、小人国(リリパット)
 
\hbox{\yoko\includegraphics[keepaspectratio=true,height= 10cm]{map01.eps}}

とする。この結果、
Gulliver_after
と、大体望み通りの結果になった。

ただ、これだとまだ横長の図の上や下に文章を表示したいといったことが出来ない。これについては次回。

2010/11/20

青空キンドルを自分でやってみると

Cygwin環境はあったので、まずここにRubyをインストールして、青空文庫形式のtxtファイルからtexファイルを作ってくれるaz2texを動作するようにする。参考:青空文庫を読もう。注意点は、使おうとするスクリプトがjcodeというパッケージを必要としており、最新版のRuby1.9系列にはjcodeがないということ。仕方が無いのでRuby1.8をインストールした。

次にWinTexをTexWikiを参考にしてインストール。「TeXインストーラ3」を使わせて頂いた。デフォルトのC:\W32tex以下にインストールした。

texファイルからdviファイルが出来ることが確認出来たら、次は青空キンドルで配布されているaokin-mincho.ttfを組み込んだpdfファイルを作成するための作業。

まずデフォルト環境だとKozMinPro-Regular-Acro.otfがないと文句を言われた。仕方が無いのでインストールされていたAdobe Acrobat Reader 8のKozMinProVI-Regular.otfを使わせてもらうことにして、
Program Files\Adobe\Reader 8.0\Resource\CIDFont フォルダを

C:\w32tex\share\texmf\fonts\opentype
以下にコピー。 aokin-mincho.ttfは、
C:\w32tex\share\texmf\fonts\truetype
以下にコピーした。

texmf以下にファイルを追加したのでmktexlsrを走らせるとこだけど、自分は

C:\w32tex\share\texmf\ls-R
は削除してあるので必要ない。というかやっちゃうと折角消したls-Rファイルが出来ちゃうのでNG。

次にcid-x.mapを以下のように変更する。

otf-ujmr-h    UniJIS-UTF16-H KozMinProVI-Regular.otf
otf-ujmr-v    UniJIS-UTF16-V KozMinProVI-Regular.otf
otf-cjmr-h    Identity-H     KozMinProVI-Regular.otf
otf-cjmr-v    Identity-V     KozMinProVI-Regular.otf
hminr-h       H              KozMinProVI-Regular.otf
hminr-v       V              KozMinProVI-Regular.otf

どうせ使わないんだから何でもいいようなもんだけど、後で使うかもしれないし。
ここまで来たらテキストを変換するだけ。az2texはcygwin環境でしか使えないので、Cygwinのプロンプトから、

az2tex HogeHoge.txt

で、HogeHoge.tex が出来るので、dviファイルを作ってもらう。ここからはWindowsのコマンドプロンプト。

C:\work\platex HogeHoge.tex

出来たdviファイルをpdfに変換。青空キンドルのipa.mapを使わせてもらって

C:\work\dvipdfmx -f ipa.map HogeHoge.dvi

これでめでたくHogeHoge.pdfの出来上がり。この形だと、Kindle2又はKindle3向けの1段組、文字の大きさ中の設定で作ったのと同じ。文字の大きさを変えたい場合には、az2texで出来たHogeHoge.texファイルを開いて、

\usepackage[device=kindle2,size=normal]{aozora}

の行中の size=normal をsize=small 又は size=large に変える。ちなみにdevice=kindledx にすると2段組みになるけど、自分には当面必要無さそうかな。

« 2010年3月 | トップページ | 2010年12月 »