[UPDATE2]Kindleの”[free.]kindle.com”を利用してデータ配信する方法と注意点について

もともとKindle3(Kindle Keyboard)のWhispernet経由でデータ配信した際の課金に関するエントリでしたが、Kindle2(Kindle 2nd Generation)、Kindle DX、Kindle4(Kindle)、Kindle Touchの最新状態に併せて内容を修正しました。

Kindleを購入すると本体に紐付くメールアドレス”hoge@kindle.com”と”hoge@free.kindle.com”が設定されています。このアドレス宛に添付ファイル付きのメールを送信したり、定期的に自動配信するサービス等を利用して直接Kindle本体に取り込むことが可能になります。その設定方法と課金される場合の注意点、それから便利な”Personal Document Service”をご紹介します。

Kindleに設定されているアドレスを確認する

購入したKindleデバイスは既にAmazon.comのアカウントでユーザ登録がなされており、デバイス毎にメールアドレスが割り当てられます。このアドレスはKindle本体でSettingsメニュー、またはAmazon.comから”Manage Your Kindle”の”Personal Document Settings”により確認できます。

Manage Your Kindleでは登録デバイスに設定されたアドレスを一覧で確認できます
Send-to-Kindle_Device

“Actions”の”Edit”から初期設定されているアドレスを変更することができます。アドレスの編集画面がポップアップしますので、変更したいアドレスに修正して”UPDATE”ボタンをクリックするだけです。

初期設定されているアドレスを変更することが可能
Rename_send-to-kindle_address

ここに表示されているアドレスは”kindle.com”ですが、同時に”free.kindle.com”も割り当てられています。WIFIのみデバイスでは関係ありませんが、3GタイプのKindleでは”kindle.com”を利用すると米Amazonが提供する”Whispernet”の使用料が課金されることになりますので注意が必要です(後述)。

Kindleへ送信可能な送信元アドレスを登録する

Kindleへ直接送信するためには、SPMAメール対策として送信元アドレスを事前に登録しておく必要があります。自分でメール送信するほかに、Kindleへ定期配信するサードパーティ提供のサービスもありますので、そういうサービスを利用する場合にはその指定アドレスを登録します。

送信元アドレスの一覧
Approved_email_list

追加する場合は”Add a new approved e-mail address”をクリックし、登録したいアドレスを入力します。登録はアドレスの一部(ドメイン等)のみでも可能です。SPAMメール対策なのでできるだけ特定アドレスを設定した方が良さそうです。

送信元アドレスの追加画面
Add_Approved_Email

Kindleへ送信したいファイルを添付してメールする

送信元として登録したメールアカウントからKindleのアドレス宛(free.kindle.comアドレス宛を強くお勧めします)にファイルを添付してメールを送信します。Kindleデバイス、iOSデバイス(Ver2.9以降アプリが必要)へ送信できるファイルフォーマットは以下のように制限されていますので注意してください。Kindleデバイスが読み取れるファイル形式とは異なりますので混同しないように注意。

Microsoft Word (.DOC、.DOCX)
HTML (.HTML、.HTM)
RTF (.RTF)
Text (.TXT)
JPEG (.JPEG、.JPG)
Kindle Format (.MOBI、.AZW)
GIF (.GIF)
PNG (.PNG)
BMP (.BMP)
PDF (.PDF)

PDF以外はKindleへ配信される際にAZW形式に変換されますので、ブックマーク同期やメモ、ハイライトを付けることが可能です。PDFの場合、メール送信時に件名(Subject)に”Convert”とすることでAZW形式に変換して配信することが可能になります。

なお、メール送信時は添付するファイルサイズは50MB以下であること、一度に送信可能なファイル数は25以下でなければなりません。

Kindleでファイルを受信する

KindleがWIFI環境にある場合、メール送信後1〜2分程度でKindleが自動的に受信を始めます。ステータスバーに”Now Downloading”と表示され、ダウンロードが完了するとHOME画面にファイル名が表示されます。受信開始しないようであれば、Settingsメニューから”Sync & Check for Items”を実行するか、一旦電源ボタンを押してスリープモードにしてから再度電源ボタンで復帰するとよいかもしれません。

KindleがWIFI環境にない場合は、WIFI接続復帰時に自動的にダウンロードが始まります。開始されない場合は上と同じ方法でリトライしてみてください。

送信先にfree.kindle.comアドレスを使った方がよい理由

3G接続タイプのKindle2やKindle3(WIFI+3G)、Kindle Touchは、kindle.comアドレス宛にメール送信すればWIFI接続されていない状態でもファイルを受信することが可能です。ただし3G回線経由だと1MBあたりUS$0.99(米国内はUS$0.15)が課金されます。これがやっかいなのは、kindle.comアドレス宛だとWIFI接続されていても課金されてしまうことです。

kindle.com
free.kindle.com
Kindle WIFI+3G版 3G経由で配信。
WIFI接続環境でも課金あり。
送信元にメールなし。
WIFI経由で配信。
課金なし。
送信元にはメールあり。
Kindle WIFI版 WIFI経由で配信。
課金なし。
送信元にメールなし。
WIFI経由で配信。
課金なし。
送信元にはメールあり。

うっかり3GタイプのKindleデバイスの”kindle.com”宛てに送信するとWIFI環境にあっても課金されることになります。そして課金情報は以下のように”Manage Your Kindle”にある”Personal Document Service Charge”に表示されます。ご注意を。

Personal_Doc_Service_Charge

誤ってkindle.comを使って課金されないために

米Amazonがキャリアの3G回線を通じ提供するネットワークをWhispernetと言いますが、3GタイプのKindleデバイス宛に”kindle.com”アドレスを使用するとこのWhispernet経由でファイルが配信されることになり上記の通り課金されます。

誤って課金されないように”Whispernet”を無効化しておくことができます。デフォルトでは”Not enabled”になっていますのでここを自分で変更しない限りは課金されることはありません。また、Whispernetを有効化した場合でも、1回あたりの配信で課金される金額の最大値をあらかじめ設定しておくことができます。

“Manage Your Kindle”の”Personal Document Settings”にある”Whispernet Delivery Options”
Whispernet_delivery_option

Whispernet経由で配信したい場合は、Actionsの”Edit”をクリックすると次のような画面がポップアップしますので、”Enable delivery to my…”にチェック。1回あたりの配信で課金される金額の上限を設定します。”UPDATE”をクリックして完了。

Whispernet Delivery Optionsの設定変更
Option_Enable_Whispernet

公式サイト

英語で記述されていますが最新情報とその詳細は公式サイトで確認してください。

Amazon.com Help: Kindle Personal Documents Service

Amazon.com Help: Transferring, Downloading, and Sending Files to Kindle
Kindle Keyboard(Kindle3)の各種ファイルをデバイスへ配信する方法に関するヘルプ情報ですが、他の機種もほとんど同じです。

追記予定

Personal Document Serviceについては別途追記予定です。

[UPDATE2]Kindle3はやはり日本語ハックが必要なのか?

Kindle3は公式に日本語表示対応(フォント埋め込みしていないPDF形式を除く)していますので、Kindle2/DXで日本語表示のために必要とされていたJailBreak/フォントハックは不要かと思っていました。InstapaperからMOBI形式ファイルを取得してKindle2で表示させる方法(KindleとInstapaperの絶妙な組み合わせ)について、Kindle3での動作確認をしていたところ、残念ながら一部の日本語が文字化けして表示されていました(フォントハック済Kindle2では正しく表示されていることを確認しています)。

IMG_0262

Kindle2にはネイティブのフォントには日本語が組み込まれていなかったため、FontForge等で既存フォントファイルに日本語フォントを合成して自作したもので日本語を表示させていました。Kindle3には次の日本語フォントが用意されています。

  • HeiSeiMaruGoth213_E.ttf
  • HeiSeiMaruGoth213_E_Bold.ttf

Kindle3の英語フォントには日本語で用意されている”plain”と”bold”のほかに、”italic”と”bold italic”があります。今回の文字化けがたまたまMOBI形式ファイルがおかしいために生じたのか、Kindle3内部で代替フォントを適用する変換がおかしいのかわかりませんが、ある条件下では文字化けが発生してしまうようです。


instapaper-font-bake-article

解消方法は、Kindle3の英語フォントに日本語も組み込んでフォントファイルを自作する、またはfont.propertiesの設定を修正してでごまかすかでしょうか。いずれにしてもノーマルなKindle3では不可能ですから、今のFWですとroot化したKindle3が必要となります。ちょっとハードルが高そうです。一番よいのは米AmazonがFWアップデートで対応してくれることなのですが。。。

Updated on October 7, 2010-----
Instapaperから取り込むmobiファイルを表示させると一部文字化けしてしまいますが原因がわかりました。Kindle3からは日本語フォントが実装されていますが、mobiファイル側で指定するフォントに日本語が含まれないため文字化けが発生してしまいます。以下の作業はシリアル接続環境をお勧めします。USBNetworkハックでも可能ですが文鎮化した場合にリカバリーができなくなりますのでご注意ください。作業の前にfont.propertiesはバックアップをとりましょう。

フォントに関する設定ファイル
/usr/java/lib/font.properties
フォントファイルの格納場所
/usr/java/lib/fonts/

Instapaperのインデックス部分の文字化け(一番上の写真)
mobiファイル側ではSerifフォントを参照しており、Kindle側ではfont.propertiesにてCaecilia系フォントを指定していて、日本語が含まれていないため文字化けします。特にここで指定されているのはboldなので、font.propertiesにてserif.1とserif.boldをHeiSeiMaruGoth213_E_Bold.ttfに差し替えれば文字化けは解消します。

Instapaperの本文部分の文字化け(スクリーンショット画像)
同様にmobi側で日本語が含まれないフォントを指定しているために文字化けが発生するようです。インデックスとは異なり、Sans Serifフォントで使用されているHelvetica系フォントです。italic boldなので、font.propertiesのsansserif.3とsansserif.italicboldをHeiSeiMaruGoth213_E_Bold.ttfに差し替えれば文字化けが解消します。

残念ながら、現時点のKindle3には日本語フォントは平成丸ゴシックのplainとboldしかありません。従ってitalicやitalic boldを表現することができません。最低限文字化けしないようにすることは可能ですが、アルファベットも平成丸ゴシックになってしまい洋書を読むのに雰囲気が台無しになります。フォントを自作したくなってしまいますね。

Updated on October 8, 2010-----
KindleのアプリケーションはJava プラットフォームなので物理フォントと論理フォントが存在します。物理フォントは実際のフォントライブラリであり、論理フォントは Java プラットフォームで定義されているSerif、SansSerif、Monospaced、Dialog、DialogInput の 5 つのフォントファミリです。このマッピングを行っているのが”font.properties”であり、物理フォントはfontsディレクトリに格納されています。

Serif Font
Caecilia_LT_65_Medium.ttf
Caecilia_LT_75_Bold.ttf
Caecilia_LT_66_Medium_Italic.ttf
Caecilia_LT_76_Bold=Italic.ttf

SansSerif Font
Helvetica_LT_65_Medium.ttf
Helvetica_LT_75_Bold.ttf
Helvetica_LT_66_Medium_Italic.ttf
Helvetica_LT_76_Bold_Italic.ttf

Monospaced
KindleBlackboxRegular.ttf
KindleBlackboxBold.ttf
KindleBlackboxItalic.ttf
KindleBlackboxBoldItalic.ttf

Dialog
Helvetica_LT_65_Medium.ttf
Helvetica_LT_75_Bold.ttf
Helvetica_LT_66_Medium_Italic.ttf
Helvetica_LT_76_Bold_Italic.ttf

DialogInput
Helvetica_LT_65_Medium.ttf
Helvetica_LT_75_Bold.ttf
Helvetica_LT_66_Medium_Italic.ttf
Helvetica_LT_76_Bold_Italic.ttf

Kindle3の上記の物理フォントライブラリには日本語が含まれておらず、HeiSeiMaruGoth213_E.ttf、HeiSeiMaruGoth213_E_Bold.ttfが用意されております。他の言語もありますので、どのように上記のフォントに差し替えて適用しているのかわかりませんが、ロケール設定かCharsetで識別しているのかもしれません。

日本語が文字化けする原因として考えられるのはmobi等に変換されファイルの本文以外の特定箇所が多言語ファイルに差し替える対象から漏れているために発生してしまうのではないかと思います。この事象がバグなのか分かりませんが、Kindle Storeで日本語書籍の取扱いも噂されており、これが事実とすればこの事象については改善してもらわないとクオリティとしては許容できないような気がします。

続きを読む [UPDATE2]Kindle3はやはり日本語ハックが必要なのか?