スキャンしたJPEGを縮小してzipで固めるGroovyスクリプト
念願のAndroid Tablet(ICONIA TAB A500)を入手し、本格的な自炊生活に突入しました。以前から裁断機とScanSnapは準備してあったのですが、やはりビューアーがあるとやる気が出ますね。
技術書などは検索可能PDFにするのでScanSnapの付属ソフトだけで後処理まで完了なのですが、漫画本は作業効率(ページ単位でのスキャンチェック)や汎用性を考慮してJPEGのzip圧縮で運用しています。
スキャンは300dpiで行っているので、そのままだとファイルサイズが1ページあたり500KBなので、200ページの本だと全体で100MB程度になります。これではちょっとサイズが大きすぎるので、Tabletで参照するための縮小バージョンを作成しています。
JPEGはすでに十分圧縮がかかっているので、単純にピクセル数を間引けばサイズが縮小できます。この作業を一括で行える汎用ツールを探したのですが、なかなか目的に見合ったものが見つかりません。探すのも疲れたのでGroovyで軽く自作してみました。
JPEGサイズ縮小スクリプト
指定されたディレクトリ以下の階層をたどって、すべてのJPEGファイルを変換します。
javax.imageio.ImageIOを使ってます。圧縮率は縦横1/2で固定(中途半端な倍率だとかえって画質が落ちるので)。
変換後のファイル名は、s+(変換元ファイル名)に決めうちです。ファイル名がsで始まるものは処理済とみなして無視します。
最適化など特に行っておらず、とりあえず「動く」レベルのものですが、私の環境(Core i7 2.8Gx4core)では1冊分の加工に約4分ほどです。動かして放置しておけばよいので、当面はこれで十分。
フォルダごとにzipで固めるスクリプト
指定されたディレクトリ直下にあるすべてのディレクトリを、ディレクトリ単位でzipにします。
AntBuilderを使えば簡単ですね。
zipファイル名は、(対象ディレクトリ).zipに決めうちです。
参考:愛用のTablet
3万円台後半で購入できます。Tegra2なので中身はXoomやRegza Tabletと大差ないです。お買い得。
acer【アイコニア】ICONIA タブレットPC シルバー ICONIA TAB A500-10S16
- 出版社/メーカー: 日本エイサー
- 発売日: 2011/07/01
- メディア: Personal Computers
- 購入: 2人 クリック: 6,381回
- この商品を含むブログ (33件) を見る