Desire for wealth

Last-Modified: Tuesday, 27-Jun-2023 21:05:01 JST / PV : 23657697 / Owner : Nihondo

だめちゅんにっき

ひとつ前の記事

iTunes のかゆいところに手が届く Tune-up iTunes (Mac/Win) 10.0.0 アップデート - 9/ 3 15:49

ひとつ先の記事

Mac/Windows で動く化物語時計ビューアを作りました - 9/ 9 04:11

9月 5日(日)

ScanSnap の自炊 pdf を自動で美白化(レベル補正)する

以前書いたエントリで、うちの断裁スキャンのポリシーは以下であると書きました。

  • 拙速主義(サイズ、画質ともに気にしない
  • 袋とじや、折り込みページもスキャンしない(何も考えずにできる事だけをする
  • スキャンは雑誌のみとし、断裁後すぐ捨てる(単行本を切るべきかなどで悩まない

現在、一ヶ月にスキャンしているコミック誌は70冊程度ですが、これを維持し続けるには、ScanSnap が出力する以上のことはやらないとあらかじめ決めるのが肝要だと思っていたのです。

ところが、先週 Kindle が届いてみるとそうも言ってられず…。

コミック雑誌の紙の色が問題なんですね。iPad や iPhone で読むぶんには紙の色がそのまま表示されますからあまり気にならないんですが、Kindle はグレースケールなので紙の色によってはインクがよく見えないというね…。

そこで「pdf の美白化」をしようと思い立ちました。目標はこれまでのポリシー通り「何も考えずに」やる、です。

例えば、以下の例のように上段の ScanSnap の生出力を、下段のようにホワイトニングするわけです。何も考えずにやるので、カラー情報は失われます

まあ、みなさんは紙が白い単行本をスキャンされてると思うので、あまり関係ない記事ではありますがが、お付き合いください。

今回は convert を使うので、imagemagick のインストールが必要で、かつ convert で pdf を取り扱うので ghostscript も必要です。

pdf の画像のレベル補正を行う
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 を、テンポラリフォルダに移動させたり、ファイル名に連番をつけたりしたあとで、シェルスクリプト実行のアクションで加工します。たとえばこんな。

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 でモテモテというわけですね!

これまでの断裁スキャン関連記事

2010/9/ 5 23:42

このエントリーをはてなブックマークに追加

最近の記事

サンスイのBluetoothラジカセで超A&Gを聴いて昭和感を出す - 11/28 18:03

ゆかりはゆかり かわりはいないの - 9/28 00:30

超時空要塞マクロス 初のオケコン「超時空管弦楽」で涙腺決壊 - 9/18 00:30

東富士演習場で聴く「戦車道行進曲!パンツァーフォー!」は格別 - 8/29 02:28

GPD PocketにOS Xの画面を表示してみたけど年齢的にRetina化が必須 - 8/20 23:51

Nintendo Switchおでかけセットを模索(GPD Pocket/Winでも) - 8/13 19:18

エロマンガ先生 BD 2巻特典CDの耳かき音声が期待以上のものだった - 8/ 7 01:08

iPhoneの非純正リモートプレイアプリでドラクエXIする - 7/30 11:42

「道-MEN 北海道を喰いにきた乙女」はみよしのファンとゆかりんファンは読むべき - 7/23 23:54

スプラトゥーン2の付録めあてでコロコロコミックを30数年ぶりに買った話 - 7/15 23:00

さらに以前の記事へ