Get Adobe Flash player

Archive for 11月 2009

kindle近況とC#

先週から、おとなしくなっていたが、別に飽きて使っていなかったわけじゃない。せっせと、「Programming C#3.0」を、通勤の行き帰りの電車の中でも、バスの中でも読んでいる、それ以外では読んでいないけど、なんだかんだで日に1時間ほどは読んでいると思う。まぁ、それが長いか?と言われると「あはは」と笑ってごまかすしかないが、それでも割りと着実で何とか20%ほどは読み終えた。

が、正直なところ、まだ初心者向けの内容でちょっとおもしろくない。ま、C#について知らなかったことも、ぽつぽつと出てくるので、たとえば、

  1. internal アクセス修飾
  2. メソッド引数の参照渡しでは、仮引数宣言にも、実際のメソッドコールの方の引数にも ref修飾がいる
  3. 同じくメソッド引数の参照渡しのout修飾(これもコール側にも必要)

なんてのは、知らなかったし、そうそう、あと、あるクラスのstaticメソッドに、同じクラスのインスタンスを引数で渡すと、そのインスタンスのprivateメンバにアクセスできるなんていうのも、実は知らなかった…。

おっと、それはいいとして、そういうわけで、実はkindleの日本語化とか、日本語のhtmlをpdfやmobipocket形式にして読むなんてことを、いろいろ試していたのだが、結局本来の使い方、すなわち AmazonのKindle Storeで購入した本を英文で読むというのが、使っている時間の大部分というか、この1週間ほどは、ほぼ100%となってしまっていて、そういうわけで、ファームもオリジナルに戻してしまった。やはり、オリジナルの英字フォントが読みやすいなってことで。

関係ないけど、木漏れ日がきれいだったので。E-410だったりする。

関係ないけど、木漏れ日がきれいだったので。E-410だったりする。

kindleのためのMobipocket Creator

前に書いたように、PDFを xxx@free.kindle.comに送って、azw形式に変換すると、英語・日本語に関係なく、表組みの属性がなくなってしまう。さらに言うと、同一文書中へのリンクの情報も消えてしまう。どちらも本当なら残っていてくれると大変大変ありがたいのだが…と思っていた。

が、思わぬ方向から解決策が現れてくれた。実は、kindleで読むことができるe-Bookの形式に、mobipocket形式というのがある、らしい。英語を含むヨーロッパ圏では「グーテンベルグ・プロジェクト」つって、著作権の切れた文書を、ボランティアというか有志の皆様方ががんがん電子化しているらしいのだが、それらが、このmobipocket形式で公開されているらしい。なんでも、当初からライセンスなどで囲い込まないというポリシーで、こういう風に使われるようになった…らしい。あんまり自信はないのだが。

で、このmobipocket形式って、そういう経緯もあって、多くの電子ブックリーダーで読めるらしいのだが、kindleも同様、っていうか、たぶん azw形式って、まさしく mobipocket形式と同じであるような気がする。いや、もしかしてkindle-book全部そういうことなのかな?どっかに書いてあったような気がするが…。

さらに今回これが役に立ってくれたのは、無料で公開されている、mobipocket形式のファイルを、さまざまなソースから作成するmobipocket createrなるソフトウェア。変換元として、MSWord, plain-text, HTML, PDFが選べるのだが、HTMLから変換すると、リンクの情報や表組みの情報を使って mobipocket化してくれるのだ。

こんな感じでなかなか悪くない

こんな感じでなかなか悪くない

自分の場合、WEBページ⇒PDF⇒azwと変換していたわけだが、WEBページ⇒mobipocketと直接変換することで、あとはkindleに転送すれば、リンクや表組みを残したまま閲覧できるようになった。まぁ、実際は WEBページを一旦HTMLにしてやらなくてはならないし、実はそうして作成したHTMLからebookとしてはあまり役に立たない、むしろ邪魔になるサイドバーの部分とか削除したりしなくてはならないのだが、逆にPDFじゃなくて、HTMLだからテキストエディタでバッサリ消せるとも考えられる(ただし、下手すると、HTMLタグの対応が崩れてしまう可能性も高いが)で、繰り返しになるが、表組みの部分も罫線はなくなるが、形式が崩れることはないし、冒頭の目次リンクもちゃんとたどることができる。ちょっといただけないのは、またもや例の□がちらほらと本文の途中とかに現れるくらいかな。気にならないこともないが、大きな弊害ではない。

そういうわけで、Mobipocket Createrのおかげでますますkindleで資料などを持ち出す利便性が高まったと、そういうお話。

おっと、おまけで、kindleへのファイルの転送や充電には、kindleに刺さるusbケーブルが必要なのだが、kindle本体の方のUSBのジャックは、いわゆる「microUSB」という規格らしい。一昔前に買っておいたUSB4徳コネクタキットには、この新参の「microUSB」がなくて、しくしく。amazon.co.jpとかで探すと、miniUSB⇒microUSBの変換アダプタが見つかる。

が…、ふと思い出した。そういえば、この前まで使っていた WILLCOM03がこのmicroUSBだったはず。が…、ない…ケーブルがない…。 と、必死に探して、ようやく本体に付属してきた充電器と、PCに接続するケーブルを発掘してきた。これで、とりあえず、AC電源からも、USBからも充電できるし、部屋のPCでもkindleにデータを注入することができる。(基本的にリビングのノートPCだけにkindleはつなごうと思っていた―っていうか、そもそもPCにつながずに充電しかしないくらいの勢いだったのだが、結局そうはいかないようだ)。

昨夜、会社からの帰りにホームと電車の中で取り出して読んでみたが、車内はちょっと暗いかな、本ほどのコントラストがないので、字が小さいとちょっときびしい。むしろ、ホームの方が読みやすかった気がする。そこそこ混んではいたが、一応座ることができたので両手を使って読むには何の問題もなかった。ただ、割と混んでいる車内で片手は吊革という状態だと微妙にきびしいかもしれない。少なくとも片手なので、辞書引きなどはできない、ページの前後のみとなる。朝の通勤は座れるってことはないので、今の時間の電車に慣れてきたら試してみようと思う。(11月から出勤時刻が変わったので)

そこで、実はちょっと前から残念に思っているのが、ストラップホールがないこと。これってやっぱ日本でだけ需要が高いのかな、iPhoneとかでも騒がれていたが、基本的に向こうのものってストラップホールがないものらしい。kindleを電車で読むのなら、ぜひストラップをつけたいのだが、どうしたものか思案中。頑丈なストラップホール付の部品みたいなもの(それも極小の)を瞬間接着剤とかでくっつけたらよさそうだと思うのだが、まだ、そういうものは売られていないようだ、まぁ、あまり需要があるとも思えないが。自分でプラ板を加工してつくる?いやいや、さすがにそれは…。なんか、ちょうどいい部品ってないものかなぁ~。

さてさて、C#も読まなくちゃ。

kindle, kindle, kindle!!

っていうことで、kindleにはまりまくり。実際、明日からの新プロジェクトの準備で、最新の.NET事情とか、C#のこととかを一通り情報収集しておかなければならない、そのためのkindleゲットだったのだが、主客逆転というか、本末転倒というか、手段の目的化というか…。

ま、そうは言いつつ本来の目的も果たしながら、気づいたことをいくつか。まず、PCでPDF化したWebページを、XXX@free.kindle.comにメールして、自分のkindleで読めるようにしたファイルなのだが、2つほど不都合な点を発見してしまった。

PB015021

そんなにかぁ~(笑)

まずは、日本語PDF特有なのだろうと思われる現象。左の写真で見てもらえばわかるように、chapter見出しの、一部の日本語の文字がなぜか複数文字繰り返されてしまう。

これは、今のところ、このような見出し部分でしか起こっていない。もともとのPDFの段階でおかしいのかと思ったのだが、見てのとおり、PC上のAcrobat-Readerでは問題ないようだ。単純に考えると、amazonでのPDF⇒azwの変換でおかしくなっていることになる。おかしなことって言ったけど、そもそもamazonがサポートしていない使い方をしているんだから、「おかしなこと」なんて言ったら失礼なのだが。

PB015025

Acrobat-Readerで元のPDFを見ると正常

ただ、それがamazonの変換メソッドに問題があるのか、もともとのPDFの形式に問題があるのかまではわからない。それほど、致命的ではない、っていうか、なかなか微笑ましいって言ってもいいくらいだから、あまり気にはしていない。

で、もうひとつの問題は、英語・日本語に関係ない話で、場合によってはちょっと悲しいかもしれない問題。それは、PDF上の「表」すなわち、Tableがまったく「表」として変換されないのだ。そういえば、そもそもPDF≒Postscriptは表っていう概念はないんだったかな?そんなこともなさそうだが。いや、やっぱり最終的には罫線と文字の組み合わせになっちゃっていたかな?そうだとすると、それこそPDFリーダーとしてそのまま動かないと表示は難しそうだ。kindle DXではちゃんと出るのかな?

これがPDF上の表組み

これがPDF上の表組み

表組みがのべた~んと表示されちゃう

表組みがのべた~んと表示されちゃう

これは、実はかなりいただけない仕様なのだが、そういうわけでやむをえないかという気がしている。とりあえずの救いは、元のPDFではちゃんと見えているので、そもそもどんな表だったか、さっぱりわからないってことはないこと。だから、まぁ、必要なときはPC上のブラウザかPDFリーダーで見ればすむこと。変換して見た場合にのみ起こる現象ってことは、見ようと思えばオリジナルを見られるわけだから、どうしようもないってことにはならないわけだ。Webページの方はなくなっちゃう可能性もあるから、もとのPDFは整理して取っておくのが吉ってことになるのだろう。

で、実はもうひとつ。kindle-bookとして購入した「Programming C#3.0」をせっせと読み進めているのだが、やはりびっくりするくらい読みやすい。まぁ、あらゆるPC関係の原書がこのくらい読みやすいのかは疑わしいけれど、次を読むための動機にはなるなぁ~。前にも書いたけど、英英辞書が期待以上に役に立ってくれているのも、かなりある。

PB015038

コードの部分が薄くて読みにくい

で、ちょっとした問題がひとつ。見てのとおり、内容中にあるプログラムコードは色が薄くなっているのだが、日本語Hackを入れて、フォントが細くなったせいで非常に見づらいのだ。

「Programming C#3.0」の場合、フォントを最小にしても本文の部分は、普通に読めるし、というか、あまりフォントを大きくすると1行にはいるワード数が減ってしまい、ワードラップしまくりで逆に読みにくくなるのもあって、最小サイズで読んでいるのだが、このプログラムコード部分の見えにくさは、さすがに残念感が大きい。コードをちゃんと観たい場合は、フォントを1サイズ大きくして見るしか、今のところ手がないと思っている。

あ~、いかん「ジェリコ」のDVDを観なくちゃ。

結局日本語Hack適用

結局なるようになるわけで…。見てのとおり、日本語Hackを導入してしまった。

最初mixiで紹介されていたのはUnicode Fonts hackで、farmwareの勝手変更を許すようにするhackが置いてあるのが、このサイトである。ここでは、二つのファームが公開されているのだが、一つは、欧州圏用で、アジアフォントが入っていないので、いわゆる漢字は出ない。そして、もうひとつがアジアフォントを含んでいるものということになる。日本語を表示させるのが目的であれば、もちろん後者ということになる。

その後、mixiにてもうひとつ紹介されたのが「Kindle 2 国際版へのM+IPAフォント導入はっく」であり、jailbreakは、先に紹介したページから取得するのだが、Unicode Font Hackのファーム自体は自分で作成して公開されているようだ。

前者の場合の問題は、作者の方の趣味で、Webブラウザは自分は要らないもんね~とばっさり削除されてしまったいること。たしかに、ちょっとリッチなページになると表示できないし、実は mixiとかも、なんかブラウザタイプを見ているからなのか、まったく表示できかったり、また前にも書いたように大きなページを見ていると、いきなりkindle自体がリブートしてしまう(2回目を経験した…)なんて、ちょっと不安定な感じもあるので、「いらね~」っていう意見もわからないではないが、個人的には、そうはいうもののやはり制限はあっても使えた方が良かったりもする。

そこで、後者となるのだが、こちらはWebブラウザもちゃんと入っている状態で配布されているので、日本語もWebもと欲張りできる。

そういうわけで、とりあえず後者をインストールして見ることにした。基本的にはkindleのストレージとしてPCに接続し、上のサイトからいただいてきた*.binファイルを、ルートディレクトリに配置して、またkindleをスタンドアロンに戻して、HOME→MENU→Setting→MENU→Update だったかな?そういう手順で組み込まれていく。最初の jailbreakのUpdateでは Update Failedとなるが、これはそういうものらしい。

で、割と短い時間ではあったが、ちょっとハラハラしながらインストール完了。まず、驚いたのは、英字のフォントも変更されてしまうこと。だから、日本語のコンテンツを見るまでもなく、起動直後の最初のHOME画面で「前とは違う」のが認識できる。だが、正直、フォントが細身になって、英文は少し読みにくくなったかもしれない。日本語がゴシックなのでそれにあわせてあるのだろう。

で、さっそく、まずはWebブラウザを立ち上げて、日本語ページを表示させて見た。まずは、iGoogleのモバイルページを見ると、ちゃんと日本語も表示されている。一応、これで日本語のページもひととり見ることができるというわけだ。フォントサイズは2番目に小さいサイズにするとちょうどいい感じ。一番小さいサイズでは、ほとんど読めなくなるし。

で、次に試したのが、日本語のPDFファイル。繰り返しになるが、大きなページはこのブラウザには荷が重いらしく、いろいろ不都合もあるし、また読むのにもあまり適さない。そこで、こういうガッツリ読むためのページは、PC上で、一旦PDFとしてファイルに書き出し、それを xxxx@free.kindle.com に送ってから、kindleにコピーして読むのが一番だからだ。

上の写真のとおり、これも問題なく読むことができた。これで、kindleも「使いで」が相当アップした。

で、最後に昨日購入した kindle-book の “Programming C#3.0″の続きをこの新しいフォントで読んでみることにした。正直、前のフォントの方が読みやすいという気持ちは変わらないが、慣れてくるもので、だんだん気にならなくなってきてしまう感じはある。ただし、少し問題が…。それは、上の写真にもあるが、一部「□」が表示されるのだ。どうも、非表示の制御文字(おそらくは、ここでline breakしたらだめよっていう「tie」じゃないかと思われる)があるらしく、対応するUnicodeフォントがないのだろう。こういう不正な表示になってしまうようだ。救いは本文にはほとんど登場しないってことだろうか。

と、思ったら、付属の英英辞書の表示が、この「□」の嵐になるなぁ~、内容がわからなくなるほどではないのだが、目障りで仕方がない、慣れちゃうことができるかなぁ~。

いや~、こうなると、本当に kindle 大正解だった。

Get Adobe Flash playerPlugin by wpburn.com wordpress themes