前言:
而今姐妹们对“apache2pdf”大概比较关注,我们都需要分析一些“apache2pdf”的相关知识。那么小编也在网摘上搜集了一些关于“apache2pdf””的相关文章,希望姐妹们能喜欢,姐妹们一起来了解一下吧!操作PDF在很多业务场景都要用到,例如电子发票,电子处方笺。为什么需要使用PDF呢?主要是因为可以使用RSA加密算法对PDF进行电子加签,只要经过电子加签的PDF文件,就会在PDF文件产生电子签章;经过加签的PDF是不允许修改的,如果加签后,再次对内容就行修改的话,就会显示PDF文件失效。这样的话就能验证该PDF是不是合法的。以下盘点一下常用的PDF工具JAR包。
0x01:iText 5
iText 5是最早一个提供对PDF进行操作的JAR包,不过目前该JAR已经不再进行后续开发。可以从官网看到如下一段话:
官网
大概的意思是iText 5是iText之前的重要版本,但是iText 5已经停止开发,不再进行后续开发,请把你的项目切换到iText 7。虽然该版本的iText不再开发,但是使用该版本的iText JAR已经可以满足项目的80% ~90%的需求的,主要需要引入itextpdf-x.x.x.jar 和 itext-asian-x.x.x.jar 这两个JAR包。
仓库地址如下:
0x02:iText 7
iText 7是最新的,也是最强的PDF处理工具包。可用于生成PDF、编程PDF
数字签名等。iText 7 与iText 5是两个不同的体系。
官网
iText 7体系非常强大,记得有个功能可以把HTML页面直接转成PDF文档。其他功能有待你去慢慢发现。仓库如下
备注:iText 5 与 iText 7都是收费的,使用时需要购买版权。虽然收费,但是值得拥有。因为之前小编在做电子处方笺时,对比使用了 iText 和 Apache PDFBox(接下来要介绍的一款JAR包)。iText可以在PDF文件中绘制矢量图,但是Apache PDFBox做不到(可能我没发现方法)。
0x03:Apache PDFBox
Apache PDFBox库是用于处理PDF文档的开源Java工具。该项目允许创建新的PDF文档,操纵现有文档以及从文档中提取内容的功能。Apache PDFBox还提供了几个命令行实用程序。可以说Apache出品必是精品。
官网
下面是一个仓库的镜像
0x04:OpenPDF
OpenPDF是一个Java库,使用LGPL和MPL开源许可证。可以拥有创建和编辑PDF文件。OpenPDF是iText的LGPL / MPL开源后继产品,它基于iText 4 svn标签的一个分支。
仓库
0x05:x-easypdf
x-easypdf基于pdfbox构建而来,极大降低使用门槛,以组件化的形式进行pdf的构建。简单易用,仅需一行代码,便可完成pdf的操作。是国人开源的一个基于Apache PDFBox的JAR包。
仓库
总结:操作PDF的JAR主要分成两类,分别是iText系列和Apache PDFBox系列,在之前的项目中使用PDF操作工具遇到不少的坑。特别给PDF进行电子加签的时候,遇到的坑,不过都解决了;还基于PDF电子加签写过一篇专栏《如何用 JAVA 对 PDF 文件进行电子签章》。可以百度一下。
标签: #apache2pdf #apachehtmlpdf下载文件 #apache包哪个好 #apache下的jar包