多くの編集ツールでPDFを開くと、1文字も入力しないうちに目に見えない処理が行われます。ファイルがツール内部の形式に変換されるのです。編集しているのはその内部コピーであり、保存すると、まったく新しいPDFが原本の上に書き込まれます。出来上がるファイルは再構築されたもの — たいていはよく似ていますが、同一である保証はどこにもありません。
GingerDocsは異なるアプローチを取っています。そしてその違いは、ドキュメントが最も重要になる場面でこそ、最も大きな意味を持ちます。
変換・書き戻し方式の問題点
変換は本質的に劣化を伴います。エディタが該当の書体をそのまま備えていなければフォントは代替され、レイアウトのわずかなずれはページを追うごとに積み重なっていきます。そして原本のファイル — 相手方が実際に送ってきたそのファイル — は、保存した瞬間に上書きされてしまいます。
チラシであれば厄介事で済みます。しかし契約書となると、これは深刻な問題です。手を加える前のドキュメントがどのような姿だったのか、もはや証明できなくなるからです。
オーバーレイ方式
GingerDocsはPDFを読み取り専用として、作成されたとおりの姿でレンダリングし、すべての編集をその上に重なる独立したレイヤーに保持します。テキスト、署名、日付、チェックボックス、ドロップダウン — そのすべてがオーバーレイ上にあります。元のファイルが変更されることは決してありません。
編集内容はページに焼き付けられたピクセルではなくデータとして保持されるため、あらゆる変更に元に戻す/やり直しが使え、バージョン履歴をさかのぼって復元することもできます。フラット化されたPDFが生成されるのは完了時のみ — しかもその場合も、保持された原本と並ぶ新しいファイルとして生成されます。
一覧で比較
| 項目 | GingerDocs(オーバーレイ) | 変換・書き戻し型エディタ |
|---|---|---|
| 原本ファイル | 常に読み取り専用のまま保持 | 保存時に上書き |
| レンダリング | 作成されたとおりの姿 | 近似的。フォント代替のリスクあり |
| 編集内容 | 独立した編集可能なレイヤー | ページに焼き込み |
| 編集履歴 | 元に戻す/やり直し+バージョン履歴 | 多くの場合なし |
| 監査証跡 | すべてのイベントを記録しハッシュチェーン化 | 記録なし |
本文そのものを変更する必要があるとき
オーバーレイは標準の方式ですが、唯一の方式ではありません。1行だけ修正が必要なときは、インプレース編集で既存のテキストをクリックし、元のフォントと色に合わせてそのまま打ち直せます。下にあるファイルを変換することなく、ページ上の記載だけを変更できるのです。そして、ドキュメントを本当に一から書き直す必要がある場合には、オプションのリフローモードが編集可能なリッチテキストとして再構成し、きれいな新規PDFとして書き出します。
変換・書き戻し型エディタとの違いは、GingerDocsが再レンダリングを一切行わないことではなく — リフローでは行います — 決して上書きしないことにあります。どのモードを使っても、アップロードした原本は結果と並んで手つかずのまま保持されるため、「以前はどうなっていたのか?」という問いには常に答えが用意されています。リフローは、それを必要とするごく一部のドキュメントのために意図的に選ぶオプトインの手段であり、保存のたびに黙って実行されるステップではありません。
署名するドキュメントにとってこれが重要な理由
署名ワークフローとは、いつか起こりうる真正性をめぐる争いを内包したものです。原本が保持され、編集がレイヤーとして分離され、すべてのイベントが改ざん検知可能なログに残っていれば、その争いには短い答えで決着がつきます。署名前にファイルが3回も変換と書き戻しを経ていれば、そうはいきません。
署名する価値のあるドキュメントなら、何が行われたのかを証明できる方式で編集する価値もあるはずです。