基于 Java 如何完美解决 word,pdf 的文件对比功能

2021-10-16 00:00:02 +08:00
 jerseyhero

工作需要实现对比合同相关的文档,格式为 word,pdf 。
搜索了一下,暂时没有找到开源的软件方案。
国内收费软件:
1.PageOffice
2.Spire.Doc
国外收费软件:
1.draftable
但是感觉都 21 年了,难道就没有开源软件能实现么,感觉需求还是挺普遍的,求大神们赐教

3206 次点击
所在节点    程序员
28 条回复
xy90321
2021-10-16 00:04:40 +08:00
对比? poi 然后自己来?
gainsurier
2021-10-16 00:08:14 +08:00
直接调用 word 对比不就行了,PDF 本身就没有太好的对比方案。
liuxu
2021-10-16 00:24:43 +08:00
这个重任就交给你了
jerseyhero
2021-10-16 00:26:05 +08:00
@xy90321 也算是一种方案,但是想找个轮子😄
clf
2021-10-16 00:26:35 +08:00
一般 word 间对比是 poi 解析内容去对比吧。

要么就转图片 OCR 识别文字对比。
jerseyhero
2021-10-16 00:27:09 +08:00
@gainsurier 找了很久,没找到调用 word 对比的方法呢,大神能贴一下么
jerseyhero
2021-10-16 00:27:35 +08:00
@liuxu 😄😄😄
jerseyhero
2021-10-16 00:29:21 +08:00
@clf 是啊,感觉思路是这样的
uyun2421
2021-10-16 00:42:38 +08:00
word 和 word 格式之间对比用 word app 的审阅-比较功能,word 和 pdf 格式之间对比用 word 将 pdf 转换为 word,然后再审阅。😂我就经常这么干
xy90321
2021-10-16 00:49:46 +08:00
拿 Office Diff 作为关键字结果不少,难道都没有中意的吗? poi 就是轮子了,只是你现在要的是带高强度钢配真皮座椅自带加热可 5 级自动驾驶
jerseyhero
2021-10-16 02:02:59 +08:00
@xy90321 😂老哥懂我
Jwyt
2021-10-16 06:11:06 +08:00
word 没接触过,pdf 的话需要抽取 pdf 里面的所有信息,市场上有收费产品的(java 的话 itext 有 pdf2html 等),你也可以自己弄,不过很麻烦特别是涉及表格的话。
pdf 底层的信息是很基础的,你可以去看看 adobe 的 pdf 标准文件,不像 html 、word 底层是标记语言,抽取出来后需要巨量的处理,包括文字合并 字体处理 画布 线条 块。。具体还是要看你的需求了
开源包的话我知道的有 poppler(c++)、itext 和 itextsharp(java)
Jwyt
2021-10-16 06:16:26 +08:00
@Jwyt 纠正下 itext(java) 和 itextsharp(c#)
leafre
2021-10-16 09:39:31 +08:00
抽取文字 - 清洗 - 正则比对相似度
xmt328
2021-10-16 11:08:31 +08:00
从文件格式上就注定了无法完美
Huelse
2021-10-16 12:33:18 +08:00
大概就 word 转 pdf 在图像上对比
Konys
2021-10-16 13:03:56 +08:00
之前给教育局做的一个项目涉及 word 对比,word 里面有特别复杂的表格,刚开始自己搞,搞不定后买的 pageOffice.
cweijan
2021-10-16 13:06:29 +08:00
这种需求很复杂, 你最后一句话说得好像是开源欠你的一样
dbpe
2021-10-16 13:11:43 +08:00
>>但是感觉都 21 年了,难道就没有开源软件能实现么,感觉需求还是挺普遍的,求大神们赐教

你来
golangLover
2021-10-16 13:29:22 +08:00
这种需求挺复杂,值得你去付费

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/808137

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX