pdfl pixelcompare --viewer の使い方
レポートは「3 ページ目が 0.04% 変わった」と告げます。それがはぐれたハイフンなのか、
誤った価格なのかは告げません。それを知るには見るしかなく、--viewer が見るための
道具です。
pdfl pixelcompare cf_a.pdf cf_b.pdf --viewer pixelcompare/フォルダーが書き出されます。1 ページにつき 3 枚の PNG と、index.html が 1 つ。
サーバーも CDN もインストールも要りません。ファイルを開くだけです。フォルダーを
圧縮すれば、刷り直しを承認する人も、何も入っていない機械で開けます。
何を見ているのか
Section titled “何を見ているのか”三つのペインが、つねに同じページを映します。
| ペイン | 中身 |
|---|---|
| Original | 一つ目のファイルのページ、手を加えないまま |
| New | 二つ目のファイルのページ、手を加えないまま |
| Difference | 両方に、変わったところを塗り重ねたもの |
最上段は要約です。どのファイルを比べたか、100 of 286 page(s) differ · worst 0.11%、そして開いているページについて page 3 · 0.04% of pixels differ。
縦一本と横一本の棒が、三つのペインの同じ位置を貫き、三つで同時に動きます。棒は ポインターに従います。つかむものも狙う場所もなく、交点はマウスのあるところです。
Difference では棒が切れ目になります。縦棒の右と横棒の下に新しいファイルが、 それ以外に元のファイルが出ます。放っておけば横棒は上端にあり、その状態では縦棒が そのまま全高の切れ目になります。追いかけているものが列ではなく帯にあるときは、横棒 を下げてください。
Original と New では同じ棒が定規になり、ページの同じ桁と同じ行を指します。 だから切れ目が見せているものを、手を加えていないどちらのページの上でも、目分量で 測らずに見つけられます。
どちらの位置もペインではなくページに対する百分率なので、ページを変えても、窓の大き さを変えても保たれます。
どのペインの上でも差分はその場に塗られ、色が種類を示します。
| 色 | 意味 |
|---|---|
| 赤 | 新しいファイルで失われたインキ |
| 緑 | 新しいファイルで増えたインキ |
| 青 | 同じ濃さで、色が違う |
286 ページの文書の 3 ページ目で、1 文字だけ変わるとこう見えます。
![]()
outubro が outubrb になりました。赤が去った文字、緑が来た文字です。ページの他
には何も動いておらず、二つの窓を並べてスクロールした人はそのまま読み飛ばしたはず
です。
ページを移る
Section titled “ページを移る”上部の一覧がページで、それぞれにどれだけ異なるかが付いています。
ビューアーは差分のあるページから開きます。 この文書では 286 ページ中 100
ページ。All で残りの 186 が戻ります。矢印と ← → はこの絞り込みに従い、
隠れているページに止まらず飛び越えます。変化のないページを見ているときに絞り込みへ
切り替えると、最も近い変化したページへ移ります。
どこも違わないときは、ボタンがそう表示して無効のままになります。一覧を空になるまで 絞り込んだりはしません。
ホイールで最大 8 倍まで拡大でき、三つのペインがポインターの下の点を中心に一緒に 動きます。見ていたものがその場に留まるということです。縮小はページ全体で止まります。 ペインはもともとページ全体が収まる大きさで、それより下に有用なものはないからです。
どちらのマウスボタンでも押したまま動かすと、ページ自体を、これも三つ同時に、 どの倍率でもポインターと同じ速さで動かせます。拡大したあとで隅に届く方法です。 ドラッグ中も棒はポインターに従い、どの倍率でも太さを保ちます。
Reset view は拡大も移動も棒も出発点に戻します。戻すものがない間は無効です。
別のページへ移ると、またページ全体から始まります。拡大と移動は設定したページに属す るもので、持ち越せば次のページのたまたま何かある場所に着地してしまいます。
知っておくとよいオプション
Section titled “知っておくとよいオプション”ビューアーは比較が見つけたものを映すので、比較を変えるフラグが、見えるものを変えます。
# より細かく見る。既定は 150 dpi、300 は多く見えて時間もかかるpdfl pixelcompare a.pdf b.pdf --viewer diff/ --dpi 300
# 面積の 0.1% 未満しか変わっていないページは無視するpdfl pixelcompare a.pdf b.pdf --viewer diff/ --max-diff 0.1
# 文書の一部だけpdfl pixelcompare a.pdf b.pdf --viewer diff/ --pages 1-10,42
# 比較の前に描画のノイズを吸収するpdfl pixelcompare a.pdf b.pdf --viewer diff/ --threshold 0.1 --blur 1もう一つ理解しておく価値があります。同じ原稿から書き出し直したファイルはしばしば 1、2 ピクセルずれて着地し、それを補正しなければ文字の輪郭すべてが差分になります。 そこで比較はページ全体の単一のずれを探し、見つけたときには伝えます。
page 3: 2.10% of the pixels differ, in 44 area(s) (aligned by 2, -1 px)位置そのものを確かめたいときは --no-align で切ってください。
次に読むもの
Section titled “次に読むもの”CLI の章にすべてのオプションと、進捗表示と、速度についての記述が
あります。このブログには誤ったファイルが機械に乗ったあとの代償
と、代わりに compare を使う場面の記事もあります。