このツールとは?
PDF比較ツールは、ある文書の2つのバージョン — たとえば赤入れ前後の契約書や、報告書の2つの下書き — を比較し、両方を一行ずつ見比べなくても違いを教えてくれます。
このツールはテキスト内容の比較によって動作します。pdf.jsを使って各PDFの全ページからテキストを抽出し(ISO 32000のPDF仕様では各ページのテキストは位置情報付きのランとして保存されており、pdf.jsはそれを読み取り順に読み出します)、対応するページ同士で単語単位の差分を計算します。どの単語が追加・削除されたかを正確に示してくれます。
このツールが何を検出でき、何を検出できないかを正しく理解しておくことが大切です。これはテキスト内容の差分であり、ピクセル単位の見た目の差分ではありません。文言の変更、文の追加・削除、段落の折り返し変化は確実に検出します。一方、フォントの変更や色の変更、画像の位置ずれ、単語がまったく同じままページの配置だけが変わった場合など、純粋に見た目・レイアウトだけの変更は検出できません。文書がピクセル単位で完全に同一かを確認したいなら、このツールは向いていません。文言が変わったかどうかを知りたいなら、このツールが適しています。
なぜこれを使うのか?
- 変更点が一目瞭然 — 追加・削除されたテキストがページごとに色分け表示されるので、2つの文書を目で見比べる必要がありません。
- 冒頭にページ数の概要を表示 — ファイルAとファイルBのページ数、実際に差分があるページ数がひと目でわかります。
- ページ数が異なるPDFにも対応 — 片方のファイルにしか存在しないページも、無視されることなくきちんと表示されます。
- プライバシー重視の設計 — テキスト抽出も差分計算もブラウザタブ内で完結するため、契約書や下書きなどの機密文書が端末の外に出ることはありません。
- 無料で、ブラウザが処理できる範囲であればページ数の上限もなく、アカウント登録も不要です。
使い方
- ファイルA(元のPDF)を最初のドロップゾーンにクリックまたはドラッグします。
- ファイルB(変更後のPDF)を2番目のドロップゾーンにクリックまたはドラッグします。
- 「PDFを比較」をクリックし、各ページのテキストが抽出・比較されるのを待ちます。
- 概要行でページ数と差分のあるページ数を確認します。
- ページごとの結果をスクロールして確認します — 緑のハイライトはファイルBで追加されたテキスト、赤の取り消し線はファイルAから削除されたテキストで、ハイライトのないページは変更なしを意味します。
例
入力
contract-v1.pdf(3ページ)とcontract-v2.pdf(3ページ)。3ページ目の条項が1つ書き換えられている例出力
概要:「ファイルA:3ページ、ファイルB:3ページ — 1ページに差分あり」。3ページ目には、削除された旧条項が赤の取り消し線で、追加された新しい文言が緑でハイライト表示されます1ページ目と2ページ目は同一と表示されるため、実際に変更があった1ページに直接目を通すことができます。
PDF比較とText Diffの使い分け
両方のツールとも最終的には同じ単語単位の差分処理を行いますが、入力の起点が異なります。契約書や請求書、報告書など実際のPDFファイルが2つある場合は、PDF比較を使ってください。両方のファイルを開き、各ページのテキストを抽出し、ページを自動的に対応付けてくれます。
すでにテキストとして内容を持っている場合 — たとえばPDFから条項をコピー&ペーストした場合や、設定ファイル・スクリプト・メールの下書きの2つのバージョンを比較する場合は、代わりにシンプルなText Diffツールを使ってください。PDFの解析が不要な分こちらのほうが高速で、抽出したPDFページに限らず、貼り付けたどんなテキストにも使えます。
よくある利用シーン
- 署名前に、契約書や法的合意書の2つの改訂版の間で実際に何が変わったかを確認する。
- 報告書、提案書、学術論文の下書き版と最終版の間の編集内容を確認する。
- 取引先から改訂版が送られてきた際に、請求書や発注書が以前のバージョンと一致しているか確認する。
- 原本と、他の人が編集していたコピーとの間で、意図しない変更や不正な編集がないかを見つける。
よくある質問
PDFの正確な見た目のレイアウトを比較しますか、それともテキストだけですか?
比較するのは各ページのテキスト内容のみです。pdf.jsで読み取れるテキストを各ページから抽出し、単語単位で差分を計算します。フォントの変更や見出しの色変更、画像の位置ずれなど、単語自体が同じままの純粋な見た目の変更は検出しません。ピクセル単位の視覚的な比較が必要な場合は、両方のPDFを画像としてレンダリングしてピクセルを比較する必要がありますが、この軽量なブラウザベースのツールではそこまでは行いません。
2つのPDFのページ数が異なる場合はどうなりますか?
ページは位置で対応付けられて比較されます(AのページBとBのページ1同士、というように)。片方のファイルのページ数がもう片方より多い場合、その余分なページは省略されたりエラーになったりせず、「ファイルAにのみ存在」または「ファイルBにのみ存在」として表示されます。
スキャンしたPDFや画像だけのページも比較できますか?
PDFに実際のテキストが埋め込まれている場合のみ比較できます。スキャンしたページが単なる画像でテキストレイヤーを持たない場合、pdf.jsが抽出できるものがないため、そのページは空として表示されます。この方法で比較したい場合は、まずOCRにかけてテキストレイヤーを追加してください。
私のPDFは比較のためにどこかにアップロードされますか?
いいえ。両方のファイルの読み込み、テキスト抽出、差分計算はすべてJavaScriptを使ってブラウザ内で完結します。どちらのファイルもサーバーに送信されることはなく、アップロードするものは何もありません。
すでに両方の文書のテキストを持っています — このツールは必要ですか?
いいえ — すでにテキストを抽出済み、またはプレーンテキストとしてコピーしてある場合は、Text Diffツールを直接使ってください。PDFの解析工程を省いて、すぐにテキストの差分を計算します。PDF Compareは、PDFファイル自体が2つあり、ページの抽出処理をツールに任せたい場合に使ってください。