« 風邪の流行:「体調管理」とは個人の問題だけなのか | トップページ | Kindleで青空文庫(2) »

2016/12/11

Kindleで青空文庫

タイトルの目的で色々検索してみてみると、いろんなツールやWebアプリなどの環境が整っているようで良いことだと思う。
私はあまりツール(アプリ)とか入れたくないという感があるので参考にしながら色々試してみた。
Windows/Linux/Mac等に依存したくないという部分もある。AndroidやiPad/iPhoneでもできたらなお良い。

やってみたら簡単な話である。

まずは基本的な事項を改めておさえておこう。

Kindle側としては、Amazonのサービスとして「Kindleパーソナル・ドキュメントサービス」というものがある。
これは電子ブック形式はもちろん、*.pdfや*.doc/*.docx(MS-Wordのファイルのこと)やら*.txt(テキストファイル)、*.html、画像ファイル(*.bmp、*.png他)等を添付して、とあるアドレスにメールで送ると変換してクラウドに入れてくれ、自動的にKindleと同期してくれるというものである。
これを使えばKindleとPCをUSB接続しなくてもKindleにファイルを転送できる、と考えても良い。
このシステム自体は理解するのにそれなりにややこしいところもあるが、Kindleを使う上で基本的な事項のひとつなので把握しておくと今回に限らず便利なものである。

青空文庫側としては、青空文庫のサイトで、通常ルビ入りテキスト(*.txt)もしくはHTMLファイル(*.html)をファイルとしてダウンロードできるようになっている。

それならば、まずは単純に*.htmlファイルをダウンロードしてそのドキュメントサービスを使ってやったらどうであろうか。

ファイルをダウンロードしてそれを添付してメールを送るだけである。
(なお、ヘルプには変換の時は題名を「変換」と書けとある。必須かは各自で確認して欲しい。私は礼儀として入れるようにする)

結果として問題は特にない。
Kindle上では題名の場所にはファイル名(拡張子なし)、作者名の場所はメールアドレスが表示されるのは少々嫌な感じだが、送信前にファイル名を「題名・作者名」とかにしておけばまあ問題は無い。

ルビ付だから行間がおかしくなるかと思いきや、問題ない(昔のWebブラウザの縦書きはこの辺がおかしくなりがちだった)。
これで良い、と思ったらこれで話は終わりである。

しかし表示は横書きである。
青空文庫リーダーは多くは縦書きである。
昔の文学作品が多い青空文庫愛好者はここに拘る人は多い。
どうして横書きかと言えば、Webは英文文化、HTMLは横書き前提で作成されているからだ。
実際、このHTMLファイルをWebブラウザで表示すると横書きになるのだから当然である。

それならHTMLレベルで縦書きにしてやればいけるのではないか。
最近のブラウザは縦書き表示対応がそこそこできている。(既にCSS3としては定義されているものだ)
要はHTMLファイルをちょこっと編集して縦書き指定してからならどうだろうか。

やり方は簡単である。
例えば、ファイルをテキストエディタで開いて
<body>
と書いてあるところを探して
<body style="-webkit-writing-mode:vertical-rl;">
と書き換えてやれば良いだけのことである。
(心配性の人は送る前にChromeで表示させてやると確認できる。なおFirefoxでは縦書きにはなるが表示がおかしい、IEでは文字は回転するがこれでは縦書きにならないと思う。Safariはwebkitなのでうまくいくはずだ)

ただし、ページ送りは右下タップなどの左から右ページ送り状態である。
私は違和感がないのだが、嫌な人はこのやり方では解決しようない。
ここまで読んでくれて申し訳ないのだが他を当たって欲しい。
これは電子書籍の仕様を理解しファイルを作る話になってしまうからだ。

ちなみに縦書きで左から右というのが良いという人はvertical-rlをvertical-lrにするという選択肢もある。
これを“日本語の縦書き”としてアリだナシだは置いといて、こちらの方が違和感がないひとならやってみたら良いと思う。

最後に手順をまとめよう。
①青空文庫からHTMLファイルをダウンロードする
②ファイル内の<body>を<body style="-webkit-writing-mode:vertical-rl;">に書き換えて保存する。
③ファイル名がKindle上での本の題名となるので好きに変える
④Kindleパーソナルドキュメントサービスの指定されたアドレスにそのファイルを添付してメールを送る(題名は「変換」とする)
あとはしばらく待てばKindleに反映される(当然だがKindleはネットに繋がった状態にする)

(補足)
-webkitというのはブラウザ固有拡張の書き方であり、CSSの規格上は
<body style="writing-mode:vertical-rl;">
が適当だ。しかし現実としてこれでは縦書きになってくれない。
変換サービスのレンダリングエンジンとしてwebkitを使っているからなのかも知れない。

将来的には-webkitは不要になる筈である。
定型的にやるの(スクリプトとして処理するとか)なら
<body style="-webkit-writing-mode:vertical-rl; writing-mode:vertical-rl;">
とした方が適当かも知れない。別にこちらでも問題なく縦書きになる。

(補足2)
CSSで定義すれば基本フォントをボールド(太字)にしたり細工が色々できる。
定義が長くなるのなら、HTMLファイル中に<style></style>で括って書けば良いだけだ。
(CSSスタイルシートを別のファイルで用意しても単に「変換できないファイル」と認識されて受け付けてくれないので注意)
なお、この辺りのCSSとしては
http://netbuffalo.doorblog.jp/archives/4241501.html
が参考になるだろう。

|

« 風邪の流行:「体調管理」とは個人の問題だけなのか | トップページ | Kindleで青空文庫(2) »

「パソコン・インターネット」カテゴリの記事

「携帯電話・機器」カテゴリの記事

「書籍・雑誌」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/47063/64608601

この記事へのトラックバック一覧です: Kindleで青空文庫:

« 風邪の流行:「体調管理」とは個人の問題だけなのか | トップページ | Kindleで青空文庫(2) »