Hatena::ブログ(Diary)

このブログは証明できない。

2010-07-15

[]たった600円でオライリー本をiPadKindleで読む。すてき。

オライリー本読んでますか?いろいろ揃っていて、ついつい買っちゃいますよね。でも、価格が高い&厚い&重いの三重苦です。ところが、iPhone版の電子書籍だと600円で買えてしまいます。しかも、場所を取らない。最初は数冊だったのが、今では868冊がリリースされています。




600円でフルバージョンが手に入るオライリー本ですが、やはりiPhoneであのボリュームを読むのはツライ。そこでオライリーでは、iPadKindleで読める電子書籍を販売しています。


ところが、紙の本と比べてそれほど安くないんですね。iPhone版の600円はやはり魅力です。大丈夫。実はこのアプリからiPadで読めるepubを取り出すことができるんです。特殊なハックというわけではなく、オライリーのサイトでもやり方が書かれています。


さらに、取り出したepubKindleで読めるmobi形式に変換することもできます。今日は、そのやり方をメモっておきます。




600円のiPhoneアプリを購入します。iTunesアプリを右クリックして「Finderで表示」します。

f:id:shunsuk:20100715215507p:image


表示されたipaファイルをどこかにコピーします。

f:id:shunsuk:20100715215506p:image


拡張子zipに変更し、解凍します。

f:id:shunsuk:20100715215505p:image


Payloadというフォルダの中にappファイルがあります。

f:id:shunsuk:20100715215504p:image


右クリックして「パッケージの内容を表示」します。bookフォルダの中です。

f:id:shunsuk:20100715215503p:image


3つとも選択して、「3項目を圧縮」します。できあがったzipファイルの拡張子epubに変更します。これで、iPadで読めるepubファイルが完成しました。

f:id:shunsuk:20100715215502p:image


Kindleでも読めるようにします。アマゾンのサイトからKindleGenというツールをダウンロードします。


ホームディレクトリにでも展開しておきます。ターミナルepubを指定してKindleGenを実行します。

% cd ~/path/to/epub
% ~/KindleGen/kindlegen Real\ World\ Haskell.epub

このままだと、エラーがでました。

Error(prcgen): The root <ncx> tag not found.
Error(prcgen): The table of content could not be built.

応急処置。上記の3項目のうちOEBPSフォルダの中にあるtoc.ncxファイルをテキストエディタで開きます。

<ncx:ncx xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/" version="2005-1">
  <ncx:head>
    <ncx:meta name="cover" content="cover"/>

このncxというネームスペースを削除します。一括置換で。

<ncx xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/" version="2005-1">
  <head>
    <meta name="cover" content="cover"/>

再度KindleGenを実行。

% ~/KindleGen/kindlegen Real\ World\ Haskell.epub

f:id:shunsuk:20100715215501p:image


Kindleで読めるmobiファイルが完成しました。

f:id:shunsuk:20100715215500p:image




それでは、iPadで読んでみましょう。iTunesepubファイルをドラッグ&ドロップして、iPadと同期します。

f:id:shunsuk:20100715215459p:image


この通り。iPadで読むことができました。

f:id:shunsuk:20100715203358j:image

f:id:shunsuk:20100715203425j:image




次に、Kindleです。mobiファイルをKindleに入れるだけ。Kindleでも読むことができました。レイアウトも問題ありません。iPhoneと違って、コードもしっかり読めます。

f:id:shunsuk:20100715203618j:image

f:id:shunsuk:20100715204255j:image


Kindle形式なので、コンテンツ間やWebへのジャンプも使えます。もちろん、単語にカーソルをあわせると、辞書も表示されます。

f:id:shunsuk:20100715204356j:image




KindleGenの目次のファイルでエラーが出て、応急処置をしました。その影響で、Kindleでは目次が使えません。epubとmobiの仕様を確認して、なんとか対応したいと思います。


それにしても、各600円でオライリー本を読みまくれるのはうれしいですね。




追記(2010-07-16):dankogai先生が自動化するスクリプトを書いてくれましたよ。


追記(2010-07-17):目次の秘密がわかりましたよ。


追記(2010-07-21):目次を生成するスクリプトを書きましたよ。

podpod 2010/07/16 00:14 これは素晴らしいですね!
情報ありがとうございます!

本好き本好き 2010/07/16 06:03 オライリー本って初めて知りました!!
高いんですか?
これからって感じがします。
私はこんな本を読んでいます。

penguinspenguins 2010/07/16 11:50 これはいいですね!
Kindle for PC/Mac でもいけますか?

masousizukamasousizuka 2010/07/16 15:33 オライリーの本って個人的には好きなんですが高いので二の足を踏むことが結構あるんですよね・・・。でもこれは嬉しいです。

tagamytagamy 2010/07/16 18:04 オライリーのiPhone版電子書籍カタログつくってみましたー
http://booklog.jp/itunes/tag/O'Reilly

O’ライリーO’ライリー 2010/07/16 23:19 すばらしい

syou6162syou6162 2010/07/17 00:30 目次のところですが、toc.ncxファイルと同じディレクトリにあるcontent.opfファイルがReal World Haskellでは少し違うようです。うまく目次が作れたものだと
<item xmlns="http://www.idpf.org/2007/opf" media-type="text/css" id="css" href="core.css"/>
という風になっていました。

fmactionfmaction 2010/07/17 08:47 おぉーこれは、かなりお得な情報ですね!!
iPad買ったら是非、試したいです。

ujipujip 2010/07/18 20:49 はじめまして。こちらの記事、すごく参考になりました。
気になって、Windows向けのスクリプトを作って見ましたが、期待通り動くといいのですが…
http://d.hatena.ne.jp/ujip/20100718#p1
目次データの自動生成には対応していません・・・対応できるといいですよね(自信無)。

リョウスケリョウスケ 2010/08/04 02:11 Twitterからきました☆
細かくは分からないですが、凄いですね!
(^O^☆♪

uk_pinuk_pin 2010/08/05 00:21 ナイスな方法ご紹介ありがとうございます☆ 無事iPadで表示できました。
追加で、PC版Kindleにコピーできなかったので、もし方法ご存知でしたら教えてもらえませんでしょうか。

shunsukshunsuk 2010/08/05 06:18 私は、mobiファイルのダブルクリックだけでいけましたよ。

uk_pinuk_pin 2010/08/05 08:28 お!できました、ありがとうございました。

pennywiselikepennywiselike 2013/04/30 16:03 はてなブックマークからきました

とても参考になりました

ありがとうございます

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/shunsuk/20100715/1279199789