2 つの PDF をページごとに比較する手順

2 つの PDF を選んで「PDF を比較」を押すと、両方のファイルがブラウザー内で 1.2 倍で描画され、同じページ番号の描画結果がピクセル単位で比較されます。各ページには、判定ラベル・測定された差分・変更されたピクセルを赤で示した差分マップが並び、「差分画像をダウンロード」で同じマップを ZIP(比較したページごとに page-N-difference.png)にまとめます。

3 ページの組み合わせはこのブラウザーで約 0.6 秒でした。同一のファイル同士は 3 ページすべて 0.00%、ページ 2 に 1 行追加した場合は既定のしきい値 18 で 0.38%、0 では 0.44% でした。2 ページしかないファイルを組み合わせると 3 ページ目は欠落として報告されます。1 回に比較できるのは 20 ページまでなので、22 ページの組み合わせでページ欄が空の場合、先頭 20 ページを黙って比較せず、上限のメッセージで停止します。

  1. ファイル選択またはドロップ領域で PDF をちょうど 2 つ選びます。選択は追加されていくので、余分なファイルは行の × で外します。PDF でないファイルは拒否され、読み込み済みの組み合わせはそのまま残ります。
  2. ページ欄を空にすると組み合わせ全体を、指定する場合は必要なページ(1,3,5 や 1-12)を書きます。1 回に比較できるのは最大 20 ページです。それより長い文書では範囲を絞ってください。空欄のままでは先頭ページを勝手に選ばず、上限のメッセージで停止します。
  3. ピクセルしきい値(0-255)を設定します。赤・緑・青の各値のうち最大の差がしきい値を超えたピクセルを変更とみなし、既定の 18 はアンチエイリアスによるわずかな差を無視します。空欄・負の値・範囲外の値は入力欄自体が修正されるため、表示されている数値がそのまま適用されます。
  4. 「PDF を比較」を押し、カードと 3 つの指標(比較したページ、変更されたページ、ZIP のサイズ)を確認します。
  5. 「差分画像をダウンロード」でマップの ZIP を取得します。「クリア」はファイル一覧・カード・指標・作成済みの ZIP を空にします。

差分マップと測定値の意味

差分マップの見方

各カードにはページ番号、判定ラベル(同一・変更あり・ページなし)、測定された割合、そして差分マップが入ります。マップでは、2 つの描画結果で一致しないピクセルが赤く塗られ、それ以外は両ページの平均輝度から作った薄い灰色のまま残るため、印の下でも文書の形が見えます。これは差分マップであり、並べた比較表示でも、ドラッグできる重ね合わせでもありません。

まったく同じファイル同士はどのページも 0.00% で灰色のままです。1 行追加した場合は既定のしきい値でページの 0.38% でした。つまりこの数値はしきい値を超えたピクセルの割合であり、深刻度の点数ではありません。しきい値は「同一」と「変更」の境界を決めます。255 ではどのピクセルも超えられず、ファイルが異なっていても 0.00% と報告されます。

欠落ページ・用紙サイズ・順序

ページは位置ではなく番号で組み合わされます。片方が短い場合、長い側にしかないページは 100.00% の「ページなし」として返り、マップには存在するページと空白の比較が表示されます。埋めたり、挿入したり、推測したりはしません。

ページはそれぞれの実寸で描画されるため、用紙サイズが異なる 2 つの文書は、同じ文字が入っていても存在するすべてのページで約 10.8% と測定されます。内容だけを比べたい場合は、先にサイズ変更かトリミングを行ってください。

比較しないもの

比較するのは描画結果だけです。テキスト レイヤー、メタデータ、埋め込みファイル、論理構造は対象外です。描画が変わらない変更(メタデータの修正、しおりの追加、見た目が同じフォントの差し替え)は報告されず、逆に描画だけに現れる変更(書き出し時の倍率変更など)は報告されます。

ページの描画は pdf.js、マップの梱包は JSZip がどちらもブラウザー内で行います。2 つのファイルは VoriTools にも他のどこにも送信されず、実行の終了時に閉じられます。破損・空・拡張子だけ PDF のファイルは文章で拒否され、暗号化またはパスワード保護された PDF は開けません。

最近使ったツール: