2011.07.17
(Amazon から購入した mobi じゃない)自家製 mobi で Whispersync するための細工のメモ。(ePub を mobi にする方法はたくさんあるからググって探すといいと思う。)

Whispersync するための必要条件は次の2つ。
  • EXTH 113 (ASIN) を正しいASINにセット
  • EXTH 501 (cdetype) を 'EBOK' にセット

これを実現するための手順は以下の通り。
  1. mobiperl-win-0.0.43.zip を https://dev.mobileread.com/dist/tompe/mobiperl/ からダウンロードする (このページには Mac 用もあるって書いてあるし、そもそも Perl なんだからどこでも動きそうなものだが、面倒だから試してない。)

  2. ダウンロードした ZIP ファイルを展開すると以下のファイル(と tar ファイル)が出てくる。(必要なのは mobi2mobi.exe だけだけど)

    html2mobi.exe
    lit2mobi.exe
    mobi2html.exe
    mobi2mobi.exe
    mobils.exe
    opf2mobi.exe

  3. .mobi ファイルを mobi2mobi.exe を同じフォルダにコピーする。(万が一のためにオリジナルのファイルは別途保存しておく)

  4. Amazon.com や Amazon.co.jp で ASIN を調べる。"Product Details" のところに書かれているASINを見るか、URLに含まれているASINを使う。今回の対象の本は以下の通りで、ASINはB0043D2E5E。

    JUNOS High Availability
    http://www.amazon.com/dp/B0043D2E5E

  5. コマンドプロンプトを開き以下の通り実行する。

    > mobi2mobi --outfile JUNOS_High_Availability.mobi --exthtype 113 --exthdata "B0043D2E5E" JUNOS_High_Availability.mobi
    > mobi2mobi --outfile JUNOS_High_Availability.mobi --exthtype 501 --exthdata "EBOK" JUNOS_High_Availability.mobi

    もし EXTH フィールドが無いなどのエラーが出る場合はこちら。(こっちは変更じゃなくて追加)

    > mobi2mobi --outfile JUNOS_High_Availability.mobi --addexthtype 113 --exthdata "B0043D2E5E" JUNOS_High_Availability.mobi
    > mobi2mobi --outfile JUNOS_High_Availability.mobi --addexthtype 501 --exthdata "EBOK" JUNOS_High_Availability.mobi

  6. できあがった .mobi ファイルを各デバイスのKindleのフォルダへ持っていく。

    • Android: (といっても、Honeycomb 3.1 デバイスしか持ってないから、他の Android でどうなのかよく分からないけど)とりあえず手元の Kindle for Android では普通に /sdcard/kindle へ上で作った .mobi ファイルを置くだけでファイルを認識した上で Whispersync してくれた。(ファイルを開いて少し読み進み、再度 Library へ戻ると一瞬「Saved furthest location」って表示されるはず。)
    • Mac: ~/Library/Application\ Support/Kindle/My Kindle Content に置いた。"Tools - Sync to Furthest Page Read" を選択(もしくはツールバーにある矢印二つのアイコンをクリック)すると、Sync してることが分かるはず。
    • iPhone: (諸般の事情で iOS 4.3.2 で試してます) Kindle for iPhone にファイルを送り込む方法としては iTunes 経由が一番標準的だろう。(Appタブの下方にある「ファイル共有」から) でもこれだと Whispersync が動かない。(矢印二つアイコンがグレーになっててタップできない) なので代わりに iPhone Explorer を使う。コピーする先は iPhone - Apps - Kindle - Library - eBooks。ここに上で作った .mobi を置いてやればちゃんと Whispersync も動く。(iTunes は Kindle - Documents に置いちゃうらしい。)

  7. 以上でたとえば Oreilly から購入した本でも Mac/iPhone/iPad/Android/Kindle で読んだ場所、ブックマークを共有しながら読み進められる。

以下は mobi2mobi.exe を実行してる様子。
mobi2mobi3.pngmobi2mobi2.pngmobi2mobi1.png
この記事へのコメント

この記事へのトラックバック
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力] (画像の中の文字を半角で入力してください。)



※ブログオーナーが承認したコメントのみ表示されます。
Rebuild at 2018/11/15 19:43
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。