差分は 2 種類、片方だけでは足りない
ピクセル差分はどこが動いたかを教えます。テキスト差分は語句が何に変わったかを教えます。このツールはページの組ごとに両方を行い、並べて示します。
- ピクセル。 両方のページを指定の解像度で描画し、チャンネルごとに比較します。変わった領域は赤く塗られ、連続する変更行はひとまとまりの領域として数えられるので、「1 段落を直した」と「ページ全体が組み直された」は違う読み方になります。
- テキスト。 各ページの本文を視覚的な行に組み直し、行単位で比較します。座標だけでなく、変わった文そのものが得られます。
ページは数えるのではなく対応づける
1 ページ目と 1 ページ目を比べる方法は、誰かがページを 1 枚差し込んだ瞬間に破綻します。それ以降のページはすべて全面書き換えに見え、レポートは役に立ちません。
そこで、2 つのページ列をまず本文の類似度で整列します。語の出現集合の重なりを使い、ギャップペナルティ付きの Needleman–Wunsch で対応づけます。片方にしか存在しないページは追加または削除として報告され、その前後のページは正しく対応づいたまま残ります。本文がまったくない 2 ページ(スキャンなど)は中立の値になり、位置で整列します。どちらとも判断する材料がないからです。
変更を見る 4 つの方法
- 並べて表示。スクロール同期は既定でオンです。
- 重ね合わせ — 改訂版に赤い変更マスクを重ねます。
- オニオンスキン — 2 つの不透明度をスライダーで調整します。
- ドラッグ分割 — ページを縦に割る境界を動かします。
描画されるのは今見ているページの組だけです。だからこそ、長い文書でも解像度や感度の変更が即座に反映されます。
感度について正直に
同じ文字を 2 回描画しても、ピクセルは同一になりません。アンチエイリアスとヒンティングによって、輪郭のピクセルは数段階ずれます。感度 0 では文書全体が変更扱いになり、技術的には正しくても実用にはまったくなりません。既定値の 24 はそのノイズを無視しつつ、数字 1 文字の違いは検出します。適切な値は文書によって変わるためスライダーを用意しており、凡例には結果を得た設定が常に表示されます。
書き出し
JSON または CSV のレポートには、ページごとの状態、変更率、変更領域の数、追加・削除された行数が入ります。表示中のページの合成差分画像や、変更されたページすべてと CSV レポートをまとめた ZIP も書き出せます。
プライバシー
2 つのファイルの読み込み・描画・比較はすべてブラウザー内で完結します。アップロードは行われません。
Tiny Online Tools







