概略
Kindle Paperwhiteにazw3/mobi形式のファイルを転送したときに、表紙が消えてしまう問題が発生しました。
中の文章は問題なく読めるのだけれども、表紙がデフォルトのものだとなんだかモチベーションが下がります。
解決策が海外のウェブサイトにあり、私の環境でも効果があったので紹介します。
環境
- Kindle Paperwhite 第11世代
- macOS 11.6.2
- Caribre 5.34.0
現象
Calibre(キャリバー)
このソフトを使って、コンテンツをKindleへ送信しました。
コンテンツはフリーのEpub形式を、Amazon形式(.azw)に変換したもの。
コンテンツの形式としては表紙もついており、Kindleへ転送したあと、Kindleの画面でも表紙が見えます。
しかし、数秒経過すると、Kindleの画面で表紙が以下のような状態に変わってしまいます。
Kindleをmacに接続して、フォルダ構成を見ると"amazon-cover-bug"というフォルダができています。
解決策
Kindleでは、ASIN(Amazon Standard Identification Number)を活用して、コンテンツの情報をAmazonのサイトと連動させているようです。
しかし、このコンテンツではASINが設定されていないため、コンテンツの情報(表紙)をAmazonから取得できないというエラーが発生しているようです。
ただ、このコンテンツはAmazonにおいていない本なので、そもそもASINが存在しません。
そのため、Amazonに対して根本的な解決を望むことはできません。
代替策として、以下のやり方があります。
- Calibreを起動して、Kindleを接続する。
- 読みたい本がKindleにないことをCalibreで確認する。
- Calibreで読みたい本を右クリックする。
- デバイスに送信 -> 特定のフォーマットだけを送る -> メインメモリー -> AZW3 と選択する
- 送信が完了したら、FinderでKindleを開いて"amazon-cover-bug"があることを確認する。
- Calibreで デバイス -> このデバイスの取り出し と選択する。ここで、Calibreは起動しっぱなし。
- Kindleで読みたい本が表紙とともに表示され、表紙が消える(デフォルト表示になる)ことを確認する。
※ 前提として、KindleがWiFiなどを経由してインターネットに繋がっているものとしている。 - KindleのUSBケーブルを外して、再度接続する。
- CalibreでKindleが認識されたことを確認する。
- 再度、Calibreで デバイス -> このデバイスの取り出し と選択する。
- 表紙が復活する。
Kindle内でAmazonにASINを問い合わせてエラーになったあと、再問い合わせはしない仕様になっているようす。
そこで、CalibreからKindleへ表紙データを再送信することで、表紙のデータを上書きしているという内部動作のようです(推測)。
元ネタ