2012-04-04 46 views
1

我们需要集成到现有的Java Web应用程序中,这是一个允许用户比较2个pdf文档并查看差异的新功能。所以,我开始搜索一些已经存在的库或工具(开源或商业),可以帮助我解决这个问题。 有谁知道是否存在这种应用?这将需要2 PDF,比较它们并显示差异?基于Web的应用程序,用于比较2个pdf文档

由于提前, Madalina

+0

这样的工具确实存在 - 问题在于你究竟是什么意思的差异。你想知道文本是不同的吗?如果文本的格式不同?如果一个元素(文本或图像)在不同的地方?如果图像中的像素不同?每种情况都有不同的方法。 – 2015-05-26 07:44:54

回答

0

我的回答可能不尽如人意,但来自Apache的项目 - > http://pdfbox.apache.org/

可以帮助ü。您可以将PDF文件转换为文本文件并进行比较。

0

你好,我提出建立在PDFBOX可以donwload从link

使用示例是下面提到它执行三个层次的比较,你可以简单地通过节能目标和源文件名添加一个循环的源代码的PDF比较项目一个列表,然后调用它的比较功能。

 pdfComparison cmp=new pdfComparison(); 
     //Text Comparision page by page   if(cmp.textComparision("ReferencePDF\\PDF2_302.pdf","C:\\\PDF2_305.pdf")) 
       { 
     System.out.print("\n********PDF text is identical******* "); 

       } 
       else 
       { 
        System.out.print("\n********PDF text is not identical******* "); 

       } 

//Extract all images in PDF and compare 
    cmp.extract_ALL_Images_ThenCompare("PDF2_302.pdf","PDF2_302.pdf"); 

//Convert Both PDF pages into JPG and perform image comparison 
     cmp.PDF_Convert_To_Jpeg_Comparision("PDF2_302.pdf","PDF2_302.pdf"); 

您会在项目中看到文件夹差异中的所有图像差异。如果任何问题只是给我留言

+1

您的项目使用当前的PDFBox版本1.8.9。已知在版本2之前的PDFBox版本在将PDF页面呈现为当前2.0.0-SNAPSHOT中已修复的图像时存在许多缺陷。因此,基于PDFBox 1.8.9的PDF比较可以作为第一次烟雾测试,或者在PDFBox 1.8.9可以正确呈现的PDF的非常受控制的环境中工作,但不能用于通用PDF的生产代码。 – mkl 2015-05-26 10:16:00

+0

我不是使用PDF框进行比较,我只是通过PDF框提取内容。请先下载代码并检查您的自我。 – fahad 2015-05-26 11:04:25

+0

其工作正常我的框架工作infact我比较300页PDF – fahad 2015-05-26 11:05:28