ひとつ前の記事
ひとつ先の記事
Mac/Windows で動く化物語時計ビューアを作りました - 9/ 9 04:11
9月 5日(日)
ScanSnap の自炊 pdf を自動で美白化(レベル補正)する
以前書いたエントリで、うちの断裁スキャンのポリシーは以下であると書きました。
- 拙速主義(サイズ、画質ともに気にしない)
- 袋とじや、折り込みページもスキャンしない(何も考えずにできる事だけをする)
- スキャンは雑誌のみとし、断裁後すぐ捨てる(単行本を切るべきかなどで悩まない)
現在、一ヶ月にスキャンしているコミック誌は70冊程度ですが、これを維持し続けるには、ScanSnap が出力する以上のことはやらないとあらかじめ決めるのが肝要だと思っていたのです。
ところが、先週 Kindle が届いてみるとそうも言ってられず…。
コミック雑誌の紙の色が問題なんですね。iPad や iPhone で読むぶんには紙の色がそのまま表示されますからあまり気にならないんですが、Kindle はグレースケールなので紙の色によってはインクがよく見えないというね…。
そこで「pdf の美白化」をしようと思い立ちました。目標はこれまでのポリシー通り「何も考えずに」やる、です。
例えば、以下の例のように上段の ScanSnap の生出力を、下段のようにホワイトニングするわけです。何も考えずにやるので、カラー情報は失われます。
まあ、みなさんは紙が白い単行本をスキャンされてると思うので、あまり関係ない記事ではありますがが、お付き合いください。
今回は convert を使うので、imagemagick のインストールが必要で、かつ convert で pdf を取り扱うので ghostscript も必要です。
convert -density 150x150 -type GrayScale -linear-stretch 10%x35% -geometry 512x -compress jpeg -quality 80 a.pdf b.pdf
- -density 150x150:pdf から画像を取り出すときの解像度。ScanSnap の読み取りモード「ノーマル」なので150dpi
- -type GrayScale:グレースケール化する
- -linear-stretch 10%x35%:レベル補正。パラメータの意味はこちらが詳しいので参照のこと
- -geometry 640x:横方向のサイズを640に。ここでは iPhone4 向け最適化を同時に狙っている
- -compress jpeg:jpeg 圧縮で格納
- -quality 70:jpeg の品質
オッケー、美白せいこうー。じゃあ、あとはこれをフォルダアクションから実行して…っと、これで目的は達成した…ように見えたのですが…。
小さい pdf なら上記の方法で十分なのですが、1200 ページほどの少年ガンガンとかを変換すると、メモリ 8GB 積んでいる環境でもスワップするほどにメモリを食うんです。あと、gs はなんだか遅いし…。
一行ですまそうとしたのがまずかった。というわけで、一括処理しないで手順を踏んで実行することにしました。今回は、Mac なので Automator のワークフローをつかってみます。
Automator には下のようなアクションがあって、gs より高速に pdf を扱うことができます。
これで出力した jpeg を、テンポラリフォルダに移動させたり、ファイル名に連番をつけたりしたあとで、シェルスクリプト実行のアクションで加工します。たとえばこんな。
# 表紙だけ別処理するためにズル($1はテンポラリフォルダ)
mv $1/page-0001.jpeg $1/page-0001.jpg
convert $1/page-0001.jpg -geometry 640x -quality 70 $1/page-0001.jpg
# 表紙以外はグレースケール化
find "$1" -name "*.jpeg" -exec convert {} -type GrayScale -linear-stretch 10%x35% -geometry 640x -quality 70 {} \;
テンポラリフォルダ内を *.jpeg で find して一個ずつ convert を呼び出すわけですが、ポイントは表紙だけカラーを維持させるために拡張子を jpg に変えて、個別に変換するズルをするところです。
pdf のアイコンが白黒だと寂しいですからね。で、以下のアクションで pdf に戻します。
このワークフローをフォルダアクションに登録して、pdf が所定のフォルダに格納されたら、自動的に以下のように変換する仕組みができました。
たぶん他の人の環境ではそのまま動かないと思いますが、今回のワークフローを置いときます。
ImageMagick-6.6.3 のインストールパス($HOME/ImageMagick-6.6.3)や、出力先ディレクトリ(入力 pdf と同じ階層に light ディレクトリが必要)などを、いじってください。
あと、Automator の「表示」メニューから「変数」を選択すると、変数一覧が出ます。jpeg 品質や解像度などのパラメータはここから編集してください。
これであなたも愛され美白 pdf でモテモテというわけですね!
これまでの断裁スキャン関連記事
- 男の娘オンリーマガジン「わぁい!」が届いたので何も考えず iPad に入れた
- i文庫HDが決定的すぎてやばい & フォルダごとUSB転送する裏技
- ScanSnap で作成した pdf を Mac OS X の標準機能で軽くする & zip に固める
- i文庫/i文庫HDにデータを送り込む最適解はコレ
- Mac での pdf 結合とファイルオープンの関連づけ Tips
- コミック誌オンリー断裁スキャン生活、2ヶ月間のまとめ
- 自炊書籍を podcast にして iPad, iPhone に同期させて読みまくる
- 第3世代 Kindle が届いたのでさっそく自炊雑誌を転送
2010/9/ 5 23:42