PDFの不思議な仕様

以前、PDFのデータ形式を覗いてみたことがあります。きっかけは、ほんのわずかなテキスト修正だったのに、Adobe Acrobat DCのPDF比較機能が差異を見つけてくれなかったから。

そこで修正前と後のPDFをテキストエディタで開いてみて驚いたのが、描画要素の並びがかなり違っていたこと。HTMLなら基本的に上から下に要素を記述していくけど、PDFでは違うようです。「どこに描画されるべきか」という情報を持った要素が順不同で格納されていたかと。Acrobatの読み上げ機能でページを読ませても上から順に読み上げてくれないのもそのせいなのでしょう。

それってAmazonの倉庫のような感じかと。Amazonの倉庫では入荷した商品を整頓して格納するのではなく、無造作に格納する代わりにどこに何があるかを厳格に管理しているそうですね。これにより格納場所の選定や整列に迷うことがなくなり業務効率が上がります。

PDFの仕様がそのような思想で策定されたのかは知らないけど、それが正確なPDF比較を難しくしている要因の一つなのかも。もちろん各アプリは表示上の順番を把握した上で比較していくのだろうけど、それでもその仕様のおかげで要素のペアリングが難しいケースも出てくるのではないかと。

XORでコストカットしませんか?

30日の無料試用期間後もXORをお使いいただく場合、月額2,000円のサブスクリプション契約が必要なので、導入するならそれに見合った納得感が要りますよね。

XOR's App icon

Mac App Storeバッジ

そこでこんな使い方はどうでしょう?

修正されていないページを洗い出して確認対象から除外する

XORは二つのPDFを画像化して差異をあぶり出すため、対になるページの変更点を100%検出します。人間が違いを見逃さない限り、すべての変更箇所を把握できるわけです。

どこが変更されたかを把握できるならその逆も然り。まったく変わっていないページも容易に見つけられます。

例えば、取扱説明書は製品のマイナーチェンジに伴い何度も改版される傾向があります。ページ数の多い案件ともなると修正前後のPDFを自力で比較するのは大変な作業です。DTP原稿の赤字箇所の確認だけならともかく、「予期せぬ差異がどこかに潜り込んでいるかもしれない」という観点で数十ページ、数百ページ規模の取説を1ページずつ見ていこうものなら、かなりの時間を要します。ものによっては何時間もかかったり、複数人で手分けする必要が出てくるでしょう。しかも徒労感が募れば次第に集中力も落ち兼ねません。

でも、XORを使って最初に「まったく変更がないページ」を洗い出せば、確認対象をそれ以外のページだけに絞り込めます。

日本の平均的なサラリーマンの給与を時給換算で約2,500円と仮定すると、1ヶ月に1時間分の時短ができればXORの2,000円というサブスクリプション費用は軽く相殺されるでしょう。もちろんXORに利用回数の制限はないので他の案件でさらに1時間削減できれば計5,000円相当の時間的余裕が生まれます。残業せずに帰るもよし、空いた時間で他の案件を担当して業績を上げるもよし。時短が10時間に登ろうものならXOR1年分のサブスクリプション費用相当のコストカットが実現できてしまいます。だとしたら月額2,000円も実は安いとは考えれれないでしょうか?

なお、ドキュメンテーション業界のほとんどの人がすでに使っているAdobe Acrobat PRO DCの比較機能でも同じことができそうに思うかもしれないけど、PDFの内容を解析して比較する方式のため、データ構造次第では差異の検出もれが発生します

タダより高いものはない

「タダより高いものはない」とはよく言ったもので、わずかな手間や出費を惜しんだばかりにかえって痛い目にあうことってありますよね。

私も制作の現場で何度も経験しました。不思議なことにちょっと手の込んだ修正箇所の不具合には気づくのに、単純なミスに限って見逃しがちだったりします。簡単だからこそ注意力が薄れるのでしょう。誤字脱字などは脳内で正しく変換されがちだし。

そうして制作側で気づくべき不具合を残したままクライアントに提出してしまい、先方から指摘されようものなら恥ずかしい思いをするし、校了が出て印刷が進んだ後で不具合が発覚すれば責任問題になったり、刷り直しの追加コスト負担を求められることも。

いや、そもそもクライアント側が校了を宣言したならそれでOKのお墨付きが出た意味合いのはずだけど、実際には仕事を依頼する側と受ける側の力関係によって、こちらが泣くことになりがちです。

そうして痛い目に遭ったときに思います。「あのときもう少し丁寧に修正内容を確認していれば、こんなことにならなかったはずだよな…」と。

とはいえ反省や気合いではスキルは上がらないし、むしろ疑心暗鬼になって確認作業に余計な時間をかけるようにもなりかねません。「あつものに懲りてなますを吹く」という状態ですね。

よって確認クオリティの向上に最も有効な手段は「新たなアプリを導入すること」です。すでに何かを使っているなら違う特徴を備えたアプリを併用すると良いでしょう。

例えばAdobe Acrobat PRO DCは解析比較なのでデータとの相性次第では検出もれが起こります。

Proof Checker PROには解析比較だけでなくビットマップ比較があるものの、締め切りが重なればドングルの順番待ちが発生します。アプリ自体は素晴らしいのに、「大丈夫だろうとタカを括って検証を省いたら拙い不具合が混入していた」なんてことが起きかねないわけです。

そこでXORの導入をご検討いただけると幸いです。月額2,000円は安くはないかもしれないけど、1日100円(x20日)で致命的なミスを防げるかもしれないし、事が起こってしまえばもっと厳しい出費を強いられかねないので。

XOR Subscription dialog

PDF比較、みんなどうしてます?

ドキュメント制作においてPDFの新旧比較は必須行程です。

もちろんちょっとした修正しかされていないと解っていれば、画面なり校正紙の目視確認で構わないでしょう。でも、そこそこ修正量があるなら何らかのツールを使って見比べたいところです。

あるいはポカが多いDTPオペレータに修正を依頼した場合などでも予期せぬ修正がなされていないかを念入りに確かめたいかと。そう、どこかを修正すると、別のところに良からぬ影響が出ることもあるから。

大きな組織ならProof Checker PROを導入しているだろうから、それを使いますよね。

Proof Checker Pro 5 LITEの画像
Proof Checker PROは最強ツールだけど100万円を超えるので大きな組織じゃないと導入できませんよね…

中小の制作会社や個人の製作者であればAdobe Acrobat PRO DCかな。

これらの他のツールを使っている人って、どれぐらいおられるのでしょうか?

よかったら普段どんなツールを使っているか、コメント欄やFacebook、Twitterで教えてください。事例が集まってきたら統計として発表したいと思います。

「XORなんて…」と思うなら

XORはPDF差異検出ツール、あるいはPDF比較ツールと呼ばれる類いのアプリです。

この分野はそこそこ歴史も長く、多くはないけど既存製品がいくつかありますAdobe Acrobat Pro DCProof Checker PROといった定番アプリの他にもフリーで使えるものも存在しています。

よってXORを知ったところで「無名の有料アプリなんか要らない」と思われる方は多いでしょう。そこで実例をもってXORの有用性をアピールしたいと思います。

例えばこちらの二つのPDF。

NTTの光回線の機械に付属する取扱説明書の新旧バージョンです。特に許可は得ていないものの、公開されているので使わせていただきました。

これをAcrobatで比較するとこんな感じ(クリックで拡大表示)。

Compare result by Acrobat
ハイライトの箇所をクリックすると「画像が置換されました」といった変更内容が表示されます

少なくとも私にとってはこれが見やすい、解りやすい比較結果には思えないのですよね。私の注意が散漫なのかもしれないけど、せっかく差異を見つけてくれても見落としそうになるので。昔のAcrobatでは引出し線付きで図解してくれていて便利だったけど、そのモードは今では無くなったみたいですね。

これに対してXORにおける比較結果はこの通り。

Compare-result-by-Acrobat
青や赤がにじんでいるところはすべて差異です

私にとってはXORの方が既存のどのPDF比較アプリよりも差異の箇所を探しやすいと思うのでですが、いかがでしょう?

というわけで、ぜひ他のお気に入りアプリでも試してみてください。XORよりも良いアプリが見つかるかもしれないけど、XORの方がいいと感じる方もおられるかと思うので。

なお、XORには決定的な弱点があることも把握しています。よって次のバージョンではその点を克服した機能を搭載する予定です。