写真やスキャンを1つの検索できるPDFにまとめる方法
OnCloudPDFで写真やスキャンを1つの検索できるPDFにするには、3つのステップを踏みます。JPGをPDFに変換で画像からPDFを作り、必要ならPDFを結合でほかのPDFと1つにし、OCRで8言語のいずれかの見えないテキストレイヤーを追加します。OCRはブラウザ内で動き、長いファイルでは時間がかかり、精度はスキャンの鮮明さに左右されます。
更新日 · ブラウザ内で実行。アップロード不要、アカウント登録不要
何を作るのか、なぜ役に立つのか
ページを撮った写真は、ただの画像です。検索も、単語の選択も、段落のコピーもできません。検索できるPDFは、ページの画像をそのまま残しつつ、その上に認識した文字の見えない層を重ねたものです。そのためCtrl+Fで語句が見つかり、文字をコピーできます。この層を作る処理がOCR(光学文字認識)です。
典型的なのは、レシートの束、スマホで撮った署名入りの手紙、本の数ページなどです。複数の画像ファイルがあり、場合によってはスキャナーのPDFもあって、保管と検索がしやすい1つの書類にしたい場合に使えます。以下の手順なら、ソフトをインストールせず、ファイルはブラウザの中にとどまります。
ステップ1:きれいな画像を撮る・集める
OCRの精度は、撮影の時点で決まります。OCRが使うエンジンのTesseractは、鮮明で解像度が高く、言語が合っているスキャンを最もよく認識します。ぼやけた画像、傾いた画像、コントラストの低い画像は、誤認識が増えます。設定をいじるより、次の習慣のほうが効果があります。
- ページを平らにして、真上から、ムラのない光で、文字に影がかからないように撮ります。
- ページが画面いっぱいになるように撮り、文字を大きく鮮明にします。
- ページはまっすぐに保ちます。ツールには傾き補正がないため、傾いたページは傾いたままです。
- ファイル名は、page-01.jpg、page-02.jpgのように、読む順番に並ぶ名前にします。
ステップ2:画像をPDFにする
JPGをPDFに変換で、すべての画像を一度に選択します。対応する形式はJPG/JPEG、PNG、GIFです。1枚の画像が1ページになり、ページサイズは画像の画素数と同じで、ページはファイルを選んだ順に並びます。ページサイズの指定やページに合わせる設定はなく、GIFは最初のフレームだけがJPEGとして描き直されます。
実用上のポイントが2つあります。1つ目は順番です。このツールには並べ替えの手順がないため、ページが違う位置に入った場合は、できあがったPDFをページを並べ替えで直してください。2つ目はサイズです。JPEGとPNGはそのまま埋め込まれるので、PDFは画像の合計とほぼ同じ大きさになります。スマホの写真は大きいため、20ページの書類でもかなり重くなります。サイズが気になる場合は、完成したファイルをPDFを圧縮にかけるか(必要なら目標サイズを指定)、この手順の前に写真を小さくしてください。
結果は、images_combined.pdfという名前でダウンロードします。
ステップ3:結合(PDFが複数あるときだけ)
スキャナーのPDFもある場合や、何回かに分けて作った場合は、PDFを結合を使います。ファイルを選ぶかドロップし、プレビューをドラッグして順番を決め、「PDFを結合」をクリックして、OnCloudPDF_merge.pdfをダウンロードします。各ファイルのすべてのページが、そのままコピーされて結合されます。1つのファイルの一部のページだけが必要なときは、先にページを抽出かページを削除を使ってください。暗号化されたPDFは、結合では解除されません。
結合は、OCRの後ではなく前に行ってください。そうすれば認識は1つのファイルに対して1回だけ行われ、最終的な書類のテキストレイヤーも一貫したものになります。
ステップ4:OCRを実行する
OCRを開き、結合したファイルを選び、書類の言語を選んで、「OCRを実行」をクリックします。一覧には、英語、スペイン語、フランス語、ドイツ語、イタリア語、ポルトガル語、中国語(簡体字)、日本語があり、1回の実行で選べる言語は1つです。2つの言語が混ざった書類は、選んだ1言語だけで認識されるため、もう一方の言語の単語は誤って認識されることがあります。
各ページは1.5倍の大きさで描画され、ブラウザ内のTesseract.jsで認識されます。出力されるページは、描画した画像から、位置を合わせた見えないテキストレイヤー付きで作り直されます。そのため、PDFの元の文字とベクターの内容は保持されません。もともと本物の文字があったPDFでも、画像とOCRの層に変わります。OCRは、本当に画像だけのページにだけ使ってください。
始める前に知っておきたい制限が3つあります。1つ目は、初回の実行ではTesseractのエンジンと言語データ(ファイルではありません)をCDNからダウンロードするため、インターネット接続が必要なことです。2回目以降は、保存されたデータを再利用します。2つ目は、処理がお使いの端末でページごとに行われ、長い書類では時間がかかることです。タブを開いたまま待ってください。3つ目は、ページ数やサイズの上限が設けられていないため、非常に大きなファイルはブラウザのメモリが限界になることです。
終わったらテキストのプレビューを確認し、PDFを試します。ページにあるとわかっている語を検索し、段落をテキストエディターにコピーしてみてください。問題がなければ、検索できるPDFをダウンロードします。
補足:スキャン風に加工について
スキャン風に加工は逆方向のツールです。通常のPDFを、スキャンしたような見た目にします。各ページを画像として描画し、軽いノイズと薄い紙の色味を加え、結果をZIPで保存します。OCRは行わず、テキストレイヤーも追加しないため、出力は検索できません。検索したい書類では、OCRの前に実行しないでください。スキャン風の見た目とテキストレイヤーの両方が欲しい場合は、先にスキャン風に加工を行い、その結果にOCRを実行します。
手順のまとめ
| ステップ | ツール | 出力 | 実際の制限 |
|---|---|---|---|
| PDFを作る | JPGをPDFに変換 | images_combined.pdf | JPG、PNG、GIFのみ。ページサイズは画像サイズと同じ。ツール内に並べ替えはない |
| ファイルを結合 | PDFを結合 | OnCloudPDF_merge.pdf | 各ファイルの全ページが対象。暗号化されたファイルは解除されない |
| ページ順を直す | ページを並べ替え | yourfile_reordered.pdf | サムネイルではなくページ番号が表示される |
| テキストレイヤーを追加 | OCR | 検索できるPDF | 8言語で1回に1言語。長いファイルは遅い。初回はインターネットが必要 |
| 文字を確認 | テキストを抽出 | テキスト(.txt)ファイル | ページ内のテキストを1つのまとまりにつなぐ。レイアウトはなし |
ほかのツールのほうが向いているとき
OCRは、たまに使う書類向けです。一覧にない言語が必要なとき、状態の悪いスキャンで非常に高い精度が必要なとき、表を表として認識したいとき、数百ページを一括で処理したいときは、デスクトップ版のOCRソフトやサーバー型のサービスのほうが多くの場合うまくいきます。プライバシー面の引き換えは、PDFツール比較で説明しています。PDFに本物の文字が入ったことを確認するには、文字数カウントが使えます。テキストレイヤーのないPDFでは0語と表示され、OCRが成功すると実際の数が表示されます。
よくある質問
OCRで対応している言語は何ですか?
英語、スペイン語、フランス語、ドイツ語、イタリア語、ポルトガル語、中国語(簡体字)、日本語です。1回の実行で選べる言語は1つです。
OCRで書類はアップロードされますか?
いいえ。認識はブラウザ内で行われます。初回の実行では、エンジンと言語データをCDNからダウンロードしますが、これはファイルではありません。2回目以降は、保存されたデータが使われます。
OCRが遅いのはなぜですか?
Tesseract.jsを使って、お使いの端末でページごとに処理するためです。長い書類ほど時間がかかり、速度は端末の性能に左右されます。
OCRをすると、元の文字や画像は残りますか?
出力されるページは、1.5倍で描画した画像から作り直され、その上に見えないテキストレイヤーが重なります。元の文字とベクターの内容は保持されないため、OCRは画像だけのページに使ってください。