電子書籍自炊メモ 2014 (バッチで自動化編)

再びマイ自炊ブームが来たので作業内容をメモっておく。(久しぶりにやったら完全に忘れてた)
機材は以前メモってた内容と同じで、ScanSnap1500、ディスクカッターCanoScan 5600F、Photoshop(CC2014)です。
クォリティよりスピード重視で、スキャン後の処理をバッチで自動化させました。

裁断については前の記事に書いてあるので割愛。

全体の流れ

  1. 表紙、裏表紙のスキャン(CanoScan)
  2. 裁断
  3. 裁断チェック
  4. 表紙、裏表紙を外して中身だけScanSnapにセット
  5. 本文スキャン(ScanSnap)
  6. フォルダに振り分け
  7. 画像編集(Photoshop)
  8. 圧縮
  9. 転送

作業の流れは3年前とそう変わってないけど、使うソフトが定まった事とバッチの作成でかなりスピードアップ。
バッチは6以降の処理で使う。

スキャナの設定

スキャナ設定

CanoScan5600Fを使用すると自動でBMPファイルが保存される。
BMPは表紙・裏表紙などカラーのソースファイルとしてScanSnapディレクトリに保存するように設定しておく。

読み込みは300dpiにした。ScanSnapの設定と合わせるのがいいと思う。
表紙は1.jpg、裏表紙は999.jpg、中カラーは2.jpgという名前でScanSnapディレクトリに書きだす。

ScanSnapの設定

ドライバーをインストールして本体と接続。
タスクバーのアイコンを右クリックして、「スキャンボタンの設定」を選択する。

アプリ選択

アプリ選択タブ

ファイルの保存だけしたいので起動しない。

保存先

保存先

どこでもいいが、日本語やスペースが含まれていないディレクトリを指定する。
ファイル名は 「自分で名前をつけます」の連番1桁にしておく。

読み取りモード

読み取りモード

画質はスーパーファイン。品質重視ならエクセレントにすればいいが、読み込みに時間かかるのでおすすめはしない。
中身だけ読み込むのでカラーモードはグレーにして、両面読み取り。
継続読み取りにチェックをいれておく。これで分割して読み込みができるようになる。
継続読み込みを含む最大読み込みページ数は1000ページらしい。

読み取りモードオプション

向きの自動補正はしない。白紙削除をONにしているが、遊び紙もきっちり含めるならOFFにしておくこと。

ファイル形式

ファイル形式

JPEG。PDFは画像編集出来ないんだよね。

原稿

原稿

サイズ自動検出にしておく。ここは特に変えることない。

ファイルサイズ

ファイルサイズ

あとで編集をするので圧縮率は最低にしておく。

このような設定で単行本をスキャンすると3~4回に分けて読み取ることになります:

スキャン中

スキャンが終わって画像が保存されると、保存先のフォルダ内はこんな感じになる:

ScanSnapの保存先ディレクトリの様子

表紙を1.jpgに、中カラーを2.jpgにしておくと、ScanSnapで読み込まれた本文ファイル名は2.jpgないし3.jpgから開始される。

特定のフォルダに指定した命名規則で保存することしかできない。
そのため、例えば「タイトル【著者】」と命名したフォルダに保存したいって思ったら、フォルダ作って名前編集して保存先の設定を都度変えるかスキャン後にファイルを移動するっていう手順をとらないといけない。
確か3年前はこれ手作業でやってた気がする。当時はクォリティ重視だったけど、スピード重視の今はさすがに……。
バッチ作ろうと思ったのは3冊くらいでうんざりしたのがきっかけだ。

バッチでは質問形式でディレクトリ作成とファイル移動を行う:

自炊バッチ1

画像編集

Photoshopの自炊編集用アクションをドロップレットとして保存しておくと、処理したい画像ファイルを投げるだけで勝手にアクション実行してくれる。
表紙背表紙はカラーで他はモノクロだとすれば、カラー用とモノクロ用の編集アクションを作成しておけばおkということになる。
ついでにカラー調整をあんまりしないアクションも用意しておくと、トーン調整などで色が変わってしまう微妙なカラーにも対応できる。
背側の余白切りもページ番号で判別すればアクションを変えられる。

自炊用ドロップレット

ドロップレットファイルはexeなのでつまりコマンドで実行できるということです。

start /wait /b drop.exe %CD%\FileName.jpg

startコマンドで実行したいドロップレットのexe指定して、パラメーターでファイルを投げれば動く。
ファイル名はフルパスじゃないとダメです。複数指定するときはスペースで区切る。

カラーと本文でアクションを分けたかったので、質問の答えで分岐させることにした:

自炊バッチファイル2

50ページ程度の薄さならいいんだけど、普通の単行本みたいに数百ページもあるとアクション実行の負荷がヤバいことになるので、数十ページずつ分割して処理をさせるようにした:

自炊バッチ3

Photoshopの処理を確実に待ちたかったので、ドロップレット実行させたらpauseで処理を止める。

自炊バッチ4

処理が終わってから適当なキーを押せば次のループの処理を繰り返す。

圧縮

コマンドラインでZIP圧縮することはできない。というのも、dllはあって解凍はできるのに圧縮は公開されてないからだ…。ってなんでやねん。
仕方ないのでコマンドラインで実行出来る7-Zipのコマンドライン版を同じディレクトリに置いて使用している。

転送

ここはアプリによりけりだと思う。
私はComicGrass使ってるので、外部HDDのフォルダをMediaServerに設定してバックアップと端末への転送をやっつけている。
バックアップ先のフォルダが確定しているなら、zipファイルの移動もコマンドでできますね。

ダウンロード

バッチファイル:https://github.com/Tenderfeel/ScanSnap
ドロップレット:https://dl.dropboxusercontent.com/u/414239/dropret.zip