▼ 2011/01/19(水) XMDF形式の電子書籍を無理やり変換してkindleで読む
先日,Amazonの電子書籍リーダーであるkindle3が届いて喜んでいたのですが,日本の電子書籍に多いXMDF形式が読めないのが悔しくて,電子書籍自体の自炊という珍妙な作業を行ってみました.
おおまかな手順としては
おおまかな手順としては
- 電子書籍準備
- ブンコビューアでページを送りながら全てスクリーンショットをとる
- トリミングする
- pdfに変換
■ブンコビューアでスクリーンショットを撮る
準備した電子書籍をブンコビューアで読み込み,スクリーンショットを撮っていきます.人の手で何百頁もスクリーンショットを撮っていくのはただの拷問なので,UWSC Free版という自動化ソフトの手を借りました.
なお,kindleの画面に合わせるためブンコビューアは可能な限り小さいサイズ(800*600?)にし,右上の三角を押してメニューを隠した状態で作業を行いました.
dir = "c:\book\title"//保存フォルダ
page = 500//ページ数のパラメータ
wait=0.2//ウェイトタイム 0.2sec
while True
ifb GETKEYSTATE(VK_UP)
for count = 1 to page
id = GETID(GET_ACTIVE_WIN)
SAVEIMG(dir+"/"+count, id, , , , , , 85)//圧縮率85%
KBD(VK_LEFT)
Sleep(wait) //ウェイトタイム
next
endif
Sleep(0.2)
wend
参考に私が使ったスクリプトを置いておきます.UWSCでこのスクリプトを実行した後,ブンコビューアをアクティブした状態でキーボードの上ボタンを押せば,ページ送りながらpageで指定したパラメータ分の枚数の画像がdirに指定したフォルダに保存されていく仕様です.
ウェイトタイムはPCのスペックと相談しながら調整してください.
■トリミング
スクリーンショットを撮ったままだと,上や下のバーが邪魔なので,文字の部分だけを切り出します.この作業にはVIXを使いました.
VIX上で画像を保存したフォルダまで移動し,Ctrl+Aなどで全体を選択します.
メニューから「画像」→「総合変換」としてウィンドウを開きます.
次にフォーマットのタブでJPEGを選択し,トリミング等のタブで「トリミングを行う」をチェックを入れ,今回は画像サイズを横795,縦484とし,切り出し位置をX2,Y55としました.この位置は環境によって調整が必要かもしれません.
後はOKを押せば一括でトリミングが行われるはずです.
■pdfに変換する
画像をpdfに変換するためにChainLPを使用しました.最初にインストールする際はiTextSharp.dllをChainLPを解凍したフォルダに置くことを忘れないようにしましょう.
使い方は見れば大体わかるかと思います.
右上の「入力」ボタンで画像を読み込み,pdfを指定して「出力」ボタンを押せばpdfにまとめられて出力してくれます.
著者,タイトル,その他はお好みで設定をしてください.
■最後に
全体の作業時間は,本の長さにもよりますが薄い文庫本程度の文量だと10分程度でした.著作権が何となく怖いのでどんな風に表示されてるかの写真は準備しませんでしたが,見栄えに関してはスクリーンショットで撮っているだけなので当たり前に結構滲みます.
また,ブンコビューアのサイズが800*600が最少なので横長でスクリーンショットを撮らねばらならず,縦書きの文章を読むのにちょっと違和感があります(^^;
それでも個人的にはまぁ普通に読める範囲だとは思いますので,ちょっと手間をかけてでもkindleで読みたいんだ!という奇特な方は是非試してみるといいのではないかと思います.
- TB-URL http://javatea.blog.abk.nu/046/tb/

1: ひろこ 2011年07月23日(土) 午後0時48分
初めまして。半年以上も前の記事にコメントすみません。
事情があって今とても切実に日本語の本をkindleで読みたいんですが、この記事に書いてある方法は、XDMF以外にも、例えばドットブックやブックエンド方式など、他のファイル形式にも応用できますか?
また、この方法は難しいですか?私はあまりパソコンは得意ではないのですが。
2: nucho 2011年07月24日(日) 深夜1時20分
はじめまして,コメントありがとうございます.
>例えばドットブックやブックエンド方式など、他のファイル形式にも応用できますか?
まずこの方法について簡単に説明すると,PC上に表示された画面を写真のように撮って,繋げるといったことをしています.
なので,PCで読むことが出来る電子書籍ならばこの方法は利用できるかなと思います.
>また、この方法は難しいですか?私はあまりパソコンは得意ではないのですが。
私自身は根気があれば決して難しいとは思いませんが,難しさの感じ方は人それぞれですので何とも……
すいません(^^;
3: ひろこ 2011年08月10日(水) 午後10時13分
レスありがとうございます。
そうですよね、一応原理は理解していたのでできるだろうなとは思っていたのですが、「XMDF形式」と書いてあったので、他のだとできない事情があるのかもと思ってしまいました。
とりあえず試してみます!ありがとうございました。