読者です 読者をやめる 読者になる 読者になる

無料で始める研究者のための自炊技術 (2011 年 1 月暫定版)

研究者や大学院生を対象に書きますが、その他の分野の人にも参考になると思います。「なんだ、こんな情報は既にネット上にいくらでも転がってるよ」と思われる方は、最後の PDF/X の記述だけ読めば十分です。PDF/X で吐き出すことで、iPad でも爆速になります

やりたいこと

次の項目のどれかに該当する人は、この記事をご一読下さい。

  • 画像 PDF になっている古い論文、文献を検索可能にしたい
  • 画像 PDF は scroll、拡大縮小が重いので軽くしたい (特に iPadiPhone で)
  • もっと綺麗な font で読みたい
  • 手持ちの書籍を自炊してみたい
  • ScanSnapAcrobat を買ったは良いが、最適の設定を知りたい

私の自炊歴はまだ 5 冊くらいですので、まだまだ経験は少ないです。しかし、2011 年現在の最適解は見つけたので、以下つらつらと書きます。いくつか問題もあるので、それらも念頭に自炊されることをお勧めします。

自炊技術の習得が必要となる動機

1990 年代後半以降の論文は、必ずと言っていいほど PDF で入手できます。文字情報は全て vector なので、表示は軽いし当然検索も可能です。しかしちょっと古い論文だと、scan したもののみが配布されており、文字や図は汚く、表示は重たく、検索もできないのは周知の通りです*1。天文系の場合、古い論文は無料で ADS から取ってこれますが、同じ問題を抱えています。自分で裁断と scan をした書籍を読む場合も同様です。

例えば、600 dpi で scan された白黒の論文なんてのは、そのままで iPad で表示すると使い物になりません。最新の Mac で表示したって重いんですから、iPad ではなおさらです。

古い論文や市販の教科書だって、もっと検索したり、会議中に読んだり、出張先でふと開いたりしたいですよね。iPad 的な文化がさらに発展すれば、きっと紙でみんな読まなくなるので、今から準備しておきましょう。

用意するもの

  • Acrobat X (Windows 版は無料体験版が 30 日間利用可能、Acrobat 9 じゃなくて X 推奨)
  • ScanSnap S1500 もしくは、大学のどこかに既にある複合機
  • Mac もしくは Windows
  • カッター
  • 大学のどこかに既にある裁断機

Acrobat X は体験版使えば無料なので、特に初期投資なしで始められるはずです。複合機も裁断機もないという人は、残念ですが買って下さい。

手順

やることはいたって単純です。多分、4 つ目の項目は世界初の発見。

  1. 本を裁断する
  2. 本を scan して PDF にする
  3. PDF を Acrobat X で OCR (ClearScan) にかける
  4. PDF/X で出力し直してさらに軽くする

本の自炊ではなく、ネット上にある古い論文の PDF で試す場合は、3. からです。

1. 本を裁断する

Paperback の場合、表紙、背表紙、裏表紙を丁寧に手で剥がします。1 枚の厚紙で出来ているので、3 者がバラバラにならないように、綺麗に剥がします。表紙を剥すと、ページを繋いでいる糊が背表紙側に見えるはずです。

もし裁断機が 5 mm までしか切れないものならば、5 mm 分のページだけ全体から切り取ります。切り出したいページの繋ぎ目を 360 度くらい十分に開き、両手で糊をちぎっていけば綺麗に分離できます。少なくとも、アメリカ製の paperback はこれでいけます。もし糊の接着が強固であれば、カッターで少し補助してやると楽にいけます。

このとき、カッターで無理やり切ろうとすると、紙を斜めに切ってしまったりするので、注意が必要です。力を入れ過ぎないのがコツ。

Hardcover の場合、表紙と本体をカッターで分離します。ページ本体の最初のページが、表紙、裏表紙それぞれの裏面*2で張り付いているはずです。これをカッターで綺麗に切ると、ページ本体と表紙が分離されます。Hardcover の場合、背表紙側の糊付けが強固なはずです。カッターで無理やり切るとやはり斜めになるので、丁寧に裁断機の厚みずつ切り出します。

最初は時間がかかりますが、カッターの使い方に慣れれば、1 冊あたり 5 分くらいでバラバラにできます。繰り返しますが、hardcover でも paperback でも、力を入れ過ぎない、丁寧にやるというのが重要です。

バラバラになった本は、まだページ同士が糊でくっついているので、裁断機で糊の部分を裁断します。裁断機を使う上での注意点は、大量のページを一度に裁断しようとせず、許容量の範囲内で裁断すること。そうしないと、まっすぐに裁断できません。また、糊を絶対に残さないように余裕を持って余白を切り落とすこと。そうしないと、scan するときに scanner の読み取り面を汚したり、画像が斜めになったり、紙づまりを起こしたり、重送*3したりします。

2. Scan する

ここでは、ScanSnap S1500 を使った方法を解説します。複合機や他の製品を使う場合には、必ずしも当てはまりませんが、いくつかの注意点は共通だと思います。

理学書や古い論文の場合、基本的には本文も図も白黒、たまに gray scale の図が混じり、さらにたまに color の口絵が載っているという場合がほとんどだと思います。そのため、原則として ScanSnap の設定は「白黒」、「エクセレント」でやります。そんなに解像度は要らんと思うかもしれませんが、後ほど OCR をかけるときに強制的に 600 dpi に downsampling されるので、600 dpi より高い解像度が望ましいです。また大抵は両面印刷なので、「両面読み取り」にします。さらに、50 ページを超えるような場合は「継続読み取りを有効」にします。


ScanSnap S1500 の読み込み設定

もし gray scale や color のページが多い場合は、「カラーモードの選択」を「自動」にします。少ない場合は、該当箇所だけ「グレー」か「カラー」にして読み込みます。

なぜ原則「白黒」設定でやるかというと、2 つ理由があります。第一に、ページがツルツルしている場合にページが滑って color 原稿だと誤認識されるからです。RGB を別々の瞬間に読み取るため、途中でページが滑ると 3 色存在しているように見えてしまいます。


▲ ページが読み込まれるときに滑ると、RGB が分解されて color だと誤認識される (でも CMY に分解されてる?)

第二の理由は、後ほど AcrobatOCR をかけるときに仕上がりが綺麗だからです。Gray scale で読み込むと、どうしても OCR 後の文字色が灰色になります。また、「余白」の部分が「余灰色」になってしまいます。

「読み取りモード」の「オプション…」の設定は、「白黒読み取りの濃度」を少し薄めにしておきます。これは、ScanSnap が白黒で文書を読み取るときに、少し文字が太る傾向があるためです。そのため、後で ClearScan をかけたときに太字になった印象を受けて読みづらくなります。ここらへんは好みなので、太い文字のほうが読みやすいという場合は、濃度を標準か少し濃いめにすれば良いでしょう。


▲ 濃度を薄めにする。

「文字をくっきり」は、「グレースケール」で読み込む場合には必要です。純白でない紙面を純白にし、また文字の色を黒に近づけるためです。しかし、「カラー」読み込みの時は、「文字をくっきり」は off にします。実際の印刷物とは全く違う色になってしまいます。

白紙ページは、あえて残します。全てのページが正しく読み込まれたか、合計ページ数の確認が後で楽になるからです。また、傾きの補正は後で Acrobat にやってもらうので、ここでは不要です。

3. AcrobatOCR (ClearScan) をかける

お手持ちの Windows に、Acrobat X の体験版を入れます。Mac 版は残念ながら配布されていないので、VMware でも使って下さい。30 日間は無料で使えます。ゴニョゴニョすればもっと使えます。

1. 2. を実行する環境がない人は、既に scan された文書で以降の作業を行います。天文系の人であれば、ADS から古めの論文を落としてきてください。ここでは、この PDF を試してみます*4

PDF を Acrobat で開いたら、OCR の dialog を開き、その PDF にあった言語を選択します。Downsampling は 600 dpi が最大なので、これを選びます。OCR は ClearScan にして下さい。OK を押せば、後は自動で処理が開始されます。300 ページの書籍で、だいたい 1 時間くらいと思っておけば大丈夫です。


OCR の設定

OCR は、Acrobat 9 ではなく Acrobat X でかけるようにして下さい。文字認識の精度が向上しており、また自動生成される font も X のほうが美しく読みやすいです。せっかく無料なので最新版を使ったほうが良いです。

OCR が完了したら、一度 PDF を保存します。グレースケールで読み取ったページは、文字が灰色っぽくなっている場合があるので、Edit Object ツールで文字を選択し、右クリ→property から文字色を黒に変更します。また、ページの縁などに scan 時に発生したゴミがあるので、これも Edit Object ツールで選択して削除してしまいましょう。

ClearScan を使った OCR の実行結果と、元の PDF を比較したものが↓これです。かなり綺麗になっています。また、容量も劇的に減ります。


▲ (左) 元の PDF。600 dpi の bitmap 画像になっている。拡大するとギザギザが目立つ。(右) ClearScan を実行したもの。拡大しても滑らかなままで読みやすい。(Click で拡大)

4. PDF/X で保存する (保存しようとする)

さて、世の中で自炊の解説が書かれていても、大抵は 3. までしか書いてありません。ClearScan をかけただけで可読性と軽さの向上はかなりのものですが、図の部分だけが極端に重いという問題が発生します。論文の図が bitmap で入っている場合、その図を拡大縮小したり、scroll したりすると最新鋭の MacBook Pro でもかなり重たくなります。iPad だと最悪です。

そこで、さらに PDF を軽快にする方法です。

形式を PDF/X にして再保存すると、なぜか図の部分が非常に軽くなります。多分、PDF/X にうまく変換できないと怒られますが、気にせず保存して下さい。WindowsAcrobat X で試すと軽くならない場合もあるのですが、原因はよく分かりません。Mac 版の Acrobat 9 Pro もしくは Acrobat X Pro で PDF/X に export すれば必ず軽くなるので、PDF の種類や環境によるのかもしれません。少なくとも、Win の Acrobat X で OCR 後、MacAcrobat Pro で PDF/X に再保存、というコンビなら確実に動作します。


▲ PDF/X で再保存

PDF/X に再保存すると、画像を RGB から CMYK に変換します。そのため、表紙や裏表紙などの color のページでは色合いが変わってしまい、また容量も大きくなります。これが嫌な場合、color のページだけは元の PDF を使うなり、Acrobat で適宜修正して下さい。

問題点

これまでの使用で気がついた問題点です。

1. OCR の精度がまだまだ低い

日本語と英語が混在したような文書では、まだまだ文字の誤認識があったり、不必要な空白が入ったりします。そのため、検索してもあるはずの単語が引っかからないという現象がままあります。文字を誤認識しても、生成される font がおかしくなることは基本的にありません。

また、特に日本語の漢字は形状が複雑なため、自動生成される font があまり美しくありません。明朝だと文字がやけに細くなったりする場合もあります。

英語文書で OCR をかけても、例えば人名に "ü" が含まれていると、これが "ii" と認識されるというのもよくあります。また数式内で使われているギリシャ文字などを正しく認識しないため、例えばシグマ粒子 "Σ" を本文中から検索しようとしても、これが "E" として認識されているために検索にかからないということもあります。

2. Downsampling が強制である

AcrobatOCR 時に必ず元の画像を downsampling してしまいます。これは最大解像度でも 600 dpi しかありません。そのため、元の PDF に入っていたグラフの細部がおかしくなる場合があります。困るのが、グラフのデータ点や誤差棒が消えてしまう場合です。この downsampling は強制なので、今のところ回避方法はありません。


▲ (左) 元の PDF (右) OCR 後の PDF。誤差棒が部分的に消えてしまっている。

3. Acrobat 以外で編集すると壊れる

ClearScan をかけた PDF は、自動生成された font が埋め込まれています。しかしこの font の取り扱いは Acrobat しかちゃんと処理できないようで、例えばOS X の Preview.app で PDF を再保存すると、文字情報が失われてコピペや検索ができなくなります。Acrobat 11 くらいで改善するかもしれませんが、これも解決方法はありません。ClearScan 後の PDF は、Acrobat 以外で編集しては絶対に駄目です。

*1:出版社によっては OCR をかけています。

*2:表 2、表 3 とも言う。

*3:Scanner が複数ページを同時に読み込んでしまうこと。

*4:Dickey & Lockman (1990) です。HI ガスの広範にわたる解説。