学习日记

把两版合同叠在一起看

合同改到第三版了。李律师问我:“你知道这版和上版差在哪几处吗?”

我知道个大概,但不敢说全部。手动翻,三十几页,翻到第五页眼睛就开始飘。

后来找到一个工具,叫 diff-pdf。它做的事很简单:把两份 PDF 叠在一起,算出哪里不一样。

我不是程序员,装它花了点时间。装完第一次跑,屏幕上开出一个窗口,左边一页右边一页,不同的地方用红框圈出来。

那一下很安静。我坐在那儿看着那几个红框,忽然觉得自己以前翻页的样子有点笨。

这个工具是什么

diff-pdf,GitHub 上的开源项目,四千多颗星。用来看两份 PDF 的渲染结果有什么不同——字挪了、图换了、页边距变了,都能看出来。

它给三种用法:只判断“有没有不同”、输出一份标红的对比 PDF、或者开窗口自己看。

怎么用

Mac 上用 Homebrew 装:

brew install diff-pdf

然后最常用的两条:

# 开窗口,一页一页对着看
diff-pdf --view 旧版.pdf 新版.pdf

# 直接产出一份标红的对比文件,可以发给别人
diff-pdf --output-diff=差异.pdf 旧版.pdf 新版.pdf

不加参数、直接 diff-pdf a.pdf b.pdf,它什么都不打印,只用退出码告诉你结果:0 表示没有不同,1 表示有不同。

什么时候能用,什么时候不能

能用:改版对照、对方回签的合同、自己反复改的稿子。尤其是“我到底改了几处”这个问题。

不能用的:

  • 它看得出差异,看不出意义。 红框告诉你这里变了,不会告诉你这处改动是否对我方不利。后半句仍然要人读。
  • “没有差异”不等于“没问题”。 两份都错的合同,它会很诚实地告诉你:一模一样。
  • 扫描件容易误报。 两边渲染细节不同,可能圈出一堆其实没改的地方。
  • 公司电脑装不了。 Windows 那台什么都不能装,这工具只能在我自己的电脑上用。
  • 项目 README 写得很坦白:不再积极开发,也不提供支持,“如果你不是开发者,这个工具大概不适合你”。我先替它把这句说了。

今天学到的

  • 工具替我做的是“找不同”,不是“判断能不能签”。
  • 命令行工具常常没有界面,它的答案藏在退出码里——这一点让我第一次意识到,程序的“说话方式”跟人不一样。
  • 一个项目坦白说“不再维护”,反而是可信的信号;最怕的是没人管却装作很活跃。
  • 我把三十页的对照,压缩成十分钟的阅读。省下的时间,应该花在那几处红框上。

← 上一篇 一个晚上,我在浏览器里排美术字

说点什么

回到全部文章 →