当前位置:  开发笔记 > 前端 > 正文

比较大量PDF文件的工具?

如何解决《比较大量PDF文件的工具?》经验,为你挑选了5个好方法。

我需要比较大量的PDF文件才能获得光学内容.由于PDF文件是在不同平台上创建的,并且使用不同版本的软件,因此存在结构差异.例如:

文本的分块可以是不同的

写入顺序可以不同

位置可以有些像素不同

它应该像人类而不是内部结构那样比较内容.我想测试我们使用的不同版本的PDF生成器之间的回归.



1> Horcrux7..:

因为没有这样的工具,我们已经写了一个.您可以下载i-net PDF内容比较器并使用它.我希望帮助其他同样的问题.如果您遇到问题或者您有反馈意见,那么您可以联系我们的支持.

在此输入图像描述


@gamma该应用程序免费在哪里?每年至少花费200美元(!).它只有30天免费一次.对于我用它做的事情来说,这太贵了.

2> 小智..:

实际上有一个diffpdf工具.

http://www.qtrac.eu/diffpdf.html

它的缺点是,当添加新文本部分转移到新页面时它不会很好地反应.例如,如果应将旧页面4与第5页的末尾和第6页的开头进行比较,则需要移动参数以分别比较两个切片.



3> akaihola..:

我用过自制的脚本

将两个PDF上的所有页面转换为位图

将PDF 1的颜色页面设置为红白色

在PDF 2的页面上将白色更改为透明

在PDF 1的相应页面顶部覆盖PDF 2中的每个页面

在多个核心上运行转换/着色和并行覆盖

使用的软件:

用于PDF到位图转换的GhostScript

ImageMagick用于着色,透明度和叠加

inotify用于同步并行进程

任何支持PNG的图像查看器,用于查看结果

优点:

简单的实施

使用的所有工具都是开源的

非常适合发现布局上的细微差别

缺点:

转换很慢

PDF之间的主要差异(例如分页)导致混乱

位图不可缩放

仅适用于黑白文本和图表

没有易于使用的GUI

我一直在寻找一种在PDF/PostScript级别上也能做同样工具的工具.

以下是我们的脚本如何调用实用程序(请注意,ImageMagick在后台使用GhostScript进行PDF-> PNG转换):

$ convert -density 150x150 -fill red -opaque black +antialias 1.pdf back%02d.png
$ convert -density 150x150 -transparent white +antialias 2.pdf front%02d.png
$ composite front01.png back01.png result01.png # do this for all pairs of images



4> sdaau..:

我似乎无法在这里看到这一点,所以这里是:通过超级用户:如何比较两个PDF文件之间的差异?(答案#229891,@slestak),有

https://github.com/vslavik/diff-pdf

(可以在get-diff-pdf.sh中找到Ubuntu Natty的构建步骤)

据我所知,它基本上覆盖了pdf(s)中每个页面的文本/图形,让您轻松查看是否有任何变化......

干杯!



5> akaihola..:

我们还使用pdftotext(参见Sklivvz的答案)生成PDF版本的ASCII版本和wdiff来比较它们.

使用pdftotext的-layout开关来增强可读性并了解布局中的更改.

要从wdiff获得漂亮的彩色输出,请使用此包装脚本:

#!/bin/sh
RED=$'\e'"[1;31m"
GREEN=$'\e'"[1;32m"
RESET=$'\e'"[0m"
wdiff -w$RED -x$RESET -y$GREEN -z$RESET -n $1 $2

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有